app | ||
bootstrap | ||
config | ||
database | ||
public | ||
resources | ||
routes | ||
storage | ||
tests | ||
.editorconfig | ||
.env.example | ||
.gitattributes | ||
.gitignore | ||
.htaccess | ||
artisan | ||
composer.json | ||
composer.lock | ||
docker-compose.yml | ||
package-lock.json | ||
package.json | ||
phpunit.xml | ||
README.md | ||
structure_dump.sql | ||
vite.config.js |
Admin panel k bakalárskej práci
Webové rozhranie pripravené v PHP frameworku Laravel. K fungovaniu aplikácie je potrebný SQL server, v našom prípade je to riešené pomocou mariadb. Odporúčam použiť server Nginx, pretože poskytuje vyššiu rýchlosť ako napríklad Apache web server. Ďalej je potrebné mať nainštalované php-fpm Postup konfigurácie je písaný pre operačný systém GNU/Linux.
Konfiguráciu NGINX
Pre inštaláciu Nginx použijeme následujúce príkazy.
Debian, Ubuntu:
# apt install nginx php-fpm mariadb composer
Arch Linux:
# pacman -Sy nginx php-fpm mariadb composer
Fedora:
# dnf install nginx php-fpm mariadb composer
V priečinku /etc/nginx/sites-available vytvoríme súbor pre našu webstránku napr. bakalarka_web. Do súboru vložíme následujúcu konfiguráciu:
server {
server_name {nazov_servera};
root {korenovy_priecinok_webu};
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Na miesta nazov_servera doplníme názov servera alebo teda doménu nášho servera, ak nejakú máme. Namiesto korenovy_priecinok_webu doplníme celú cestu k priečinku v ktorom sa nachádza náš web. Pomocou príkazu nastavíme majiteľa a skupinu na www-data, to je základný názov pre Nginx používateľa.
Konfigurácia databázy
Databázový server je nainštalovaný po spustení úvodných príkazov. Ďalšia konfigurácia nie je potrebná
Konfigurácia webového rozhrania
Po naklonovaní repozitára do cieľového priečinku spustíme inštaláciu modulov pomocou príkazu:
$ composer install
Po úspešnom nainštalovaní potrebných súborov môžeme spustiť migráciu databázy pomocou pripravených migrations. To spustíme pomocou príkazu:
$ php artisan migrate
Ak by tento príkaz nezbehol správne môžeme tabuľky vytvoriť manuálne pomocou priloženého dumpu zo štruktúry databázy s názvom structure_dump.sql v tomto repozitári. Môžeme použiť príkaz mysql dostupný v baličku mariadb
$ mysql -u{nazov_pouzivatela} -p
Následne vytvoríme databázu z názvom bakalarka pomocou príkazu:
CREATE DATABASE bakalarka;
A naimportujeme štruktúru pomocou príkazu:
source structure_dump.sql;
Konfigurácia HTTPS
Ak chceme server používať so zabezpečeným HTTP protokolom, potrebujeme k tomu utilitu certbot, ktorá pomocou utility Let's encrypt vytvorí a nastaví certifikáty pre Nginx. Debian, Ubuntu:
# apt install python3-certbot-nginx
Arch Linux:
# pacman -Sy python3-certbot-nginx
Fedora:
# dnf install python3-certbot-nginx
Pomocou príkazu:
# certbot --nginx
Certbot ma interaktívnu konfiguráciu, takže po spustení pokračovať podľa inštrukcií na obrazovke.