Sugeruję stworzenie osobnego pliku vhost
dla flarum. W katalogu /etc/apache2/sites-enabled
stwórz sobie nowy plik używając vim
lub nano
o dowolnej nazwie, np: flarum.conf
Przykładowa zawartość (oczywiście zastąp forum.twojadomena.tdl
swoją domeną. W przykładzie używam też certyfikatu i klucza prywatnego od Cloudflare. Musisz je sobie wygenerować w serwisie cloudflare i dodać na serwer w katalogu /etc/ssl/
lub użyć Let's encrypt:
<IfModule mod_ssl.c>
<VirtualHost *:80>
ServerName forum.twojadomena.tdl
ServerAlias www.forum.twojadomena.tdl
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</VirtualHost>
<VirtualHost *:443>
ServerName forum.twojadomena.tdl
DocumentRoot /var/www/flarum/public/
ServerAlias www.forum.twojadomena.tdl
ErrorLog /var/www/apache2/forum/error.log
CustomLog /var/www/apache2/forum/requests.log combined
SSLEngine on
SSLCertificateFile /etc/ssl/cloudflare.cer
SSLCertificateKeyFile /etc/ssl/cloudflare.key
<Directory />
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
</IfModule>
Następnie wciąż w katalogu /etc/apache2/site-available
aktywuj nowy vhost oraz niezbędne moduły:
sudo a2enmod ssl
sudo a2enmod rewrite
sudo a2ensite flarum.conf
sudo systemctl restart apache2
Będziesz potrzebował również certyfikatu ssl.
Możesz go wygenerować używając projektu let's encrypt lub np: cloudflare
Przykładowe kroki do instalacji i aktywacji ssl z użyciem let's encrypt:
sudo apt update
sudo apt install certbot python3-certbot-apache
sudo certbot --apache -d forum.twojadomena.tdl -d www.forum.twojadomena.tdl
Aby certyfikat sam się odnawiał warto dodać wpis do crontab za pomocą komendy sudo crontab -e
o zawartości:
0 3 * * * /usr/bin/certbot renew --quiet && /usr/bin/systemctl reload apache2
PS. Tanio domeny kupisz na https://www.ovhcloud.com/pl/domains/
PPS. Darmowe domeny (dobre do nauki) dostaniesz na https://www.freenom.com/en/index.html