Boxpirates Wiki >>> PI Webserver nginx
Inhaltsverzeichnis
Installation Nginx
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.
Voraussetzung: Raspbian oder vergleichbare Distribution installiert
Schritt 1
Die Installation geht dank dem Paketmanager APT denkbar einfach.
sudo apt-get install nginx
Schritt 2
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
Schritt 3
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
Schritt 4
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
Schritt 5
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_params; #} # 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_params;
} # deny access to .htaccess files location ~ /\.ht { deny all; }