Raspberry Pi als Webserver einsetzen: Unterschied zwischen den Versionen

Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen
K
K
Zeile 39: Zeile 39:
 
=nginx für Nutzung von PHP konfigurieren=
 
=nginx für Nutzung von PHP konfigurieren=
 
  sudo nano /etc/nginx/sites-available/default
 
  sudo nano /etc/nginx/sites-available/default
<code=ini>
+
 
server {
 
server {
 
     listen 80 default_server;
 
     listen 80 default_server;
Zeile 62: Zeile 62:
 
         deny all;
 
         deny all;
 
     }
 
     }
}</code=ini>
+
}
  
 
=nginx Konfiguration testen=
 
=nginx Konfiguration testen=

Version vom 11. April 2018, 16:01 Uhr

Der Bastelrechner Raspberry Pi wurde u.a. konzipiert und Kindern das Erlernen des Programmierens anhand kleiner Projekte zu lehren. Er erfreut sich auch bei Bastlern großer Beliebtheit, wird als Entwicklungssystem, als Retro-Spielkonsole oder Mediacenter eingesetzt und hielt auch im Smarthome-Bereich Einzug.

Auch zur Entwicklung oder dem (heimischen) Betrieb von Homepage-Projekten kann der "RasPi" gut Dienste leisten. nginx kann auch mit PHP und MySQL (MariaDB) umgehen, so dass wir auch Web-Projekte wie Wikis, CMS- oder Blog-Software (z.B. Wordpress oder Cloud-Software (z.B. Owncloud betreiben können.

Im Folgenden möchten wir erklären, wie man den leichtgewichtigen Webserver nginx auf einem Raspberry Pi unter Rasbian installieren und betreiben kann.

Die Kurzfassung:

NGinx installieren

sudo apt-get update
sudo apt-get install nginx

Benutzer- und Dateirechte auf dem System einstellen

Benutzergruppe anlegen

sudo groupadd www-data

Benutzer des Servers hinzufügen

sudo usermod -a -G www-data www-data

Dateirechte einstellen

sudo chown -R www-data:www-data /var/www

MySQL (MariaDB) installieren

sudo apt-get install mysql-server

Sicherheits-Setup durchführen

sudo mysql_secure_installation

PHP 7.0 installieren

 sudo apt-get install php7.0 php7-fpm

PHP.ini anpassen

sudo nano /etc/php/7.0/fpm/php.ini

Zeile #cgi.fix_pathinfo=1 finden und ändern zu cgi.fix_pathinfo=0
...und anschließend PHP neu starten.

sudo systemctl restart php7.0-fpm

nginx für Nutzung von PHP konfigurieren

sudo nano /etc/nginx/sites-available/default

server {

   listen 80 default_server;
   listen [::]:80 default_server;
   root /var/www/html;
   index index.php index.html index.htm index.nginx-debian.html;
   server_name [your public IP];
   location / {
       try_files $uri $uri/ =404;
   }
   location ~ \.php$ {
       include snippets/fastcgi-php.conf;
       fastcgi_pass unix:/var/run/php7.0-fpm.sock;
   }
   location ~ /\.ht {
       deny all;
   }

}

nginx Konfiguration testen

sudo nginx -t
sudo systemctl reload nginx

phpMyAdmin installieren

sudo apt-get install phpmyadmin
  • Bei der Abfrage nach dem eingesetzten Server (Apache oder lighttpd) nichts ankreuzen und bestätigen
  • Datenbankpasswort eingeben

Nginx für phpMyAdmin konfigurieren

Symlink für die Verbindung anlegen:

sudo ln -s /usr/share/phpmyadmin /var/www/html

phpMyAdmin absichern

Symlink umbenennen:

sudo mv phpmyadmin NichtsZuSehen

Quellen