λύω-trainer
A simple app to practice the Ancient Greek verbal system.
Installation
git clone https://git.camilstaps.nl/clone/luo-parsetrainer.git
cd luo-parsetrainer
composer install
npm ci
npm run dev
Configuration
First, create a MySQL database and a user that can connect to it. In this
example, we'll use luo_db
, luo_user
and luo_pass
.
Create a .env
file in the root directory with at least the following options:
APP_ENV=production
APP_DEBUG=false
APP_KEY= # a 32-char random string
APP_URL=https://example.org/luo/ # e.g., use your own URL here
APP_LOCALE=en
APP_FALLBACK_LOCALE=en
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=luo_db
DB_USERNAME=luo_user
DB_PASSWORD=luo_pass
CACHE_DRIVER=memchached
SESSION_DRIVER=memcached
QUEUE_DRIVER=database
Return to the root directory and run:
php artisan migrate --seed
Nginx
You need to enable PHP and redirect everything to server.php
. Configuration
on the root of a site is straightforward:
server {
listen [::]:80;
server_name myhostname;
root /.../luo;
index index.php index.html index.htm;
charset utf-8;
location / {
autoindex off;
try_files $uri $uri/ /server.php$is_args$query_string;
}
location ~ \.php$ {
# whatever you do to make PHP work
}
location ~ /\. {
deny all;
}
}
In a subdirectory, we need to enforce trailing slashes and do some special
things. This configures nginx to handle the trainer from /luo/
:
server {
listen [::]:80;
server_name myhostname;
root /...;
index index.php index.html index.htm;
charset utf-8;
rewrite ^([^.]*[^/])$ $1/ permanent;
location ~ ^/luo/(.*)\.php$ {
try_files $uri $uri/ /luo/server.php$is_args$query_string;
# whatever you do to make PHP work
}
rewrite /luo/?$ /luo/public/index.php;
location /luo {
try_files $uri $uri/ /luo/server.php$is_args$query_string;
}
location / {
autoindex off;
}
location ~ /\. {
deny all;
}
}
License
Copyright 2015–present Camil Staps. Licensed under GPL v3.0, see the LICENSE file.
This project uses the SBL Greek font which is licensed under the SBL Font User Agreement.