V minulém díle
seriálu jsme si na Raspberry Pi nainstalovali webový server lighttpd a zprovoznili na něm přenos souborů pomocí FTP. V dnešním díle si tento server rozšíříme o podporu PHP a databázový systém MySQL.
Od předchozí textu také vyšel nový operační systém, vycházející z předchozího Debianu - Raspbian. Nejedná se již o testovací, ale plnou verzi, je skvěle vybavený, plně zde funguje průvodce nastavením a snad je i rychlejší. Stáhnout jej můžete opět z
oficiálních
stránek
Raspberry. Co se týče našeho seriálu, v minulém díle se na postupu nic nemění, snad jen že spuštění SSH lze uskutečnit ze zmíněného průvodce.
PHP
Ještě než budeme pokračovat, pokud jste zrovna nainstalovali FTP a webový server, restartujte prosím Raspberry.
sudo shutdown -r now
Pro komunikaci mezi lighttpd serverem a PHP slouží interpret FastCGI. Získáte jej z balíčku php5-cgi. Navíc nainstalujeme i balíček php5-gd.
sudo apt-get install php5-cgi php5-gd
Dále je třeba nakonfigurovat web server pro PHP, editujeme tedy konfigurační soubor lighttpd.
sudo nano /etc/lighttpd/lighttpd.conf
Do části se servrovými moduly přidáme nový řádek pro modul fastcgi a odkomentujeme mod_rewrite, odstraněním dvojité mřížky.
server.modules = (
"mod_access",
"mod_alias",
"mod_compress",
"mod_redirect",
"mod_fastcgi",
"mod_rewrite",
)
Poté ještě na konec souboru přidáme následující kód:
fastcgi.server += ( ".php" =>
((
"bin-path" => "/usr/bin/php-cgi",
"socket" => "/tmp/php.socket",
"max-procs" => 1,
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "4",
"PHP_FCGI_MAX_REQUESTS" => "1000"
),
"bin-copy-environment" => (
"PATH", "SHELL", "USER"
),
"broken-scriptfilename" => "enable"
))
)
Soubor zavřeme Ctrl+X a potvrdíme změny k uložení.
Teď již stačí jen web server restartovat.
sudo service lighttpd restart
Pro vyzkoušení funkčnosti můžeme použít jednoduchý skript. Ve složce /var/www tedy vytvoříme soubor test.php,
sudo pico /var/www/test.php
zapíšeme do něj kód, který nám vypíše informaci o stavu PHP na serveru.
<?php phpinfo(); ?>
Soubor zavřeme Ctrl+X a potvrdíme změny v souboru. Nyní už se stačí v prohlížeči připojit na adresu http://<adresa_vaseho_serveru>/test.php .
MySQL
Pro použití MySQL je třeba si nainstalovat balíčky mysql-server, mysql-client, php5-mysql.
sudo apt-get install mysql-server mysql-client php5-mysql
V průběhu instalace budete požádáni o vytvoření administrátorského hesla pro databáze, toto heslo si zapamatujte, bude určitě potřeba.
Funkčnost databáze si můžeme ověřit přihlášením se.
mysql -u root -p<heslo_db>
Když už budeme přihlášeni, můžeme vytvořit novou databázi, pro další použití.
mysql >CREATE DATABASE databaze;
Abychom zbytečně nepřistupovali do databáze z rootovského profilu, vytvoříme nového uživatele a databázi mu svěříme.
mysql > GRANT ALL ON databaze.* TO uzivatel@localhost IDENTIFIED BY 'heslo';
Z ovládání databáze se můžeme dostat stisknutím zkratky Ctrl+C.
phpMyAdmin
Pokud vám práce s databázi skrz konzoli nevyhovuje, můžete využít webového grafického prostředí phpMyAdmin. Díky němu můžete pohodlně spravovat uživatele, databáze, přístupová práva a provádět další manipulace s vaší databází. Aplikaci získáte z repozitářů instalací balíčku phpmyadmin.
sudo apt-get install phpmyadmin
V průběhu instalace budete vyzvání k výběru web serveru, pomocí mezerníku tedy označte lighttpd. V dalším kroku můžete odsouhlasit automatickou konfiguraci a u konce instalace vyplňte hesla pro aplikaci a přístup k MySQL.
Nyní už jen stačí restartovat webový a MySQL server.
sudo /etc/init.d/lighttpd force-reload
sudo /etc/init.d/mysql force-reload
Po instalaci se můžete do phpMyAdmina přihlásit na adrese http://<adresa_raspberry>/phpmyadmin .
Nasazení
Instalaci máme za sebou, teď stačí už jen nahrát některý z redakčních systému na Raspberry a kochat se svým vlastním serverem. Wordpress je poměrně náročný a tak nijak zvlášť “nešvihá”. Můžete ale použít například český redakční systém
MyPage
, který nepotřebuje databázi a je poměrně rychlý, na druhou stranu ale nedisponuje tolika funkcemi jako Wordpress.