Lighttpd Webserver + PHP5 + MySQL Server unter Raspbian

L I V E Stammtisch ab 20:30 Uhr im Chat
    • Offizieller Beitrag

    Edit: Jetzt mit phpMyadmin ; getestet mit 2012-12-16-wheezy-raspbian.img
    Edit:Image zum Download bereit gestellt (siehe unten)

    Vorab solltest du die root Partition an die Größe deiner SD-Karte angleichen.

    Code
    sudo raspi-config


    expand_rootfs -> OK -> Finish -> Reboot

    1. Paketlisten aktualisieren

    Code
    sudo apt-get update

    2. Lighttpd, MySQL, PHP5 und phpMyAdmin installieren

    Code
    sudo apt-get install lighttpd php5-cgi mysql-server mysql-client phpmyadmin


    Konfiguration Mysql:

    • MySQL Password für den user "root" eingeben
    • MySQL Password für den user "root" wiederholen
    • Lighttpd zur Konfiguration auswählen


    Konfiguration phpMyAdmin

    • "Configure database for phpmyadmin with dbconfig-common?" -> YES
    • phpMyAdmin Passwort vergeben (wahlweise MySQL Password von vorhin)
    • MySQL Password von vorhin eingeben
    • MySQL Password von vorhin wiederholen


    Danach solltest du folgendes sehen, wenn du die IP deines RPI aufrufst.

    Lighttpd's root Verzeichnis ist /var/www
    Die Konfigurationsdatei findest du unter /etc/lighttpd/lighttpd.conf

    3. PHP5 konfigurieren

    Code
    sudo nano /etc/php5/cgi/php.ini


    An das Ende der Datei folgendes anfügen

    Code
    cgi.fix_pathinfo = 1


    Kleiner Tipp: Mit STRG + V blätterst du schnell nach unten

    Nun noch "mod_fastcgi" Modul eintragen

    Code
    sudo nano /etc/lighttpd/lighttpd.conf


    So sollte es aussehen

    Code
    server.modules = (
    "mod_fastcgi",
    "mod_access",
    "mod_alias",
    "mod_compress",
    "mod_redirect",
    # "mod_rewrite",
    )

    Zuletzt noch am Ende der Datei "lighttpd.conf" das fastcgi Modul einfügen und die phpmyadmin Konfiguration

    Code
    fastcgi.server = ( ".php" => ((
    "bin-path" => "/usr/bin/php5-cgi",
    "socket" => "/tmp/php.socket"
    )))
    include "phpmyadmin.conf"


    Wir benutzten fastcgi zum parsen, da es im Gegensatz zum normalen cgi mehr Performance liefert

    Danach muss mit diesem Befehl noch phpMyAdmin aktiviert werden

    Code
    sudo cp /etc/phpmyadmin/lighttpd.conf /etc/lighttpd/phpmyadmin.conf


    4. lighttpd neustarten

    Code
    sudo /etc/init.d/lighttpd restart

    5. lighttpd testen
    Nun testen wir die Installation indem wir uns die phpinfo anzeigen lassen. Dazu erstellen wir einen Datei auf dem Server wie folgt.

    Wir die Datei info.php

    Code
    sudo nano /var/www/info.php

    Mit dem Nano Editor schreiben wir nun folgenden Text in die Datei

    Wir haben uns für diese wichtigsten Pakete entschieden und installieren diese nun.

    Code
    sudo apt-get install php5-mysql php5-curl php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-json

    7. lighttpd neustarten

    Code
    sudo /etc/init.d/lighttpd restart

    8. Installation testen
    Nun öffne die Datei über deinen Browser: http://192.168.0.108/info.php

    MySQL ist nun von PHP5 unterstützt


    Nun läuft dein Performance Webserver auf Basis von lighttpd und FastCGI.


    Webserver Image Download

    Ich habe einen Server aufgesetzt und als Image bereit gestellt:
    2012-12-16-wheezy-raspbian

    • 8GB Image
    • PHP5
    • MySQL Server
    • phpMyAdmin
    • lighttpd


    Benutzername: pi
    Passwort: raspberry
    MySQL / phpMyAdmin Benutzername: root
    MySQL / phpMyAdmin Passwort: raspberrypiforum

    config.txt

    • gpu_mem=16
    • arm_freq=900


    Benutzung des Images auf eigene Gefahr! Ich übernehme keine Verantwortung für eventuell entstehende Schäden
    Download: forum-raspberrypi.de/attachment/328/


    Wenn du Fragen und/oder Verbesserungsvorschläge hast, zögere nicht diese unter diesem Beitrag zu stellen.
    Über ein kurzes Feedback, ob es geklappt hat würde ich mich auch sehr freuen!

    Bilder

    Well in my humble opinion, of course without offending anyone who thinks differently from my point of view, but also by looking into this matter in a different way and without fighting and by trying to make it clear and by considering each and every one's opinion, I honestly believe that I completely forgot what I was going to say.

    Einmal editiert, zuletzt von ps915 (8. Februar 2013 um 20:13)

  • Lighttpd Webserver + PHP5 + MySQL Server unter Raspbian? Schau mal ob du hier fündig wirst!

    • Offizieller Beitrag

    Das ist leider nicht möglich! Falls es dir darum geht bequem die Dateien hochzuladen bzw zu ändern kannst du entweder einen FTP-Server oder einen Samba Server installieren.

    Well in my humble opinion, of course without offending anyone who thinks differently from my point of view, but also by looking into this matter in a different way and without fighting and by trying to make it clear and by considering each and every one's opinion, I honestly believe that I completely forgot what I was going to say.

  • Also wenn er die httpdocs meint also die PHP files usw die kann er hinlegen wo er mag. das kann man in der lighthttp.conf einstellen wo der ordner dafür sein soll.

    Entschuldigt wenn ich etwas falsch verstanden habe

    server.document-root = "/var/www/"

    hier kannst du jeden pfad in deinem system angeben, allerdings musst du darauf achten das der
    Webserver auf diesen pfad lese und schreibrechte hat.

    server.document-root = "/mnt/deineexterne/webserver"

    • Offizieller Beitrag

    Schreibe doch bitte dazu unter welchem Punkt er es ändern kann!

    Well in my humble opinion, of course without offending anyone who thinks differently from my point of view, but also by looking into this matter in a different way and without fighting and by trying to make it clear and by considering each and every one's opinion, I honestly believe that I completely forgot what I was going to say.

  • das war die Lösung vielen dank

    Edit:

    Nun wollte ich PCC kopieren per ftp und ich bekomme diesmal den fehler

    Code
    (18:38:38) [T] 257 "/home/pi"
    (18:38:38) [T]     MKD /var/www/pcc
    (18:38:38) [T] 550 Create directory operation failed.
    (18:38:38) [T]     CWD /var/www/pcc
    (18:38:38) [T] 550 Failed to change directory.
    (18:38:38) [T] (Benutzer hat Verbindung getrennt)

    Einmal editiert, zuletzt von Fr34k (5. November 2012 um 18:39)

  • Hi,

    also ich hatte zuerst nur lighttpd, php und mysql installiert. Php nicht, weil es irgendwie nicht funktioniert hat, weiß nun nicht mehr welchen Fehler ich dabei bekommen habe.

    So, nun wollte ich Phpmyadmin einfach nachinstallieren, allerdings hat das auch nicht funktioniert.

    Ich habe nun einfach alles deinstalliert und wollte das nun nochmal neu installieren und nun bekomme ich folgende Fehlermeldung, wobei das Passwort zu 100% richtig ist.

    Paketkonfiguration

    Zitat


    ┌──────────────────────────────────────────────────────────────┤ Konfiguriere phpmyadmin ├──────────────────────────────────────────────────────────────┐
    │ Ein Fehler ist beim Installieren der Datenbank aufgetreten: │
    │ │
    │ ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

    ...


    folgendes habe ich eingegeben:

    Code
    sudo apt-get --purge remove lighttpd* php* mysql* phpmyadmin*
    sudo apt-get autoremove
    sudo reboot
    sudo apt-get update
    sudo apt-get install lighttpd php5-cgi mysql-server mysql-client phpmyadmin

    mich wundert es, weil ich bei der installation nicht viel falsch machen kann, vertippt habe ich mich nicht, habe ein wirklich sehr einfaches passwort angegeben, wollte das später erst ändern.

    edit:
    also wenn ich bei der installation bei dem Punkt "Configure database for phpmyadmin with dbconfig-common?" auf NO setze, dann bekomme ich bei der installation zumindest kein Fehler mehr, allerdings beim einloggen ins phpmyadmin ein 500internal error und wenn ich die configs bearbeite und dann lighttpd neustarten möchte, bekomme ich diese fehlemeldung

    Zitat

    sudo /etc/init.d/lighttpd restart
    Duplicate config variable in conditional 0 global: fastcgi.server
    2013-02-13 23:47:21: (configfile.c.943) source: /etc/lighttpd/lighttpd.conf line: 35 pos: 8 parser failed somehow near here: (EOL)

    Einmal editiert, zuletzt von logan517 (13. Februar 2013 um 23:47)

  • Moin logan517,

    Deine Fehlermeldung in der "line 35 pos 8 near (EOL)" etc ist bei mir genauso. Hast Du mittlerweile eine Lösung erreicht?!

    zum Tutorial: mit apache (anderes Tutorial) hat es sofort geklappt. an lighttpd interessiert mich eher, der wenige Speicherbedarf. Aber leider ist bei mir die Luft raus bei Punkt 4 : sudo /etc/init.d/lighttpd restart" bricht ab mit der gleichen Meldund von logan.

    Sorry, ich sehe den Baum vor lauter Wald einfach nicht.

    danke für ein weiteres unter die Arme greifen.

    nachtzleben

  • Hi,

    erst einmal danke für das Tutorial. Ich konnte den Webserver nun einrichten, leider komme ich nicht auf phpmyadmin, es kommt immer ein 404-Fehler. In welchem Verzeichnis ist das denn nun drin?

    Sonst zum Tutorial:

    Müssen die Konfigurationen bezüglich fastcgi denn sein? Reicht nicht ein

    Code
    sudo lighty-enable-mod fastcgi

    ?

    Im Übrigen: Das Kopieren der .conf-Datei halte ich ebenfalls nicht für sinnvoll. Besser wäre:

    Code
    sudo ln -s /etc/phpmyadmin/lighttpd.conf /etc/lighttpd/phpmyadmin.conf
  • Habe das selbe Problem:

    Code
    pi@raspberrypi /var/www $ sudo /etc/init.d/lighttpd restart
    Duplicate config variable in conditional 0 global: fastcgi.server
    2013-03-22 13:59:15: (configfile.c.943) source: /etc/lighttpd/lighttpd.conf line: 35 pos: 8 parser failed somehow near here: (EOL)



    kann mir jemand helfen bzw. sagen wo mein Fehler ist?

  • Um den Zugriff auf PhpMyAdmin von extern zu sperren muss folgende Änderung vorgenommen werden:

    1. sudo nano /etc/lighttpd/phpmyadmin.conf
    2.Folgendes ergänzen. Bei der IP Adresse wird die komplette Range 192.168.178.0 - 192.168.178.255 erlaubt.

    Code
    $HTTP["remoteip"] !~ "192.168.178." {
    $HTTP["url"] =~ "^/phpsysinfo" {
     url.access-deny = ( "" )
     }
    }


    3. STRG + O zum speichern, STRG + X zum Nano beenden
    4. sudo /etc/init.d/lighttpd restart

    Code
    [ ok ] Stopping web server: lighttpd.
    [ ok ] Starting web server: lighttpd.


    5. Testen

  • Zitat von aplaceformyhead pid=9589 dateline=1365157296


    Um den Zugriff auf PhpMyAdmin von extern zu sperren muss folgende Änderung vorgenommen werden:

    1. sudo nano /etc/lighttpd/phpmyadmin.conf
    2.Folgendes ergänzen. Bei der IP Adresse wird die komplette Range 192.168.178.0 - 192.168.178.255 erlaubt.

    Code
    $HTTP["remoteip"] !~ "192.168.178." {
    $HTTP["url"] =~ "^/phpsysinfo" {
    url.access-deny = ( "" )
     }
    }


    3. STRG + O zum speichern, STRG + X zum Nano beenden
    4. sudo /etc/init.d/lighttpd restart

    Code
    [ ok ] Stopping web server: lighttpd.
    [ ok ] Starting web server: lighttpd.


    5. Testen

    Man hätte ja noch erwähnen können von wem das kam.....

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?

    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.

  • Hallo,

    habe versucht nach Deiner Anleitung lighttp auf meinem PI zu installieren.

    Beim restart von lighttp erhalte ich folgende Fehlermeldung:

    root@raspberrypi:~# /etc/init.d/lighttpd restart
    Duplicate config variable in conditional 0 global: fastcgi.server
    2013-05-02 09:38:03: (configfile.c.943) source: /etc/lighttpd/lighttpd.conf line: 34 pos: 8 parser failed somehow near here: (EOL)
    root@raspberrypi:~#

    Die info.php kann nich angeschaut werden: FORBIDDEN
    Der Ordner /var/www hat Root-Rechte ( 0755 ) ???

    Was muss ich noch ändern, damit es läuft ?

    Danke für Info

    Gruss
    Bodo

  • Ich schließe mich hiermit an. Habe exakt das selbe Fehlerbild.
    Weis wer Rat?

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!