Howto/Webserver auf Gluon Router: Unterschied zwischen den Versionen

Aus Freifunk MWU Wiki
Zur Navigation springen Zur Suche springen
Zeile 1: Zeile 1:
Die meisten Router mit USB Anschluss und 8Mbyte Flash eigenen sich dazu, direkt einen kleinen Webserver auf ihnen zy betreiben. In dieser Anleitung wird erklaert, wie man ein stock Gluon umbaut, sodass der eingebaute Webserver (uhttpd) die Daten eines eingesteckten USB-Sticks, per http freigibt. Dadurch lassen sich die Daten auf dem USB-Stick ueber den Router freigeben. Man kann die Installation jedoch auch erweitern um ein komplettes LAMP System zu erhalten, um einfache WEB-Anwendungen zu betreiben.
+
Die meisten Router mit USB Anschluss und 8Mbyte Flash eigenen sich dazu, direkt einen kleinen Webserver auf ihnen zy betreiben. In dieser Anleitung wird erklaert, wie man ein stock Gluon umbaut, sodass der eingebaute Webserver (uhttpd) die Daten eines eingesteckten USB-Sticks per HTTP freigibt. Man kann die Installation jedoch auch erweitern um ein komplettes LAMP System zu erhalten, um z.B. einfache WEB-Anwendungen zu betreiben.
  
 
== Konfigurieren des Webservers ==
 
== Konfigurieren des Webservers ==

Version vom 14. März 2015, 17:59 Uhr

Die meisten Router mit USB Anschluss und 8Mbyte Flash eigenen sich dazu, direkt einen kleinen Webserver auf ihnen zy betreiben. In dieser Anleitung wird erklaert, wie man ein stock Gluon umbaut, sodass der eingebaute Webserver (uhttpd) die Daten eines eingesteckten USB-Sticks per HTTP freigibt. Man kann die Installation jedoch auch erweitern um ein komplettes LAMP System zu erhalten, um z.B. einfache WEB-Anwendungen zu betreiben.

Konfigurieren des Webservers

Standartmaessig laueft die Gluon-Infopage auf Port 80. Hier soll spaeter jedoch unsere Webseite liegen, 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:

 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

Unter http://node-name.nodes.ffmz.org sollte der Knoten dann im Freifunk erreichbar sein. Die Gluon-Infopage ist 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 eingehaengt werden, so muessen 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 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 in der /etc/conf/uhttpd folgende Zeilen in den "Share"-Block ein:

       list interpreter ".php=/usr/bin/php-cgi"
       list index_file "index.php"

In der /etc/php.ini muss man unter "Paths and Directives" das DocumentRoot 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();
 ?>

Ruft man jetzt die Adresse des Routers auf, so erscheint die PHP-Info Ausgabe.

Aktivieren von SSL

Vorgehen nach dem Autoupdate