Grundlegende PHP 7- und NGINX -Konfiguration auf Ubuntu 16.04 Linux

Grundlegende PHP 7- und NGINX -Konfiguration auf Ubuntu 16.04 Linux

Nginx überholt schnell Apache als bevorzugte Webserver. Für Web -Apps in Sprachen wie Rails und Python ist es praktisch allgegenwärtig, aber es ist etwas langsamer, sich in der PHP -Welt zu fangen. Ein Teil des Grundes dafür ist, wie leicht PHP und Apache zusammenpassen. PHP und NGINX können jedoch fast genauso einfach zusammenarbeiten, und mit der Freisetzung von Php 7 kann die Kombination der beiden eine ziemlich schnelle Option sein.

Die Pakete

Das wichtigste zuerst. Aktualisieren Sie Ubuntu und holen Sie sich die Nginx- und PHP -Pakete.

# sudo APT-Get Update && sudo APT-GET -y Upgrade # sudo apt-get -y install nginx PHP7.0 php7.0-fpm

Wenn die Installation beendet ist, sollten die Pakete alle vorhanden sein und tatsächlich ausgeführt werden. Um sicherzustellen, dass dies der Fall ist, können Sie überprüfen, ob sowohl Nginx als auch die PHP-FPM-Dienste in Systemd ausgeführt werden.

# sudo systemctl status nginx # sudo systemctl Status PHP7.0-fpm

Wenn Systemd bestätigt, dass beide Dienste ausgeführt werden, sollte der Server tatsächlich gestiegen sein und Sie in der Lage sein, die Standard -Nginx -Begrüßungsseite durch Navigieren zu sehen zu können Lokalhost im Browser.

Aufbau

Natürlich ist das nicht annähernd bereit, tatsächlich etwas zu veranstalten. Es ist eine Konfiguration erforderlich, um Nginx auf einen tatsächlichen Inhalt zu richten und die Sicherheit zu verbessern. Das Root -Verzeichnis für Nginx -Konfigurationsdateien befindet sich unter /etc/nginx. Zum Glück gibt es dort bereits Standardeinstellungen von Ubuntu, die den Konfigurationsprozess erheblich erleichtern.

Nginx.Conf

Die Hauptkonfigurationsdatei für Nginx ist nginx.Conf. Öffnen Sie es im Texteditor Ihrer Wahl. Es erfordert Root-Berechtigungen. Die Standardkonfiguration ist meistens in Ordnung. Es gibt offensichtlich Dinge, die getan werden können, um die Systemgeschwindigkeit und Sicherheit zu verbessern, aber das meiste davon liegt außerhalb des Rahmens dieses grundlegenden Tutorials. Wenn Sie die Leistung verbessern möchten, helfen die kommentierten Gzip -Optionen bei der Komprimierung und können die Dinge beschleunigen. Auf der Sicherheitsseite hilft das Hinzufügen der folgenden drei Zeilen, um böswillige Aktivitäten zu verhindern.

add_header x-rame-options sameorigin; add_header x-content-optionen nosniff; add_Header x-XSS-Protektion "1; modus = block";


Site -Konfiguration

Sobald die Zeilen hinzugefügt werden, speichern und beenden. Es gibt zwei Ordner im Nginx -Wurzel, Standorte verfügbar Und Websites fähig. Standorte verfügbar Speichert Site -Konfigurationen. Websites fähig Enthält Symlinks zu den Konfigurationsdateien in Standorte verfügbar. Auf diese Weise ist das Aktivieren und Deaktivieren von Websites so einfach wie das Erstellen und Entfernen von Symlinks.

Erstellen Sie mit Ihrem Texteditor eine Datei unter /etc/nginx/seites-verfügbar/yourSite. Diese Datei enthält jede ortsspezifische Konfiguration für Ihre neue PHP 7-Website. Das folgende Beispiel enthält eine Aufschlüsselung in den Kommentaren der einzelnen Zeile. Es ist eine ziemlich grundlegende Konfiguration, aber sie erledigt die Aufgabe.

 Server #nginx sollte Port 80 für Anforderungen an Ihre Site anhören.com Hören Sie 80; server_name yourite.com; #Create Access- und Fehlerprotokolle in/var/log/nginx access.Access_log main; ERROR_LOG/VAR/LOG/NGINX/TORSITE.INAGE_LOG INFO; #Nginx sollte in/var/www/yourSite nach Ihrem Website root/var/www/yourite/; #Die Startseite Ihrer Website ist eine Datei namens Index.PHP -Index.PHP; #Spezifiziert, dass Nginx nach sucht .PHP -Dateien Speicherort ~ \.php $ #IF eine Datei ist nicht gefunden, 404 try_files $ uri = 404; #Include Nginx's FastCGI -Konfiguration umfassen/etc/nginx/fastcgi.conf; |.0-fpm.Socke;  

Wenn Sie diese Datei erstellt haben, speichern Sie sie und wechseln Sie in die Websites fähig Verzeichnis. Erstellen Sie den Symlink von dort aus zu Datei zurück, die Sie gerade erstellt haben.

# CD/etc/nginx/sites-fähig # sudo ln -S/etc/nginx/sites-verfügbare/yourSite

Php.INI -Sicherheit

Sicherheit ist ein bewegendes Ziel, und es ist unmöglich, jeder möglichen Bedrohung voraus zu sein, aber es ist immer eine gute Idee, jede neue Serverinstallation so weit wie möglich zu verringern. Es gibt ein paar einfache Verbesserungen, die an die vorgenommen werden können Php.Ini Konfigurationsdatei, mit der PHP sichern kann. Öffnen Sie mit Ihrem Texteditor /etc/php/7.0/fpm/PHP.Ini. Dies ist eine riesige Datei. Auch hier ist Vim oder etwas mit einer Suchfunktion wahrscheinlich am besten.

Zuerst finden deaktivieren_funktionen und fügen Sie hinzu Phpinfo, System, Mail, Exec Bis zum Ende der Funktionszeichenfolge, die bereits vorhanden sind. Dann finden Datei_Uploads und setzen Sie es auf Aus. Als nächstes finden Sie sql.Sicherheitsmodus und wechseln Sie es An. Zuletzt finden Sie degly_url_fopen und setzen Sie es auf Aus. Fügen Sie vor dem Schließen der Datei eine weitere Zeile zum Ende hinzu.

Register_globals = off

Wenn das alles erledigt ist, sparen Sie und schließen Sie. Starten Sie den Server neu und es sollte bereit sein zu gehen.

# sudo systemctl starten Sie PHP7 neu.0-fpm # sudo systemctl neu starten nginx

Wohin als nächstes gehen

Der Ubuntu -Server sollte in der Lage sein, die meisten PHP -Websites auszuführen. Alle PHP -Dateien, die in der platziert sind /var/www/yourite wird vom Server ausgeführt. Es wird nach dem suchen Index.Php Datei zuerst und die Website kann dort das Formular abgeben. Natürlich gibt es noch viel mehr, um PHP und NGINX für Geschwindigkeit, Sicherheit und fast jede Sonderpase -Situation zu konfigurieren, aber jetzt haben Sie einen starken Ausgangspunkt.

Verwandte Linux -Tutorials:

  • Eine Einführung in Linux -Automatisierung, Tools und Techniken
  • Dinge zu installieren auf Ubuntu 20.04
  • Mastering -Bash -Skriptschleifen beherrschen
  • So upgraden Sie Ubuntu von 22 auf.04 bis 22.10
  • Ubuntu 20.04 WordPress mit Apache -Installation
  • Ubuntu 20.04 Leitfaden
  • Dinge zu tun nach der Installation Ubuntu 20.04 fokale Fossa Linux
  • Mint 20: Besser als Ubuntu und Microsoft Windows?
  • Wie oft müssen Sie Ihren Linux -Server neu starten??
  • So upgraden Sie Ubuntu auf 22 auf.04 LTS Jammy Quallen