Raspberry Pi: Webserver Nginx installieren
Auf dem kleinen Wunderwerk, alias Raspberry Pi, läuft auch ein Webserver. Ich probierte den klassischen Apache 2 aus, wobei die Performance für mich nicht zufriedenstellend war. Somit entschied ich mich den Nginx Webserver zu installieren, welcher wesentlich runder läuft. Im Folgenden beschreibe ich, wie ihr diesen auf eurem Raspberry Pi installiert und einrichtet. Möchte man Ngnix mit Ruby on Rails installieren, so muss man erst bei Step 9 beginnen!
Voraussetzung: Raspbian oder vergleichbare Distribution installiert
Die Installation geht dank dem Paketmanager APT denkbar einfach.
sudo apt-get install nginx
Nun passen wir noch ein paar Werte bzgl. max. Prozesse an, so dass Nginx den Raspberry Pi nicht überlastet.
sudo sed -i "s/worker_processes 4;/worker_processes 1;/g" /etc/nginx/nginx.conf
sudo sed -i "s/worker_connections 768;/worker_connections 128;/g" /etc/nginx/nginx.conf
Jetzt noch Ngix starten, damit er auch einen Nutzen hat 😉
sudo /etc/init.d/nginx start
Und das war’s schon. Fertig ist der Nginx installiert. Nun kann PHP (ich empfehle php5-fpm zu verwenden) und eine MySQL Datenbank wie unter jedem gewöhnlichen Debian Server nachinstalliert werden. Ebenfalls ist es möglich (siehe weiter unten) Ruby on Rails zu installieren.
PHP installieren
Zuerst installieren wir PHP mit ein paar Standard-Erweiterungen mittels des Paketmanagers APT.
sudo apt-get install php5 php5-fpm php-pear php5-common php5-mcrypt php5-mysql php5-cli php5-gd
Nun müssen wir PHP in nginx aktivieren. Dies machen wir, indem wir mittels eines Editors die folgende, erste Passage durch die zweite ersetzten. In nano speichert man mittels STRG + X und darauffolgend Y.
sudo nano /etc/nginx/sites-available/default
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # fastcgi_split_path_info ^(.+\.php)(/.+)$; # # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini # # # With php5-cgi alone: # fastcgi_pass 127.0.0.1:9000; # # With php5-fpm: # fastcgi_pass unix:/var/run/php5-fpm.sock; # fastcgi_index index.php; # include fastcgi.conf; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #}
# pass the PHP scripts to PHP-FPM server listening on unix socket location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi.conf; } # deny access to .htaccess files location ~ /\.ht { deny all; }
Damit die index.php direkt geladen wird, müssen wir in derselben Datei wie in Step 3 wieder die erste durch die zweite, folgende Passage ersetzten.
sudo nano /etc/nginx/sites-available/default
index index.html index.htm;
ersetzen durch
index index.html index.htm index.php;
Step 8
Jetzt müssen wir nginx und PHP starten.
sudo /etc/init.d/nginx restart
sudo /etc/init.d/php5-fpm restart
Nun läuft nginx mit PHP auf unserem Raspberry Pi. An dieser Stelle möchte ich noch darauf hinweisen das der Raspberry Pi bekanntlicherweise nicht der Leistungsstärkste ist und daher große Systeme, trotz des schlanken Webservers nginx, wie WordPress nur bedingt gut laufen werden.
Wie man Ruby on Rails zu Nginx installiert erkläre ich im Folgenden:
Ruby on Rails installieren
Zunächst muss wir Ruby und Rails an sich installieren. Wie das geht erkläre ich im Tutorial Ruby on Rails installieren.
Nun müssen wir noch ein paar benötigte Pakete installieren.
sudo apt-get install libcurl3-gnutls-dev libcurl3-openssl-dev
Um die weiteren Schnitte ausführen zu können benötigen wir etwas mehr RAM als der Raspberry Pi bietet. Daher müssen wir unseren SWAP auf mind. 512 MB erweiteten. Wie das geht habe ich Artikel SWAP erweitern erklärt.
Jetzt installieren wir das passenger-Modul für nginx, welches das benötigte Rack-Interface bereitstellt.
gem install passenger
Mittels folgendem Befehl können wir nun das Installatios-Interface des passenger-Moduls für nginx starten. In diesem müssen wir zunächst mittels Enter einem Systemcheck zustimmen, daraufhin wählen wir Variante 1, wodurch wir nginx gleich korrekt kompilieren lassen. Alle weiteren Eingabeaufforderungen können wir mittels Enter bestätigen. Da nginx nun kompiliert wird dauert dies ein wenig (bei mir waren es ca. 50 min.).
rvmsudo passenger-install-nginx-module
Nun müssen wir noch ein Startscript für nginx anlegen und dieses in den Autostart legen. Der Einfachheit halber könnt ihr dieses von meinem Server herunterladen.
wget https://jankarres.de/wp-content/uploads/2013/06/ngnix-startscript.gz
gunzip ngnix-startscript.gz
sudo mv ngnix-startscript /etc/init.d/nginx
sudo chmod +x /etc/init.d/nginx
sudo /usr/sbin/update-rc.d -f nginx defaults
Zuletzt müssen wir nginx noch neustarten.
/etc/init.d/nginx restart
Nun läuft auch Nginx mit Ruby on Rails. Entsprechend wünsche ich gutes Coden 😉
Zugriff außerhalb des eigenen Netzwerks
Portfreigabe im Router
Soll der soeben installierte Dienst auch außerhalb des eigenen Netzwerkes verfügbar sein, so müssen folgende Ports im Router freigegeben werden. Wie man freigibt, beschrieb ich in dem Artikel Portforwarding bei Fritz!Box und Speedport.
114 Kommentare. Hinterlasse eine Antwort
[…] Jetzt installieren wir noch einen Webserver. Ich empfehle hier ngnix auf Grund dessen, dass dieser Webserver ressourcensparend ist. Wie man diesen installiert, beschrieb ich in meinem Tutorial Raspberry Pi: Webserver Nginx installieren […]
Dieser Beitrag wurde am 15. Juni überarbeitet.
Hallo Jan,
Vielen Dank für dieses und all die anderen tutorials. Leider scheiterts bei mir an Schritt 10. Und ich weiß nicht ganz, was ich mit dieser Fehlermeldung anfangen soll.
Reading package lists… Done
Building dependency tree
Reading state information… Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
libcurl4-gnutls-dev : Conflicts: libcurl4-openssl-dev but 7.38.0-4+deb8u2 is to be installed
libcurl4-openssl-dev : Conflicts: libcurl4-gnutls-dev but 7.38.0-4+deb8u2 is to be installed
E: Unable to correct problems, you have held broken packages.
Vielleicht kannst du mir sagen, was das zu bedeuten hat? Danke und viele Grüße!
Hallo Jan,
Vielen Dank für die vielen Anleitungen, die haben schon mächtig geholfen…!! Trotzdem bin ich definitiv noch Newbee auf dem RasPi und habe sicherlich irgendeinen blöden Fehler gemacht. Folgende Situation:
– nginx installiert (Step 3), alles wunderbar.
– PHP installiert bis in Step 8 beim restart von nginx folgende Fehlermeldung kam:
Reloading nginx configuration: nginx: [emerg] open() „/etc/nginx/fastcgi.conf“ failed (2: No such file or directory) in /etc/nginx/sites-enabled/default:66
nginx: configuration file /etc/nginx/nginx.conf test failed
Ich habe daraufhin beides nochmals deinstalliert und neu installiert (allerdings ist offensichtlich die „…sites-available/default“ Datei nicht ersetzt worden. Die Fehlermeldung ist ebenfalls geblieben…
Hast Du eine Idee?
Danke!
Christian
Da ich hier beim überfliegen nichts gesehen habe was den Fehler korrigiert, hier mal meine Lösung: mit „sudo nano /etc/nginx/fastcgi.conf“ die beanstandete Datei geöffnet und einfach ein „#“ eingefügt, Datei gespeichert, alles wieder gut 😉
Ich vermute das hat die Datei überhaupt erst angelegt, sicher bin ich mir da aber nicht, da ich vorher nicht überprüft hatte ob sie existiert.
Ich weiss, das kommt reichlich spät, aber ab und zu nutzt vllt noch jemand das Tutorial, so wie ich auch immer wieder mal das ein oder andere hier nutze.
Danke für die vielen tollen Anleitungen,
Gruß,
Andreas
Hallo Jan,
hoffentlich liest du hier noch drüber .
Ich bin blutiger Anfänger doch das Tut ging bis Punkt 7 locker durch.
Hier wusste ich nicht welche Zeilen genau zu verändern waren da bei mir zwei sehr ähnliche vorkamen. Bei der einen stand allerdings noch mehr dabei mit nginx.html aber ohne php.
Ich habe dann beide wie hier beschrieben verändert.
sudo nano /etc/nginx/sites-available/default
1
index index.html index.htm;
ersetzen durch
1
index index.html index.htm index.php;
Bei Punkt 8 bekomme ich dann folgende Fehlermeldung:
David@raspberry_cloud:~ $ sudo /etc/init.d/nginx restart
[….] Restarting nginx (via systemctl): nginx.serviceJob for nginx.service failed. See ’systemctl status nginx.service‘ and ‚journalctl -xn‘ for details.
failed!
David@raspberry_cloud:~ $ sudo /etc/init.d/php5-fpm restart
[ ok ] Restarting php5-fpm (via systemctl): php5-fpm.service.
David@raspberry_cloud:~ $
Kannst du mir weiterhelfen ?
Gruß David
Und am 29. Juni wurde er erneut überarbeitet.
Hallo Jan, kannst Du bitte unter Step 5.) deutlich(er) machen, welches genau die erste und welches die zweite Passage sein soll?! Danke.
P.S. Wo ist eigentlich Step 6.)? 🙂
Hallo, ich hätte ebenfalls dieselbe Frage. Kannst du den punkt deutlicher beschreiben, denn ich bekomme es nicht zu laufen 🙁
Hab bei Step 5 auch so meine Probleme, welche Passage wird durch welche ersetzt?
Hey Jan, wäere cool wenn du noch beschreiben könntest wie mann einen SVN-Server mit ngnix zum laufen bringt =)
Gruß Henry
SVN ich zwar net so wissend, da ich zu den Freunden von Git gehöre, aber ich habs mal auf die Todo-Liste geschrieben 🙂
pi@raspberrypi ~ $ sudo apt-get install nginx
sudo: apt-get install: command not found
????????
damit ist der anfang ja schon mal klasse
Unter Raspbian oder vergleichbaren Distribution? Falls ja, hast du dein System vorab schon mal irgendwie zerschossen 😀
Mit sed -i kannst du Dateien direkt inline bearbeiten. Dann kannst du dir den Umweg sparen.
Dankend vernommen und verbessert (ich sollte mehr Doku lesen ;))
Danke für die Anleitung. Aber mir fehlen Erklärungen, warum so viele PHP-Module statt nur fpm. Belegen die anderen nicht umsonst Speicher?
Könnte man natürlich weglassen, jedoch sind dies Bibliotheken, die von vielen PHP Scripten benutzt werden und daher meist als Standard vorausgesetzt werden. Daher installiere ich sie in diesem Tutorial gleich mit.
[…] zunächst den Webserver nginx. Wie man dies bewerkstelligt erklärte ich bereits in der Anleitung Webserver Nginx installieren (bis einschließlich Step 3 zu bearbeiten). Step […]
[…] mit PHP (genauer php5-fpm) auf dem Raspberry Pi. Wie dies funktioniert, habe ich in meinem Beitrag Webserver Nginx installieren erklärt. Wir setzten bewusst auf Nginx anstatt auf Apache2, da dieser Webserver wesentlich weniger […]
[…] https://jankarres.de/2012/08/raspberry-pi-webserver-nginx-installieren/ […]
Hallo Jan,
wie bekomme ich den Webserver und die PHP-Anwendungen in einen Autostart-Mechanismus? Muss die Dienste immer manuell starten.
Bin noch ein Newbie..
Hab noch eine andere Frage an dich, die hier allerdings nicht so ins Thema passt:
Habe gestern zum testen folgendes Kommando eingegeben: sudo chmod 777 /media/Boxes (glaub ich)
Seitdem sehe ich die externe Festplatte des Raspberrys nicht mehr in der grafischen Umgebung des Raspbian OS. Kann das an dem Kommando gelegen haben?
Nur Owncloud und BittorrentSync sollen eigentlich auf die Platte schreiben.
Über eine Antwort würde ich mich sehr freuen.
P.S.: Die Installationen des Webservers sowie die von Owncloud haben nach deiner Antwort hervorragend geklappt. Nur die Verbindung von Owncloud mit BittorrentSync (Die du ja auch nicht beschreibst) bekomme ich als Linux-Newbie noch nicht so richtig hin. Die Verbindung soll auf der externen Platte stattfinden. BittorrentSync erstellt dabei nur Sicherheitskopien meiner Bilder und mit Owncloud wollte ich sie verwalten.
Zu Chmod: Nein, sollte nicht daran liegen können.
Zu PHP: Solle automatisch im Autostart sein. Wenn nicht kannst dus mittels folgenden Kommandos in den Autostart legen.
sudo update-rc.d mysql defaults
Gegenfrage: Wieso ein Backup mit Bittorrent Sync machen? Gibt einfachere Methoden z.B. mit rsync.
von rsync habe ich noch nichts gehört, werde ich mir mal ansehen. Danke.
Habe meine o.g. Probleme mehr oder weniger in den Griff bekomme, was mich allerdings noch nicht weitergebracht hat. Konnte mit Owncloud meine durch BittorrentSync gesicherten Daten „sehen“. Owncloud zeigt mir jedoch nur leere Ordner an, obwohl die Dateien da waren. Das habe ich auf der externen Platte kontrolliert. Keine Ahnung wieso.. Vllt waren es einfach zu viele Daten für Owncloud. (Also nur teilweise funktionsfähig)
Dann habe ich es komplett neu mit Seafile (natürlich ohne Bittorrentsync und Owncloud) probiert, was an sich schon wesentlich schneller lief. Jedoch konnte Seafile keine Synchronisierung durchführen. Im Client stand immer nur „Indiziere Dateien“ und nix weiter passierte. Verstehe ich ebenfalls nicht, da die Synchronisierung mit Seafile bei kleinen Ordnern gut funktionierte. (Funktioniert also ebenfalls nicht).
Nun bin ich mit meinem Latein am Ende.
Vllt. beschreibe ich einfach mal mein Problem:
Mein Mac ist ziemlich voll mit Daten die ich permanent brauche. Daher liegen meine Bilder und meine Musik (bisher ungesichert) auf meiner Timecapsule, die als NAS fungiert. Natürlich wird ein Backup meines Macs mit TimeMachine auf der Timecapsule erstellt, da ich jeodoch wie gesagt die Musik und meine Bilder auslagern musste, liegen diese nun ungesichert auf der Timecapsule. Nun wollte ich es so gestalten, dass sobald sich etwas verändert, der 24/7 Raspi meinen Musik- und Bilderordner als Sicherung auf einer externen Platte spiegelt. Darüber hinaus hatte ich es mir eben so vorgestellt, dass ich mit Owncloud auch von außen darauf zugreifen kann, was anscheinen aufgrund der Datenmengen nicht funktioniert.
Vllt. hast du ja noch eine Idee wie man mein Problem lösen kann.
Bzgl. Seafile: Bei vielen Dateien dauert das Indizieren der Dateien sehr lang. Da heißt es einfach abwarten. Zum sichern wie gesagt rsync verwenden.
Hallo Jan ich hoffe du kannst mir helfen. Ich habe nun auf dem cubietruck ein gateway eingerichtet. Nun möchte ich owncloud darauf noch installieren und folglich auch nginx.
Wenn ich bei Step 3 nginx zu starten möchte kommt das hier.
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
Kannst du damit was anfangen?
läuft wohl noch apache ohne das ich es installiert habe
sudo nano /etc/nginx/sites-available/default
hier hab ich den port von nginx geändert und läuft jetzt
Ich bekomme denselben Fehler, wenn auch ohne Apache. Der einzige Wechsel, den ich hatte, war, dass ich jetzt hinter einer F!Box mit Freigaben für 8001 etc. hänge und vorher hinter einem ddwrt-Router war. Ich bin streng nach deinem Post vorgegangen. Installiert sind nginx, Seafile und Baikal mit php5.
Mit netstat -ntpl bekomme ich folgendes:
tcp 0 0 0.0.0.0:12001 0.0.0.0:* LISTEN 2344/seaf-server
tcp 0 0 0.0.0.0:8001 0.0.0.0:* LISTEN 2307/ccnet-server
tcp 0 0 0.0.0.0:5002 0.0.0.0:* LISTEN 2424/perl
tcp 0 0 127.0.0.1:13418 0.0.0.0:* LISTEN 2307/ccnet-server
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 2446/smbd
tcp 0 0 0.0.0.0:8082 0.0.0.0:* LISTEN 2345/httpserver
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2486/sshd
tcp 0 0 0.0.0.0:8888 0.0.0.0:* LISTEN 2385/perl
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 2446/smbd
Auf Port 80 ist nichts besetzt. Selbst wenn ich versuche, mit sudo fuser -k 80/tcp die app, die auf Port 80 sitzt, zu killen, geht es nicht.
Kann es sein, dass die F!Box dazwischenfunkt?
Ich korrigiere. Bei mir schlägt der bind auf 8001 fehl:
nginx: [emerg] bind() to 0.0.0.0:8001 failed (98: Address already in use)
Auf 8001 ist der ccnet-server (PID 2307). Wie sähe hier die Lösung aus? Wieso will nginx auf 8001 statt 80 binden?
Du hast da wohl einige Ports nach eigenen Wünschen konfiguriert. Pro Port kann nur ein Service laufen.
Schönes tut… Hat mir sehr geholfen
Eine Frage
Über apt-get installiert er die nginx-1.2.1
Hab mir dies nginx-1.4.4.tar.gz runter geladen
Wie kann ich diese den nun installieren? Und nginx aktualisieren?
Wäre super wenn du mir da helfen könntest
Danke
Klingt nach Sourcecode und folglich müsstest du es händisch kompilieren und installieren. Dazu solltest du zuvor alle Installationen von nginx über den Paketmanager APT zuvor entfernen. Folglich wäre das ein eigenes Tutorial. Wenn du nicht zwingend eine neue Funktion, die es erst ab einer neueren Version als 1.2.1 gibt, benötigst ist diese Version völlig in Ordnung.
hallo jan..
danke für deine antwort.. wäre schön wenn du dafür eventuell mal noch ein tut machen würdest wie man sowas macht..
mir gehts eigentlich darum .. er zeigt mir in der owncloud folgenden fehler…
Einrichtungswarnung
Ihr Web-Server ist noch nicht für eine Datei-Synchronisation konfiguriert, weil die WebDAV-Schnittstelle vermutlich defekt ist. Bitte überprüfen Sie die Instalationsanleitungen.
darum wollte ich ne neue version von nginx installieren bzw updaten
vielleicht kannst eventuell mal noch wenn du etwas zeit findest das tut von der owncloud ergänzen wie man diese auf einen usb stick/festplatte auslagert.. das würde mich brennend interessieren und andere user mit sicherheit auch..
danke
Hallo Jan.. Kannst mir bei meiner letzten Frage nicht helfen?
Noch ne frage…
Wie bekomm ich den die owncloud ausgelagert auf einen USB Stick/Festplatte?
Kannst mir da eventuell helfen?
Danke
Doch, nur an Zeit zum Antworte hats gemangelt 😉 Wie man die Dateien nach der Installation auslagern kann, wird im Owncloud Forum ausführlich beschrieben.
Owncloud funktioniert mit der, über APT verfügbaren Nginx Version. Ich denke du hast Step 8 der Owncloud Anleitung nicht ordentlich ausgeführt.
Hallo,
bekomme nach „sudo apt-get install nginx“ folgende Meldungen angezeigt:
update-rc.d: error: insserv rejected the script header
dpkg: Fehler beim Bearbeiten von nginx-common (–configure):
Unterprozess installiertes post-installation-Skript gab den Fehlerwert 1 zurück
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von nginx-full:
nginx-full hängt ab von nginx-common (= 1.2.1-2.2+wheezy2); aber:
Paket nginx-common ist noch nicht konfiguriert.
dpkg: Fehler beim Bearbeiten von nginx-full (–configure):
Abhängigkeitsprobleme – verbleibt unkonfiguriert
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von nginx:
nginx hängt ab von nginx-full | nginx-light; aber:
Paket nginx-full ist noch nicht konfiguriert.
Paket nginx-light ist nicht installiert.
dpkg: Fehler beim Bearbeiten von nginx (–configure):
Abhängigkeitsprobleme – verbleibt unkonfiguriert
Fehler traten auf beim Bearbeiten von:
E: Sub-process /usr/bin/dpkg returned an error code (1).
Gibt es hierfür Lösungsmöglichkeiten?
Danke und Gruss JBL
Ui, das sieht nach einem argen hund aus. Schau mal ob folgendes hilft.
sudo apt-get -f install
sudo apt-get purge nginx
sudo apt-get update
sudo apt-get install nginx
sudo apt-get -f install
sudo-get purge nginx und
sudo apt-get install ngingx liefern folgende Ergebnisse:
Paketlisten werden gelesen…
Abhängigkeitsbaum wird aufgebaut….
Statusinformationen werden eingelesen….
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
3 nicht vollständig installiert oder entfernt.
Nach dieser Operation werden 0 B Plattenplatz zusätzlich benutzt.
nginx-common (1.2.1-2.2+wheezy2) wird eingerichtet …
insserv: warning: script ‚mathkernel‘ missing LSB tags and overrides
insserv: There is a loop between service pyload and mathkernel if stopped
insserv: loop involving service mathkernel at depth 2
insserv: loop involving service pyload at depth 1
insserv: Stopping mathkernel depends on pyload and therefore on system facility `$all‘ which can not be true!
insserv: exiting now without changing boot order!
update-rc.d: error: insserv rejected the script header
dpkg: Fehler beim Bearbeiten von nginx-common (–configure):
Unterprozess installiertes post-installation-Skript gab den Fehlerwert 1 zurück
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von nginx-full:
nginx-full hängt ab von nginx-common (= 1.2.1-2.2+wheezy2); aber:
Paket nginx-common ist noch nicht konfiguriert.
dpkg: Fehler beim Bearbeiten von nginx-full (–configure):
Abhängigkeitsprobleme – verbleibt unkonfiguriert
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von nginx:
nginx hängt ab von nginx-full | nginx-light; aber:
Paket nginx-full ist noch nicht konfiguriert.
Paket nginx-light ist nicht installiert.
dpkg: Fehler beim Bearbeiten von nginx (–configure):
Abhängigkeitsprobleme – verbleibt unkonfiguriert
Fehler traten auf beim Bearbeiten von:
nginx-common
nginx-full
nginx
E: Sub-process /usr/bin/dpkg returned an error code (1)
„Arger Hund“ heisst „neu installieren“?
Geht auf jeden Fall scheller als den Fehler zu jagen 😉
Hab den Fehler gefunden, habe das Wolfram Package gelöscht, danachlief es ohne die Meldungen …
Klingt zwar strange, aber immerhin eine funktionierende Lösung 🙂
sensationelles Problem, hat als Lösung aber funktioniert 🙂
Bei mir hat es geholfen apache2 zu stoppen, danach konnte ich nginx installieren.
Hallo Jan,
verstehe ich das richtig, dass der NGINX-Server ohne ssl und nur für den Zugriff aus dem internen Netz (http, Port 80) eingerichtet worden ist?
Ich möchte zusätzlich von außerhalb meines Netzes darauf zugreifen (z.B. für TTRSS). Kann ich bereits vorhandene SSL Zertifikate (aus meiner pyload) Installation dafür verwenden? Und wenn ja, wohin müssen diese kopiert werden und welche configs müssen wie angepasst werden?
Danke.
Auf einen Webserver wie nginx kann man sowohl über das interne Netz als auch von Extern zugreifen (in letztem Fall muss Port 80 bzw. mit SSL auch Port 443 im Router freigegeben werden) – egal ob mit oder ohne SSL. Ein SSL Zertifikat, sofern es kein Wildcard Zertifikat ist, sollte nur an einer Stelle zum Einsatz kommen.
Wie du ein SSL Zertifikat ausstellst und nginx entsprechend konfiguriertst ist leider nicht in zwei Sätzen erklärt. In dem Seafile Tutorial wird dies in Step 11 und 12 durchgeführt. Mit diesem Beispiel und/oder etwas googeln solltest du es aber recht schnell verstehen können 🙂
Ein eigenes Tutorial in dem u.a. das erklärt wird steht bereits in meiner Todo-Liste.
Ich bekomme eine Fehlermeldung beim Synchronisieren einer Datei mit ca. 800 MB.
“ Gateway Time-Out“. Kann ich irgendwo eine Zeit einstellen, die dieses Problem behebt?
mfg Heinz-Rolf
Du könntest in der php.ini (ich glaube in /etc/php5/php.in) den Parameter max_execution_time hochsetzen. Reload/Restart von php5-fpm nicht vergessen!
Hi, ich bekomme den Fehler
apt-get install php5-fpm
E: Unable to locate package php5-fpm
Auch mit dem Erweitern der sources.list um
deb http://packages.dotdeb.org stable all
deb-src http://packages.dotdeb.org stable all
komme ich nicht weiter. Ideen?
Welches Betriebssystem verwendest du denn? Und bist du als root-User angemeldet, oder warum hast du das sudo entfernt?
Hm, nach Step 5 bekomme ich eine Fehlermeldung:
Starting nginx: nginx: [emerg] „location“ directive is not allowed here in /etc/nginx/sites-enabled/default:62
nginx: configuration file /etc/nginx/nginx.conf test failed
Anhand der Fehlerbeschreibung würde ich darauf tippen, dass du den angegebenen Codeblock an der falschen Stelle eingefügt hast. Versuchs doch einfach noch mal 😉
Hi, erstmal: Super Tutorials hier für den Pi! Vielen Dank dafür!
Ich weiß nicht ob deine Anleitung veraltet ist oder nicht aber:
Ich bin grad dabei nginx mit php und ruby on rails zum Laufen zu bringen. Ruby on Rails wurde nach deiner Anleitung richtig installiert (glaub ich zumindest, bin ins Bett gegangen nachdem die Installation gestartet war 🙂 ). Allerdings hatte ich Probleme mit Step 10.
sudo apt-get install libcurl3-gnutls-dev libcurl3-openssl-dev
wirft bei mir Fehler wegen unerfüllten Abhängigkeiten. Musste NUR das Paket libcurl4-openssl-dev installieren. Dann hat der passenger-installer allerdings immer noch rumgemeckert ihm würden die ruby-dev files fehlen. Um das zu reparieren musste ich noch das Paket ruby1.9.1-dev nachinstallieren. Auch wenn rvm die Version 1.9.3 installiert hat scheint das doch zu passen…
Jetzt ist die Installation vom Passenger-Modul angelaufen… Mal schauen obs durchläuft…
Trotzdem super Tutorial!
Hi,
ich finde Deine Tutorials auch hervorragend! Herzlichen Dank dafür!
Bei mr das gleiche Problem, da ich allerdings ein totaler Linux-Newbie bin, komme ich bei Step 10 nicht weiter.
Hallo Jan,
ich habe nach Punk 8 folgende Fehlermeldung:
sudo /etc/init.d/nginx restart
Restarting nginx: nginx: [emerg] unexpected end of file, expecting „}“ in /etc/nginx/sites-enabled/default:114
kann ich das ignorieren?
Solltest du nicht ignorieren, denn nginx startet damit nicht mehr. Du wirst beim Kopieren der Konfiguration aus Sept 5 einen Fehler gemacht haben. Versuchs einfach erneut 🙂
Wenn man nur nginx und php installiert braucht man dann noch punkt 13 – 15 mit dem Startscript oder läuft das auch so.
War mir da etwas unsicher, da ich Ruby nicht brauche.
Wie beschrieben musst du für PHP nur bis einschließlich Step 8 das Tutorial beachten.
Hallo,
wenn ich nun nginx mit php und ruby on rails installieren will. Wie muss ich da vorgehen?
Deine Anleitung für Ruby on Rails kompiliert ja nginx neu. Heißt ich müsste php-fpm doch da auch mit reinbringen oder?
Grüße
Ich erlaube mir von Anfang des Artikel zu zitieren: „Möchte man Ngnix mit Ruby on Rails installieren, so muss man erst bei Step 9 beginnen!“
Hi,
ich meinte wenn ich Nginx mit Ruby on Rails und PHP verwenden möchte. Wenn ich komplett erst bei Step 9 anfange dann habe ich ja kein PHP mit an Board.
Kann sein das ich da brag etwas auf dem Schlauch stehe, wäre aber trotzdem nett wenn du mir das erläutern könntest wie ich vorgehen muss wenn ich beides benötige?
Viele Grüße
Dann musst du natürlich auch php5-fpm installieren und dir zwei auf verschiedenen Ports laufende nginx virtual hosts anlegen. Das wäre aber schon wieder eine eigene Anleitung, weshalb ich dir empfehlen würde dich einfach mal via Suchmaschinen schlau zu machen wie man nginx virtual hosts konstruiert.
Hallo Jan,
zunächst vielen Dank für Deine wunderbaren Anleitungen. Seit einigen Tagen besitze ich auch endlich einen Raspberry Pi und habe schon einige Deiner Infos umgesetzt. Leider ist die Linux-Welt für mich noch komplett neu, so dass die Lerneffekte groß aber die Fragen daher manchmal etwas komisch sind.
Ich habe zunächst dein Tutorial zum Aufsetzen des nginx-Webservers inkl. PHP befolgt. Alles hat wunderbar geklappt. Anschließend habe ich Baikal zusätzlich installiert und die Synchronisation von Kalender und Adressbuch ebenfalls hinbekommen. In Verbindung mit Baikal habe ich mich für die SSL-Variante entschlossen. Seitdem öffenet meine Webseite allerdings auch immer als verschlüsselte Seite, was ich vermeiden möchte.
Meine Frage lautet daher: Kann ich die Baikal-Komponente weiterhein verschlüsselt austauschen, während die Webseiten, die ich auf dem Pi hoste, unverschlüsselt übertragen werden? Falls ja, wie stelle ich das an?
Beste Grüße
Fabe
Hallo nochmal,
wie es scheint, habe ich eine Lösung gefunden: In der Nginx-Default-Datei unter ../sites-available/ habe ich jetzt mehrere Server angelegt. Zuvor habe ich bei noip.com einen weiteren Host angelegt. Jetzt klappt die Unterscheidung zwischen normalen Aufrufen von Webseiten (ungesichert) und der Baikal-Synchronisation (gesichert), da ich unterschiedliche Noip-Hosts für die beiden Zwecke verwende.
Vermutlich ist diese Lösung umständlicher als nötig, aber für den Moment zweckmäßig.
Grüße
Fabe
Dazu brauchst du verschiedene nginx virtual hosts. Folglich hast du das schon richtig angegangen, auch wenn es nicht verschiedene Domains benötigen würde. Das Thema ist aber nicht ganz easy, weshalb das einen eigenen Artikel wert wäre.
Hallo Jan,
Ich danke Dir für die super Doku.
Jedoch habe ich folgendes Problem beim Ausführen von
sudo /etc/init.d/nginx restart
sudo /etc/init.d/php5-fpm restart
Meldung:
[emerg] unknown directive „pass“ in /etc/nginx/Sites-enabled/default:62
Nginx: configuration file /etc/nginx/nginx.conf test failed
Vielleicht kannst Du helfen.
Vielen Dank!
Servus
Michael
Ich tippe, dass du beim Kopieren in Step 5 einen Fehler gemacht hast. Am besten einfach noch einmal versuchen 😉
nginx startet bei mir nicht mit dem Script. Ich muss nach dem Neustart manuel ’sudo nginx‘ eingeben (nicht /etc/init.d/nginx), damit es funktioniert. Hat das vielleicht etwas mit dem Pfad /opt/nginx zu tun, der bei mir nicht existiert?
In /opt/nginx sollte es auf jeden Fall nicht ein, wobei mich auch keine konkrete Idee habe. Vielleicht versuchst du es einfach noch einmal.
Habe das gleiche wie oben beschrieben. Nach dem Herunterladen und kopieren des Startscripts reagiert nginx bei Befehlen mit /etc/init.d/nginx XYZ nicht mehr.
Habe mich beim Installieren genau an die Anleitung gehalten.
Zumindest reagierte nginx vor dem Eintrag des Startscripts noch.
Best Regards,
Carlo
Hallo Jan,
habe ebenfalls das Problem, dass ich trotz penibler ausführung deiner Anleitung, nach einem Neustart des Pi’s mit deinem Startskript den nginx nicht zum laufen bekomme.
ein „sudo nginx“ hilft zwar weiter, aber der cronjob ist damit quasi zwecklos…
LG Martin
Lieber Jan, vielen Dank für diesen tollen Blog, den ich regelmäßig und gerne lesen. Deine Beiträge sind wirklich eine Bereicherung und machen mir vieles einfacher. Ich habe eine kleine Frage. Ich habe so wie beschrieben den Raspberry Pi für Nginx und PHP fit gemacht, da ich gerne in Zukunft PHP lernen möchte. Meine Idee: den Raspberry Pi konfigurieren und ins LAN, dann Zugriff auf den usr/share/nginx/www/ um dort meine Dateien hochzuladen. Sicherlich könnte ich auf dem lokalen Rechner auch einen Server einrichten, aber waurm nicht den Raspberry nutzen?
Ich habe nur folgendes Problem: Wenn ich per „nano index.html“ die Datei zu verändern versuche, wird mir angesagt, dass ich keine Berechtigung hätte. Und jedesmal als Root Dateien verändern möchte ich auch nicht. Was kann ich tun? Im Idealfall gebe ich dem www-Ordner die Eigenschaft, dass der User PI ihn beschreiben darf. Wie geht das?
Ich danke dir vorab für deine Antwort.
Das hängt am Rechtesystem. Mit
chmod
bzw.chmod -r
für Ordner kannst du die Rechte setzen. Folglich am besten mal mit diesem Kommando auseinandersetzen.Sollte kein Problem darstellen.
Einfach machen. Das sollte nichts Spezielles zu beachten sein 🙂
Versuchs doch mal mit einem Update
sudo apt-get update && sudo apt-get upgrade
Wie sieht es den mit Step 2 bezüglich des Pi2 aus?
Ist dieser Schritt hier noch immer sinvoll oder nicht bzw. mit anderen Werten
Ich kann mich der Antwort von Karl Georg nur anschließen.
Vielen Dank für die tollen Tutorials!
Leider habe auch ich ein Problem mit Step 10:
„Die folgenden Pakete haben unerfüllte Abhängigkeiten:
libcurl4-gnutls-dev : Kollidiert mit: libcurl-dev
Kollidiert mit: libcurl4-openssl-dev aber 7.26.0-1+wheezy12 soll installiert werden
libcurl4-openssl-dev : Kollidiert mit: libcurl-dev
Kollidiert mit: libcurl4-gnutls-dev aber 7.26.0-1+wheezy12 soll installiert werden
E: Probleme können nicht korrigiert werden, Sie haben zurückgehaltene defekte Pakete.“
Bin auch noch totaler Linux-Newbie und dementsprechend ratlos. Wie könnte ich hier vorgehen?
Wieso erstellt er bei mir nicht das Verzeichnis um auf die Config in Step 2 zuzugreifen?
Hallo Jan,
im Step 4 werden (bei mir) Fehler ausgegeben. Da kommen dann so Meldungen wie:
„Fehlschlag beim Holen von http://mirrordirector.raspbian.org/raspbian/pool/main/p/php5/php5_5.4.36-0+deb7u3_all.deb 404 Not Found“
Das deutet m.E. auf geänderte Pfade an der Quelle hin.
Der Tip am Ende hilft dann jedoch weiter:
„E: Einige Archive konnten nicht heruntergeladen werden; vielleicht »apt-get update« ausführen oder mit »–fix-missing« probieren?“ Also:
sudo apt-get update
und
sudo apt-get install php5 php5-fpm php-pear php5-common php5-mcrypt php5-mysql php5-cli php5-gd –fix-missing
eingeben und die Fehler sind weg. Besser wäre natürlich ein repariertes Script.
Wenn man diese Fehler übersieht, entstehen die hier beschriebenen Probleme u.U. als Folge daraus.
btw: Heute in der neuen c’t 2015/9 gibt’s nette Raspi-Artikel zu lesen.
Das ist Linux Basiswissen. Wenn das für dich ein Problem darstellte setzte dich am besten mal mit dem Paketmanager Dpkg und APT auseinander.
[…] den Webserver nginx mit php5-fpm. Wie man diese Software installiert erklärte ich in dem Artikel Webserver Nginx installieren. Step […]
Hallo Jan,
danke für das (und andere) schöne Tut, aber irgendwie habe ich ein ungutes Gefühl einen Server aufzusetzen und zu betreiben, der versionsmäßig völlig überholt ist. Ich denke da gerade an Sicherheitslücken und evtl. Performanceverbesserungen in neueren Versionen. Weißst du mehr darüber?
Um Sicherheitslücken musst du dir keinen Kopf machen, denn die werden auch in den alten Versionen gepatcht. Jedoch stimmt es, dass du nicht die aktuellsten Hauptversionen der Software hast, was jedoch der Struktur von Debian geschuldet ist, was Chrsiopher in seinem Beitrag Debian oder Arch Linux? schon einmal schön erläutert hat.
Wie deinstalliere ich das denn sauber? Möchte doch lieber Apache benutzen.
Hi,
wenn du ihn mit apt installiert hast geht das mittels apt-get remove
https://wiki.ubuntuusers.de/apt/apt-get?redirect=no
Grüße
Hallo Jan,
Ich hatte den Server nach deiner Anleitung installiert, alles lief ein halbes Jahr lang glatt.
Jetzt wollte ich ein Kontosystem auf meiner Website einführen und damit fingen die Probleme an. Für das Kontosystem wollte ich das Nginxmodul ngx_http_auth_basic_module benutzen. Da ich aber nicht wusste/weiß, wie ich das auf den Raspi bringe, habe ich dann diese Anleitung benutzt https://der-linux-admin.de/2015/05/nginx-basic-authentication/. Password-datei erstellt. Dann wollte ich das Konfigurieren machen, wobei ich aber eine Datei für den Nginx-server gelöscht haben muss (Hatte einen Pfadfehler drin und habe dann mit Filezilla nachgeguckt, dabei muss es passiert sein:) ). Denn jetzt läuft der Server nicht mehr. Was soll ich jetzt machen? De- und wieder installieren funktioniert nicht, da er diese Datei nicht erneut installiert.
Danke schonmal im Vorraus.
Damit ich dir helfen kann müsstest du mir genauer beschreiben was du alles gemacht hast.
Welche Datei meinst Du genau? Falls Du die Passwort-Datei meinst, dann kannst Du die einfach neu erstellen. Wie in Tutorial unter https://der-linux-admin.de/2015/05/nginx-basic-authentication/ beschrieben, geht das mit
htpasswd -c /etc/nginx/nginxpw
Den Pfad musst Du dann in der Konfiguration vom Nginx-vHost entsprechent anpassen.
Hey Jan,
kannst du wohl mal einen Nginx Artikel bezüglich der IPv6 Unterstützung schreiben? Ich weiß nicht, wie groß die Nachfrage diesbezüglich ist, aber meinen Googlesuchen nach zu urteilen, wird es einige interessieren. Nachdem ich dank eines neuen Inet-Vertrages nun leider Gottes vor die Wand aka IPv6 gefahren bin, muss ich nun einen Weg finden, meinen Pi wieder ins Netz zu bekommen. Bzw. viel mehr von außen erreichbar zu machen.
Da IPv6 noch komplettes Neuland für meine Wenigkeit darstellt, bin ich aktuell noch damit beschäftigt, überhaupt nen DynDNS vernünftig einzurichten. Beim Webserver bin ich noch gar nichtmal angelangt… 😀
Naja wäre ne klasse Sache, so ein Artikel.
Hallo Rapha,
hast du schonmal an einem anderen Computer IPv6 abgeschaltet? Wenn ja, kamst du danach nicht mehr ins Internet? Wenn ja, dann gebe ich dir mal folgenden Link für deinen RaspPi 🙂
http://superuser.com/questions/546788/how-to-disable-ipv6-on-debian-wheezy
Hey Joel,
eher das Gegenteil. Ich habe inzwischen IPv6 (angeblich) in nginx aktiviert, so dass es darauf lauscht. Soweit ich das sehe, muss man dafür aber auch nur eine Zeile in der servers-available/default hinzufügen (listen ::80). Allerdings habe ich es bisher noch nicht geschafft von außen auf den Webserver zuzugreifen. Hing das letzte mal bei nem DynDNS Betreiber fest. Meiner Vorstellung nach müsste IPv6 das über den Browser ja genauso problemlos laufen, wie IPv4. Dementsprechen hoffe ich, dass erstmal der Webserver normal ansprechbar wird und ich meine Pfütze wieder zu einer Cloud upgraden kann- Habe bisher allerdings aus Zeitmangel noch nicht weiter testen/werkeln können. Inzwischen kam von Jan auch ein Artikel bezüglich IPv6 raus, worin er eine Möglichkeit aufzeigt, seinen Pi hinter DS Lite erreichbar zu machen. Mal sehen, wie ich mich dabei anstelle 😀
Allerdings las ich bereits, dass nur TCP unterstützt wird. Ich habe jetzt schon schiss, dass es einige Dienste ausm Konzept haut. Naja mal sehen.
Die meisten Dienste, die man so verwendet, basieren auf dem TCP-Protokoll.
Der Artikel DynDNS trotz DS-Lite durch IPv6 Portmapper, der zufällig die Tage erschien, sollte dir eine Lösung bieten – nicht nur für nginx.
Vielleicht sollte man in Step 7 erwähnen, um welche Zeile mit „index“ es sich handelt, die kommt in der Datei öfter vor. Außerdem ist der letzte Absatz sehr undeutlich formuliert:
„Soll der soeben installierte Dienst auch außerhalb des eigenen Netzwerkes verfügbar sein, so müssen folgende Ports im Router freigegeben werden. Wie man freigibt, beschrieb ich in dem Artikel Portforwarding bei Fritz!Box und Speedport.“
Auf was soll sich „der soeben installierte Dienst“ beziehen? Auf Ruby on Rails oder auf nginx?
Zu Step 7: Ich denke das sollte für die meisten Leser schon klar sein. Man kann es an allen Stellen ersetzen, und es würde auch funktionieren.
Zur Portfreigabe: Ruby on Rails ist lediglich ein Framework, dass auf der Sprache Ruby aufsetzt. Davor steht der Webserver nginx. Dieses Konstrukt sollte jedem, der mit Ruby on Rails programmiert, klar sein. Ansonsten denke ich wird das mit dem programmieren auch schwer 😉
Hallo Jan,
deine Anleitungen sind klasse…
Bin heute auf ein Problem gestoßen, dass PHP nach der Einrichtung mit deiner Anleitung nicht funktioniert und bloß weiße Seiten ausgestoßen hat. Habe das Problem mit Hilfe des Beitrags auf http://it-repo.net/2014/01/08/webmaster-server/nginx-webserver/weisse-seiten-unter-nginx-mit-php-fpm-die-variable-script_filename gelöst, vielleicht kannst du es für eine Ergänzung deines Tutorials brauchen. Mein System war ein Banana Pi mit dem 1508er Bananian 8 (Debian Jessie) Image.
Gruß
Hi Jan,
ich habe nach dieser Anleitung schon mal einen Banana Pi unter ‚Raspbian for Banana Pi‘ komplett mit Baikal aufgesetzt.
Kann es sein, dass sich bei Nginx was geändert hat?
Bei Schritt 8 (nginx restart) bekomme ich eine Fehlermeldung:
Restarting nginx: nginx: [emerg] „location“ directive is not allowed here in /etc/nginx/sites-enabled/default:82
nginx: configuration file /etc/nginx/nginx.conf test failed
Der Pi ist auf dem neuesten Stand und ich habe das Ganze schon zum zweiten Mal durchgespielt.
Es scheint an diesem Syntax-Block zu liegen:
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
Dieser findet sich allerding auch 1:1 bei Ubuntuusers.de.
Vielen Dank für Deine tolle Arbeit
Gruß
p3t3r
Ganz am Ende fehlt noch eine abschließende geschweifte Klammer.
Stüüüümmt! Da hatte das damals auch geklemmt, aber ich hatte das nicht mehr auf’m Schirm.
Allerherzlichsten Dank!
Hallo,
habe folgendes Problem, bei der Installation des „php-Blocks“:
Fehler traten auf beim Bearbeiten von:
php5-fpm
E: Sub-process /usr/bin/dpkg returned an error code (1)
Gruß
Mx2
Danke für deine Anleitung!
Leider ist uns bleibt Linux ein ständig wachsendes uferloses Meer an Möglichkeiten.
Solche Tutorials haben deswegen leider eine recht geringe Halbwertszeit und müssten eigentlich ständig überarbeitet werden – das kann fast keiner leisten, wenn man bedenkt wie viele Komponenten eben andauernd erweitert und aktualisiert werden.
Wenn man deiner Anleitung exakt folgt landet man beim Aufruf einer php-Datei auf einer leeren weißen Seite. Liegt daran dass PHP nicht mitmacht. Nirgends wird ein Fehler ausgegeben oder geloggt. Ich habe nun locker 4h mit der Fehlersuche und Behebung verbracht und möchte sie hier mitteilen da ja sicher noch andere Benutzer an diesen Punkt kommen.
Die Ursache ist ein UPDATE von Nginx in welchem die Konfiguration verändert wird
(wer nachlesen möchte, hier: http://stackoverflow.com/questions/15423500/nginx-showing-blank-php-pages und hier: http://blog.martinfjordvald.com/2013/04/nginx-config-history-fastcgi_params-versus-fastcgi-conf )
Die Lösung für mich war eine zusätzliche Zeile in der default-Site-Konfiguration:
# pass the PHP scripts to PHP-FPM server listening on unix socket
location ~ \.php$ {
include fastcgi_params;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
}
Die letzte Zeile „fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;“ bringt PHP dann wieder zum laufen. Es gibt wohl auch noch andere Lösungen in der nginx.conf aber ich habe diese hier verwendet weil ich froh war dass es endlich lief.
[…] im Web (Ich würde nginx gegenüber Apache vorziehen, da die Umgebung ressourchenschonender ist. Passende Anleitung gibt es zum Beispiel hier). PHP wird ebenfalls vorausgesetzt (mindestens Version […]
Erstmal Danke für deine mühevollen Tutorials 🙂 aber ich denke Du solltest mal die komplette nginx default Datei posten damit nicht so oft Fehler damit entstehen! Ich für meinen Teil habe mit meiner default Datei rumgepfuscht und jetzt startet nginx trotz neuinstallation nicht mehr 🙁 bei systemctl status nginx.service kommt immer nginx: [emerg] „worker_processes“ directive is not allowed here in /etc/nginx/sites-enabled/default:2
Kannst Du mir helfen? Habe schon viel nachgelesen aber bringe es einfach nicht zum laufen
Hallo Jan,
könntest du auch einen kleinen Guide schreiben wie man nginx auf die neuste Version upgraded?
Die repos gehen offenbar nur bis 1.6.2 aber die neuste Version ist schon 1.10.0
[…] nginx auf Raspberry Pi: https://jankarres.de/2012/08/raspberry-pi-webserver-nginx-installieren/ […]
Hallo Jan,
vorab will ich erstmal sagen, dass deine Anleitung klasse sind und nicht schwer zu absolvieren sind.
Nun habe ich folgendes Problem, wenn ich mir die startscript.gz Datei mit sudo wget…. von deinem Server herunterladen will gibt es eine Fehlermeldung.
„HTTP request sent, awaiting response… 404 not found“
Die Verbindung zum Server erfolgt vorher aber erfolgreich. Ich tippe mal darauf, dass dieser Pfad bei deinem Server nicht mehr vorhanden ist !?
Ich hoffe du kannst mir weiterhelfen..
Hallo Jan,
ich wollte mich nur mal für die Tutorials bedanken die du hier zur Verfügung stellst.
Also Danke und liebe Grüße
Christian
Hallo Jan!
Musste meinen Raspi-Server gerade neu aufsetzen und habe dabei das neue Debian 9 Stretch installiert. Der obigen Anleitung folgend, gab es Probleme mit der Installation von PHP5 (insb. php5-mysql). Das wird wohl nicht mehr unterstützt.
Es wäre toll, wenn Du eine aktualisierte Version des Tutorials erstellen könntest 🙂
Bibo
Hallo, Step 4 scheint nicht mehr zu funktionieren. Es gibt Fehlermeldungen bezüglich php5.
Im folgenden ein Beispiel:
Paket php5 ist nicht verfügbar, wird aber von einem anderen Paket
referenziert. Das kann heißen, dass das Paket fehlt, dass es abgelöst
wurde oder nur aus einer anderen Quelle verfügbar ist.
E: Für Paket »php5« existiert kein Installationskandidat.
Gibt es eine Lösung?
apt-get install php php-fpm php-pear php-common php-mcrypt php-mysql php-cli php-gd
Danke, jetzt hat’s funktioniert
[…] Ein Startscript für nginx bietet Jan Karres unter Step 14 auf seinem Blog […]