Aby zainstalować Grav core + Admin plugin w katalogu domowym w public_html musimy spełnić kilka warunków.
W pierwszej kolejności instalujemy serwer Apache i libapache2-mod-php
1aptitude install apache2 libapache2-mod-php
włączamy moduły userdir i rewrite
1a2enmod userdir rewrite
i restartujemy serwer:
1systemctl restart apache2
Ponieważ Apache w Debianie domyślnie ma wyłączoną obsługę skryptów PHP w katalogach użytkowników, musimy zredagować plik /etc/apache2/mods-enabled/php7.3.conf
znajdujemy sekcje:
1<IfModule mod_userdir.c>
2 <Directory /home/*/public_html>
3 php_admin_flag engine Off
4 </Directory>
5</IfModule>
i komentujemy ją:
1#<IfModule mod_userdir.c>
2# <Directory /home/*/public_html>
3# php_admin_flag engine Off
4# </Directory>
5#</IfModule>
Jeżeli zamiast tego włączysz php_admin_flag engine On stracisz możliwość wyłączenia jej w plikach .htaccess
Aby Apache mógł odczytać plik .htaccess i zastosować reguły przepisania edytujemy plik /etc/apache2/apache2.conf i dodajemy:
1<Directory /home/*/public_html/>
2 Options Indexes FollowSymLinks
3 AllowOverride All
4 Require all granted
5</Directory>
Jeżeli instalujemy Grav w /var/www/ wystarczy zmienić AllowOverride z None na All
1<Directory /var/www/>
2 Options Indexes FollowSymLinks
3 AllowOverride All
4 Require all granted
5</Directory>
Grav wymaga następujących modułów PHP:
1aptitude install php-mbstring php-curl php-zip php-gd php-xml
następnie restartujemy serwer:
1systemctl restart apache2
Ściągamy paczkę ze strony https://getgrav.org/downloads
i rozpakowujemy w folderze public_html w katalogu domowym, nadajemy odpowiednie uprawnienia do zapisu.
Wchodzimy na adres localhost/~user/grav-admin i voilà.
Po utworzeniu konta administratora: