Howto/Webserver auf Gluon Router
Die meisten Router mit USB Anschluss und 8Mbyte Flash eigenen sich dazu direkt einen kleinen Webserver auf dem Gluon-Router zu betreiben. In dieser Anleitung wird erklaert, wie man ein stock Gluon umbaut, dass der eingebaute Webserver (uhttpd) die Daten eines eingesteckten USB-Sticksper http freigibt. Dies eigenet sich dazu seine eigenen kleine Seite auf dem Gluon Router zu hosten. Es laesst sich jedoch auch php und sqlite integrieren sodass man die ein oder andere Webanwendung auf dem Knoten laufen lassen kann.
Konfigurieren des Webservers
Standartmaessig laueft die gluon info-page auf Port 80 wo spaeter unsere Webseite liegen soll, also muessen wir diese auf einen anderen Port z.B. 81 legen.
Dazu editieren wir in der /etc/config/uhttpd folgende Zeilen des Main-Blocks:
list listen_http '0.0.0.0:80' list listen_http '[::]:80'
zu
list listen_http '0.0.0.0:81' list listen_http '[::]:81'
Als naechstes konfigurieren wir ein neue Webserverinstanz auf Port 80 mit einem wwwdocs Verzeichniss auf /mnt/share :
config 'uhttpd' 'share' option 'listen_http' '0.0.0.0:80' list listen_http '[::]:80' option 'home' '/mnt/share' list interpreter ".php=/usr/bin/php-cgi"
Nun muss der Ordner /mnt/share angelegt werden
mkdir -p /mnt/share
Jetzt koennen wir den uhttpd server neu starten:
/etc/init.d/uhttpd restart
Jetzt sollte ein leeres verzeichniss unter http://node-name.nodes.ffmz.org erreichbar sein die Info-Page von Gluon ist ab jetzt unter http://node-name.nodes.ffmz.org:81 erreichbar.
Konfigurieren des Automounts
Damit der USB-Stick gemounted werden kann muessen noch einige Pakete insalliert werden:
opkg update opkg install kmod-usb-storage block-mount block-hotplug kmod-fs-ext4 kmod-fs-vfat kmod-nls-cp437 kmod-nls-iso8859-1
sollen neben FAT Formatierten Sticks auch andere Dateisysteme erkannt werden koennen die entsprechenden Pakette zusaetzlich installiert werden:
kmod-fs-ext3 kmod-fs-ext4 kmod-fs-<file_system> ...
Jetzt aktivieren wir noch das automounten des USB-Sticks. Dazu fuegen wir folgenden Eintrag in die /etc/config/fstab ein:
config mount 'share' option enabled '1' option device '/dev/sda1' option target '/mnt/share'
Zudem setzen wir anon_mount auf 1:
option anon_mount '1'
Nach einem neustart sollte ein eingestecker FAT-Formatierter USB-Stick nach /mnt/share gemounted werden und so unter http://node-name.nodes.ffmz.org aus dem Freifunk Netz erreichbar sein.
Installieren und aktivieren von PHP
opkg install php php5-cgi
danach fuegen wir in unseren share-Block in der /etc/conf/uhttpd folgende Zeilen mit ein:
list interpreter ".php=/usr/bin/php-cgi" list index_file "index.php"
In der /etc/php.ini muss man unter "Paths and Directives" dasDocumentRoot anpassen:
doc_root = "/mnt/share"
Nach einem neustart von uhttpd sollte die php-Unterstuetzung laufen:
/etc/init.d/uhttpd restart
Man kann dies testen in dem man ein folgende Datei auf dem USB-Stick ablegt:
/mnt/share/index.php <?php // Zeigt alle Informationen phpinfo(); ?>