kHTTPd
kHTTPd è un webserver che gestisce unicamente file statici (pagine html ad esclusione di cgi/php) e passa tutte le richieste
per documenti con informazioni non statiche ad un web server convenzionale che gira nello spazio utente come Apache. Il demone è
parte del kernel di Linux versione 2.4 e può essere caricato anche come modulo quando è richiesto. Utilizzare la combinata
Apache-kHTTPd può voler dire un sicuro aumento delle prestazioni. Una volta caricato il modulo:
# modprobe khttpd
si possono passare parametri al proc filesystem per la configurazione.
# ls -l /proc/sys/net/khttpd/
totale 52
-rw-r-r- 1 root root 0 mar 6 16:41 clientport
-rw-r-r- 1 root root 0 mar 6 16:41 documentroot
-rw-r-r- 1 root root 0 mar 6 16:41 dynamic
-rw-r-r- 1 root root 0 mar 6 16:41 logging
-rw-r-r- 1 root root 0 mar 6 16:41 maxconnect
-rw-r-r- 1 root root 0 mar 6 16:41 perm_forbid
-rw-r-r- 1 root root 0 mar 6 16:41 perm_required
-rw-r-r- 1 root root 0 mar 6 16:41 serverport
-rw-r-r- 1 root root 0 mar 6 16:41 sloppymime
-rw-r-r- 1 root root 0 mar 6 16:41 start
-rw-r-r- 1 root root 0 mar 6 16:41 stop
-rw-r-r- 1 root root 0 mar 6 16:41 threads
-rw-r-r- 1 root root 0 mar 6 16:41 unload
Ogni voce è potenzialmente una configurazione del demone. Per una gestione semplificata e funzionale creiamo un file chiamato
"khttpd " nella directory "/etc/init.d/ " e scriviamo quanto riportato di seguito:
#!/bin/sh
case "$1" in
start)
echo -n "Avvio di kHTTPd"
modprobe khttpd
echo 80 > /proc/sys/net/khttpd/serverport
echo "/var/www"> /proc/sys/net/documentroot
echo php shtml > /proc/sys/net/khttpd/dynamic
echo 1 > /proc/sys/net/khttpd/start
echo "."
;;
stop)
echo -n "Arresto di kHTTPd"
echo 1 > /proc/sys/net/khttpd/unload
rmmod khttpd
echo "."
;;
reload)
echo -n "Riavvio di kHTTPd"
echo 1 > /proc/sys/net/khttpd/stop
echo 1 > /proc/sys/net/khttpd/start
echo "."
;;
esac
exit 0
Date i giusti diritti al file
# chmod 755 /etc/init.d/khttpd
e create i link simbolici per i vari runlevel. Per Debian GNU/Linux può essere utile il seguente comando:
# update-rc.d khttpd default
A questo punto non rimane altro da fare che riavviare Apache e lanciare lo script appena creato:
# /etc/init.d/apache restart
# /etc/init.d/khttpd start
|