PHP5 su server Lighttpd
Premessa
Lavorando sul mio NSLU2 dopo l'hackeraggio effettuato e dopo averci installato debian al posto dell'originario firmware, ho sentito la necessità di installare software leggero data la scarsa disponibilità di memoria ram e frequenza di clock...Il primo servizio che ho voluto installare è stato il server web con un bel CMS.
Le mie applicazioni web solitamente si avvalgono della seguente tecnologia:
- Server web Apache,
- Linguaggio di scripting PHP5,
- Server sql MySQL,
- (CMS) Content Managment System TikiWiki.
Alla fine quindi mi sono orientato sulla seguente tecnologia:
L'ultimo problemino che ho incontrato è stato far funzionare PHP con Lighttpd. Bisogna, infatti abilitare il supporto CGI. Il risultato lo potete ammirare su http://vittoriozuccala.homelinux.net : digitando questo URL arriverete direttamente in casa mia e in particolare sul mio NSLU2 ;-)
In questo articolo spiegerò come ottenere questo risultato.
Lighttpd, CGI e PHP5
Di seguito presumo che il lettore abbia utilizzato Debian o Ubuntu. Su diverse distribuzioni Linux i comandi potrebbero cambiare. Si presume anche che l'indirizzo del proprio server sia 192.168.1.100. I riferimenti, ovviamente, cambiano sul vostro sistema.Prima di tutto si installi Lighttpd:
apt-get install lighttpd
A questo punto dovreste poter accedere al server da un altro computer digitando sul vostro browserhttp://192.168.1.100
Ciò che dovreste vedere è una schermata simile a questa:Successivamente si installi php5:
apt-get install php5-cgi
Ora si modifichi il file di configurazione /etc/php5/cgi/php.ini dove bisogna aggiungere, anche al fondo del file:[...]
cgi.fix_pathinfo = 1
cgi.fix_pathinfo = 1
[...]
server.modules = (
server.modules = (
"mod_access",
"mod_alias",
"mod_accesslog",
"mod_fastcgi",
# "mod_rewrite",
# "mod_redirect",
# "mod_status",
# "mod_evhost",
# "mod_compress",
# "mod_usertrack",
# "mod_rrdtool",
# "mod_webdav",
"mod_alias",
"mod_accesslog",
"mod_fastcgi",
# "mod_rewrite",
# "mod_redirect",
# "mod_status",
# "mod_evhost",
# "mod_compress",
# "mod_usertrack",
# "mod_rrdtool",
# "mod_webdav",
ed alla fine del file si aggiunga il seguente blocco:
[...]
fastcgi.server = (
fastcgi.server = (
".php" => ((
"bin-path" => "/usr/bin/php5-cgi",
"socket" => "/tmp/php.socket"
)))
"socket" => "/tmp/php.socket"
)))
A questo punto tutto è pronto e si può riavviare il server web:
/etc/init.d/lighttpd restart
Ora il nostro sistema è pronto per ospitare dokuwiki!!
Se volete vedere questo è l'indirizzo del mio NSLU2 casalingo: http://vittoriozuccala.homelinux.net.
Buon lavoro.
Hai provato ad utilizzare al posto di lighttpd, cherokee? Potresti trarne soddisfazioni
RispondiEliminaNon ho provato ma lo metto nella lista dei server web da provare come alternativa.
RispondiEliminaGestisce anche l'interprete PHP?
Certamente sì, e sempre via fastCGI...Ed in più ha una comoda interfaccia web per la configurazione.
RispondiEliminaCherokee supporta PHP via fastcgi, lo stesso approccio di lighttpd (con anche le medesime modifiche al file di configurazione di php)
RispondiElimina