A napokban tesztszerűen egy fórum bevezetésén dolgoztam. Sok lehetőség van jelenleg egy fórum elkezdésére, de mégis a trendek miatt úgy döntöttem, hogy a FLARUM Forumot választom, amely egy teljesen újszerű composer segítségével épített rendszer. A feltelepítése/alkalmazása már nem volt annyira egyszerű. A jelenlegi béta verzió révén nem teljes egyszerű fájlokat kapunk, mint egy phpBB esetében, hanem több lépésen keresztül kell megadni az engedélyt, illetve finomhangolni a beállításokat ahhoz, hogy megfelelően fusson az alkalmazás.
A következő leírást egyúttal magamnak is készítem, hogy a későbbiek során újból alkalmazni tudjam a lépéseket, ha bármi kérdés lenne a komment szekcióban pedig nyugodtan felteheted. (Legalább a többiek is tanulnak belőle.)
0. Szerver
Ha csak teszt jelleggel, vagy csak kis forgalommal akarjuk használni a Fórumot, abban az esetben egy-két magos Intel processzorral szerelt asztali számítógép is megállja a helyét. Az alap operációs rendszer amire szükségünk lesz az egy UBUNTU SERVER 16.04LTS – 18.04LTS (Természetesen hasonlóan Debian is megfelel.) annak érdekében, hogy a rendszer biztos lábakon álljon.
1. LEMP web szerver telepítése
Én az elmúlt időszakban az NGINX web szervert használom, így az elkövetkező beállítások is ehhez fognak szólni.
Míg a TechBlogger.hu-n nincs egy teljes áttekinthető leírás a LEMP szerver kialakításához, addig a DigitalOcean rövid, egyszerű és könnyen érthető leírását linkelem be. Csak kövessük az utasításokat és már is rendelkezünk a szerverrel.
Figyelem! Fontos, hogy a PHP telepítését, hagyjuk ki! Mivel a 7.1-es verziót szükséges használnunk a FLARUM fórum miatt!
2. Nginx Virtual Hosts – Blokkok
Ha több weboldalt szeretnénk üzemeltetni, akkor jön szóba a Virtual Hosts lehetőség, amellyel egy IP-címről (ha dinamikus ip címünk van abban az esetben is megoldható!) kiszolgálhatunk több Domain címet.
Ehhez is a DigitalOcean leírását illeszteném be, amely tökéletesen bemutatja pontról pontra a lépéseket.
Ha még nem foglalkoztunk hasonlóval, akkor nyugodtan kövessük és végezzük el a feladatokat a leírás alapján.
A leírás alapján készítsünk egy egy újabb blokkot, viszont a konfigurációs fájl beállításai a következőek legyenek:
[bash]server {
include /var/www/[DOMAIN]/html/.nginx.conf;
listen 80;
listen [::]:80;
proxy_http_version 1.1;
proxy_set_header Connection "";
root /var/www/[DOMAIN]/html/public;
index index.php index.html index.htm index.nginx-debian.html;
server_name [DOMAIN] www.[DOMAIN];
access_log /var/log/nginx/forum.org.access.log;
error_log /var/log/nginx/forum.error.log;
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}[/bash]
A konfigurációs fájlban található “[DOMAIN]” helyére természetesen illeszük be a saját domain címünket, mint pl. “forum.techblogger.hu”.
Ezzel már is előre léptünk, mivel ebben a kódban meghatároztuk a FLARUM-hoz szükséges tulajdonságokat is.
Ha ezzel megvagyunk hozzunk létre az /etc/nginx/conf.d/ mappában egy timeout.conf nevű fájlt és a következők legyenek benne:
[bash]
proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 900;
send_timeout 600;
fastcgi_read_timeout 900;
[/bash]
Ezzel megakadályozzuk, hogy a telepítés során 504-es hibajelzést kapjunk az fórum használata során.
3. PHP7.1 telepítése
A jelenlegi FLARUM a PHP 7.1-es verziót használja, így a későbbi verziók és a korábbiak sem felelnek meg teljesen számára.
A következőben adjuk hozzá a php repository elérhetőségét a szerverhez:
sudo apt-get install software-properties-common sudo add-apt-repository ppa:ondrej/php
Ezek után bizonyosodjunk meg, hogy beintegrálodott-e a repository.
sudo apt update
Ha minden rendben akkor mehet a PHP 7.1 telepítése
sudo apt install php7.1-fpm php7.1-common php7.1-mbstring php7.1-xmlrpc php7.1-soap php7.1-mysql php7.1-gd php7.1-xml php7.1-cli php7.1-zip
A telepítés után fontos elvégeznünk néhány beállítást, hogy megfelelő környezetet biztosítsunk a PHP számára.
file_uploads = On allow_url_fopen = On memory_limit = 256M upload_max_filesize = 100M cgi.fix_pathinfo = 0 max_execution_time = 360 date.timezone = Hungary
Ezek után mentsük és lépjünk ki a szerkesztőből. Hogy betöltődjön az elvégzett beállítás, indítsuk újra az NGINX-et.
sudo service nginx restart
Az elvégzett beállítások után már készen áll a szerverünk, hogy a Flarum fórum gördülékenyen működjön.
4. Adatbázis létrehozása
Most, hogy a fórum alapját kialakítottuk jöhet az adatbázis létrehozása, amelyben tárolja majd a rendszer az információkat.
Először is lépjünk be a MySQL adatbázis szerverbe.
sudo mysql -u root -p
Aztán hozzuk létre a fórum adatbázisát flarum néven. Ez természetesen opcionális.
CREATE DATABASE flarum;
Hozzunk létre egy dedikált felhasználót, amely az adatbázist fogja kezelni flarumuser néven. Ez is opcionális.
CREATE USER 'flarumuser'@'localhost' IDENTIFIED BY 'new_password_here';
Ha kész vagyunk akkor rendeljük hozzá az adatbázishoz a felhasználót és adjunk teljes jogosultságot.
GRANT ALL ON flarum.* TO 'flarumuser'@'localhost' IDENTIFIED BY 'user_password_here' WITH GRANT OPTION;
Ha készen vagyunk mentsük és lépjünk ki az adatbázisból.
FLUSH PRIVILEGES; EXIT;
3. Flarum letöltése és telepítése
A Flarum fórum a Composer-t használja a rendszerhez, illetve a különböző kiegészítőkhöz. Tehát mielőtt telepítenénk a Fórumot szükséges a Composer-t is feltelepítenünk a szerverre.
sudo apt install curl git curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
Ha megvagyunk a telepítéssel, akkor következhet a Flarum letöltése és telepítése. Hozzunk létre egy új mappát, a meghatározott Domain ([DOMAIN]) névvel.
sudo mkdir /var/www/[DOMAIN]/html/ cd /var/www/[DOMAIN]/html/ sudo composer create-project flarum/flarum . --stability=beta
Fontos, hogy megfelelő jogosultsággal rendelkezzen az applikáció, hogy a későbbiek során ne adódjanak futtatási és írási gondok.
sudo chown -R www-data:www-data /var/www/[DOMAIN]/html/ sudo chmod -R 755 /var/www/[DOMAIN]/html/
Ha készen vagyunk, akkor engedélyezzük a domaint elérését.
sudo ln -s /etc/nginx/sites-available/[DOMAIN] /etc/nginx/sites-enabled/
Az engedélyezés után szükséges az NGINX újraindítása, hogy validáljuk az elvégzett módosításokat.
sudo service nginx restart
Ha minden igaz, ezek után már is elérhető a Flarum telepítője a meghatározott domain címen.

A telepítés és adatbázis létrehozása során kreált adatokat adjuk meg majd adjuk meg az admin adatokat is ( a saját adatainkat) és már is elérhető a kész fórumunk.
Ha bármi kérdésed lenne, nyugodtan tedd fel a komment szekcióban. A továbbiakban az egyes kiegészítőkről és használatról lesz szó.
Források:
https://websiteforstudents.com/setup-flarum-forum-on-ubuntu-16-04-17-10-18-04-with-nginx-mariadb-and-php-7-1-support/
https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-in-ubuntu-16-04
https://www.digitalocean.com/community/tutorials/how-to-set-up-nginx-server-blocks-virtual-hosts-on-ubuntu-16-04