Lokalna instalacja BatFlat-a

Niestety lokalne uruchomienie CMS BatFlat może spędzić sen z powiek, szczególnie początkującym developerom. Powodem tego jest konieczność odpowiedniej konfiguracji serwera. O ile kupując profesjonalny hosting, albo wszystko jest gotowe do pracy, albo administrator załatwi sprawę za nas, o tyle w przypadku lokalnego serwera sami sobie jesteśmy administratorami.
Na szczęście sprawa nie jest taka trudna jak mogłoby się to wydawać.
Aktualizacja pakietów systemu
Zakładam, że przystępując do uruchomienia CMS na swoim komputerze, posiadasz już zainstalowany i uruchomiony serwer oraz interpreter PHP. Jeżeli jest inaczej to zacznij od przeczytania wpisu o serwerach lokalnych.
W pierwszej kolejności aktualizujemy repozytoria:
piotr@pplaczek:/$ sudo -s
root@pplaczek:/$ apt-get update
root@pplaczek:/$ apt-get pgrade
Ogólne wymagania
W dokumentacji znajdziemy wymagania jakie musi spełnić nasza konfiguracja. Konieczne jest posiadanie:
- Apache 2.2+ z trybem mod_rewrite
- PHP w wersji 5.6 lub wyższej
- Dostęp do SQLite
Potrzebne są również następujące rozszerzenia PHP:
- dom
- gd
- mbstring
- pdo
- zip
- curl
Brakuje tutaj rozszerzenia sqlite3. Ptrzebę jego instalacji należy wywnioskować z wymagania dostępu do SQLite.
Instalacja
Opis instalacji podzielimy sobie na dwa etapy. Pierwszym będzie przygotowanie, konfiguracja niezbędnych komponentów, a drugim skopiowanie systemu BatFlat.
Konfiguracja środowiska
Kolejność podejmowanych kroków instalacji jest dowolna. Ze względów praktycznych zaczniemy od instalacji SQLite. Następnie zajmiemy się PHP, a na końcu serwerem http.
SQLite
Pakiet dla SQLite pobierzemy z domyślnych repozytorów systemu:
root@pplaczek:/$ apt-get install sqlite
PHP
Następnie zainstalujemy i uruchamiamy odpowiednie rozszerzenia PHP:
root@pplaczek:/$ apt-get install php-dom php-gd php-mbstring php-pdo php-zip php-curl php-sqlite3
Aby uruchomić zainstalowane rozszerzenia musimy edytować plik /etc/php/x.x/apache2/php.ini , gdzie x.x jest numerem wersji interpretera. W tym pliku odnajdujemy sekcję Dynamic Extensions i upewniamy się, że wybrane są odpowiednie rozszerzenia.
;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;
extension=dom
extension=gd
extension=mbstring
extension=pdo
extension=pdo_sqlite
extension=zip
extension=curl
extension=sqlite3
Musimy również zadbać o odblokowanie wybranych modułów:
root@pplaczek:/$ phpenmod dom gd mbstring pdo pdo_sqlite zip curl sqlite3
HTTP
Przed instalacją systemu CMS pozostała już tylko konfiguracja i restart serwera http. Ten etap składa się już tylko z dwóch kroków.
Należy odblokować moduł rewrite,
root@pplaczek:/$ a2enmod rewrite
a następnie umożliwić wykonywanie zasad z pliku .htaccess. W tym celu musimy edytować plik /etc/apache2/apache.conf . Należy zmienić dyrektywę AllowOverride z wartości None na wartość All, dla katalogu, który będzie zawierał pliki systemu BatFlat.
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Teraz pozostało już tylko zrestartowaś serwer z nowymi ustawieniami i zabrać się za instalację CMS.
root@pplaczek:/$ systemctl restart apache2
Instalacja CMS BatFlat
Ostatnim zadaniem na dziś jest pobranie i rozpakowanie plików BatFlat'a oraz nadanie im odpowienich praw (chmod).
root@pplaczek:/$ wget https://github.com/sruupl/batflat/archive/master.zip
root@pplaczek:/$ unzip batflat-master.zip
root@pplaczek:/$ mv batflat-master/* /var/www/html/
root@pplaczek:/$ find /var/www/html -type d -exec chmod 755 {} +
root@pplaczek:/$ find /var/www/html -type f -exec chmod 644 {} +
Od tej chwili możesz korzystać ze swojej kopii CMS BatFlat pod ardesem localhost.
Podsumowanie
Jak widać lokalne rozpoczęcie pracy z tym system nie jest trudne. Wystarczy kilka informacji zawartych w dokumentacji BatFlat'a, i trochę wiedzy na temat interpretera PHP oraz serwera Apache2.
Jakie są Twoje doświadczenia związane z uruchomieniem świeżej kopii BatFlat'a? Podziel się swoim zdaniem w komentarzu pod wpisem.