Richten Sie NGINX, PHP-FPM und MariaDB unter Debian 8 ein

Dieses Handbuch zeigt Ihnen, wie Sie einen "alternativen" LAMP-Stack unter Debian 8 unter Verwendung von NGINX, PHP Fast Process Manager und MariaDB korrekt installieren und konfigurieren.

NGINX

NGINX ist ein "Reverse Proxy First, Webserver Second". Es ist eine beliebte und wachsende Alternative zu Apache und bietet in vielen Fällen mehr Flexibilität und bessere Leistung. In diesem Tutorial werden wir es als unseren Webserver verwenden.

Starten Sie Ihren bevorzugten SSH-Client und melden Sie sich bei Ihrem Server an. Für Windows-Benutzer ist "PuTTY" ein kostenloser und leichter SSH-Client. Linux- und Mac-Benutzer können das standardmäßig in ihrem Betriebssystem enthaltene Terminal verwenden. In diesem Tutorial wird davon ausgegangen, dass Sie als "Root" -Benutzer bei Ihrem Server angemeldet sind.

Stellen wir zunächst sicher, dass alles auf dem neuesten Stand ist. Geben Sie Folgendes ein, um nach Updates zu suchen und diese dann zu installieren.

apt-get update && apt-get upgrade

Wir werden unsere Konfigurationsdateien in vim bearbeiten. Vim ist nicht standardmäßig installiert, also installieren wir es!

apt-get install vim

Jetzt ist es Zeit, NGINX zu installieren. Wir möchten die neueste Version von NGINX aus dem offiziellen NGINX Debian-Repository installieren.

wget http://nginx.org/keys/nginx_signing.key
apt-key add nginx_signing.key
echo 'deb http://nginx.org/packages/debian/ jessie nginx' >> /etc/apt/sources.list
echo 'deb-src http://nginx.org/packages/debian/ jessie nginx' >> /etc/apt/sources.list
apt-get update && apt-get install nginx

Jetzt müssen wir die NGINX-Konfiguration etwas anpassen. Navigieren Sie zum Konfigurationsverzeichnis.

cd /etc/nginx

Eine kurze Vim-Lektion

Verwenden Sie die Pfeiltasten, um im Textdokument zu navigieren. Um Änderungen vorzunehmen, drücken Sie die Taste "Einfügen" auf Ihrer Tastatur. Wenn Ihre Tastatur keine Einfügetaste hat, drücken Sie die Taste "i". Im unteren Bereich von vim werden Sie feststellen, dass jetzt "INSERT" angezeigt wird. Im Einfügemodus können Sie über die Rücktaste löschen oder neue Zeichen durch Eingabe einfügen.

Lassen Sie uns unsere öffnen nginx.confund herumstöbern:

vi nginx.conf

Lassen Sie uns den Standardbenutzer ändern, die Anzahl der Arbeitsprozesse überprüfen und das Zugriffsprotokoll deaktivieren.

Die Anweisungen "user" und "worker_processes" befinden sich ganz oben. Probieren Sie die folgenden Werte aus:

Beachten Sie, dass Sie "worker_processes" auf die Anzahl der auf Ihrem Server verfügbaren CPU-Kerne festlegen möchten. In diesem Beispiel haben wir 1, was der NGINX-Standard ist.

user www-data;
worker_processes 1;

Wir möchten auch das Zugriffsprotokoll deaktivieren, um die E / A-Leistung zu verbessern. Navigieren Sie mit den Pfeiltasten nach unten, bis Sie "access_log" finden. Ändern Sie es wie folgt:

access_log off;

Zuletzt setzen wir "client_max_body_size" so, dass es einigen Änderungen entspricht, die später an PHP vorgenommen werden. Lassen Sie uns den Ärger sparen und es jetzt tun. Fügen Sie direkt unter "access_log" hinzu:

client_max_body_size 12m;

Wenn Sie mit der Bearbeitung fertig sind, drücken Sie "Esc" auf Ihrer Tastatur. Vim sagt nicht mehr "INSERT" am Ende der Datei.

Drücken Sie die folgende Tastenfolge, um unsere Änderungen zu speichern und vim zu beenden:

SHIFT :(colon)
wq
Press "Enter"

Das obige vim kung fu schreibt Ihre Änderungen auf die Festplatte und beendet vim und lässt Sie zurück in die Bash-Shell fallen.

Jetzt müssen wir eine ortsspezifische Konfiguration für unser Beispiel vornehmen! Wir werden auch die anderen Beispielkonfigurationen löschen. Versuche Folgendes:

cd conf.d
rm example_ssl.conf default.conf
vi my_site.conf

Wir werden eine kurze und einfache www.confVersion erstellen, die lose auf der Standard-NGINX-Konfiguration basiert, jedoch mit ein paar Änderungen. Drücken Sie Einfügen und Sie können das folgende Beispiel kopieren / einfügen.

Vergessen Sie nicht, die Direktive "root" so zu bearbeiten, dass sie auf das Stammverzeichnis Ihrer Website verweist, und "server_name", um Ihrer Domain zu entsprechen.

server {
    listen 80;

    root /path/to/your/website;
    index index.php index.html index.htm;

    server_name mydomainname.com www.mydomainname.com;

    location / {
            try_files $uri $uri/ /index.php;
    }

    location ~ \.php$ {
            try_files $uri =404;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include fastcgi_params;
            fastcgi_pass unix:/var/run/php5-fpm.sock;
    }
}

Jetzt sind wir mit dem NGINX-Konfigurationsabschnitt dieses Tutorials fertig. Wir werden NGINX gleich nach der Installation von PHP neu starten.

PHP-FPM

PHP-FPM ist der PHP Fast Process Manager. Dies ist bei Verwendung von NGINX erforderlich, da NGINX im Gegensatz zu Apache PHP nicht als Modul ausführt. Dies wurde durchgeführt, um den Speicherbedarf von NGINX zu verringern. Erinnern Sie sich an diesen Teil, in dem NGINX in erster Linie ein Reverse-Proxy ist? Hier kommt das ins Spiel; An NGINX gesendete PHP-Anforderungen werden an PHP-FPM weitergeleitet, um das schwere Heben durchzuführen.

Lassen Sie uns PHP-FPM installieren.

apt-get install php5-fpm php5-mysqlnd

Beachten Sie, dass Sie je nach den Anforderungen Ihrer PHP-Skripte möglicherweise andere PHP-Module installieren müssen, die nicht standardmäßig enthalten sind. Beliebt sind php5-gdund php5-mcrypt. Sie können diese mit dem folgenden Befehl installieren.

apt-get install php5-module_name_here

Nachdem wir PHP-FPM installiert haben, möchten wir einige schnelle Änderungen vornehmen, um die Sicherheit und Funktionalität zu verbessern.

cd /etc/php5/fpm
vi php.ini

Zeit für eine weitere kurze Vim-Lektion! Die php.iniDatei ist absolut riesig. Die Suche nach einigen Schlüsselwerten dauert den ganzen Tag. Da wir also wissen, wonach wir suchen, werden wir suchen. Geben Sie Folgendes ein:

/upload_max_filesize

Dies ist standardmäßig auf 2 Megabyte eingestellt. Wenn Sie Benutzern erlauben möchten, Dateien mit mehr als 2 Megabyte in Ihre PHP-Anwendungen hochzuladen, müssen Sie dies ändern. 10M ist momentan wahrscheinlich eine sichere Wette, aber auch höhere Werte sind akzeptabel. Diese Einstellung variiert je nach Konfiguration. Zum Zwecke des Tutorials:

upload_max_filesize = 10M

Noch eine krasse Sicherheitslücke. Scrollen Sie etwas weiter nach unten oder suchen Sie. Wir müssen "allow_url_fopen" auf "Off" setzen. Dies verhindert, dass PHP PHP-Dateien ausführt, die FERN gehostet werden, auch bekannt als RFI (Remote File Inclusion). Viele Server werden auf diese Weise gehackt.

allow_url_fopen = Off

Und weil wir "upload_max_filesize" geändert haben, müssen wir jetzt "post_max_size" ändern. Dieser Wert sollte etwas größer sein als "upload_max_filesize", da wir den Overhead berücksichtigen müssen, der mit unseren von PHP verarbeiteten Anforderungen verbunden ist.

Lassen Sie uns noch einmal mit "/ post_max_size" suchen.

post_max_size = 12M

Beachten Sie, dass Sie zu Ihrer NGINX-Konfiguration zurückkehren und "client_max_body_size" bearbeiten müssen, wenn Sie größere Werte als diese Beispiele für Ihre PHP-Dateigrößen verwenden möchten.

Das war's erstmal. Stellen Sie sicher, dass Sie sich nicht im Bearbeitungsmodus befinden, indem Sie "Esc" drücken. Speichern und beenden Sie vim.

SHIFT :(colon)
wq
Press 'Enter'

Das PHP-FPM-Setup ist abgeschlossen.

MariaDB

Selbst in einer Welt, die sich ständig in Richtung NoSQL oder MongoDB bewegt, fällt es einigen von uns immer noch leichter, einfach bei MySQL zu bleiben. Dies gilt insbesondere für viele Webanwendungen. Glücklicherweise gibt es jetzt eine Reihe von "Drop-In" -Ersatzteilen für Oracle MySQL. Debian 8 enthält jetzt die beliebte MariaDB. MariaDB ist eine Abzweigung von Oracle MySQL basierend auf Version 5.5. MariaDB nennt diese MariaDB in jeder Hinsicht MariaDB 10. Sie wird als VOLLSTÄNDIGER Ersatz für Oracle MySQL angesehen. Betrachten Sie es als MySQL im Herzen, ohne das Oracle-Branding und einige neue Funktionen.

apt-get install mariadb-server

WICHTIG: Sie müssen unbedingt ein sicheres Root-Passwort für MariaDB auswählen. Speichern Sie es an einem sicheren Ort. Sie müssen es während der MariaDB-Installation zweimal eingeben.

Lassen Sie uns die MariaDB-Konfiguration leicht anpassen. Wir werden das Abhören von MariaDB über die Netzwerkschnittstelle deaktivieren. Stattdessen bleiben wir wie bei PHP-FPM nur bei einem UNIX-Socket. Die meisten PHP-Anwendungen sollten die Verbindung zum Datenbankserver über einen UNIX-Socket anstelle der lokalen Loopback-Schnittstelle unterstützen.

cd /etc/mysql
vi my.cnf

Suchen Sie nach "bind-address = 127.0.0.1". Kommentieren Sie diese Zeile aus. Oben oder unten wird "Skip-Networking" hinzugefügt.

#bind-address = 127.0.0.1
skip-networking

Wir sind fertig mit MariaDB! Möglicherweise möchten Sie Ihre MariaDB-Konfiguration anpassen, je nachdem, ob Sie hauptsächlich die MyISAM- oder InnoDB-Speicher-Engines verwenden, aber auch, wie viele CPU-Kerne und RAM für Ihren Server verfügbar sind. Die Standardeinstellungen werden uns in der Zwischenzeit zum Laufen bringen.

Lassen Sie uns jeden der Dienste neu starten, für die in diesem Lernprogramm Konfigurationsdateien geändert wurden.

systemctl restart nginx.service
systemctl restart php5-fpm.service
systemctl restart mysql.service

Das war's - wir sind alle fertig. Zu diesem Zeitpunkt ist ein voll funktionsfähiger LNMP-Server (LEMP) online!

Dieser Leitfaden sollte als allgemeine Faustregel für den Einstieg in die oben genannten Dienste mit minimalem Optimierungsaufwand dienen. Weitere Informationen finden Sie in der Dokumentation zu den oben genannten Paketen. Während dieses Beispiel-Setup "out of the box" gut funktionieren sollte, können und müssen Anpassungen vorgenommen werden, um Ihren Anforderungen besser zu entsprechen.

Empfohlene Forschungsbereiche:

  • Verwenden und Ändern der Cache-Steuerung von NGINX.
  • PHP-FPM "statisch", "dynamisch" oder "ondemand" Task-Manager-Einstellungen.
  • MariaDB-Leistungsoptimierung, um Ihren Datenbankserver optimal zu nutzen.


Leave a Comment

Richten Sie mit OpenVPN Ihr eigenes privates Netzwerk ein

Richten Sie mit OpenVPN Ihr eigenes privates Netzwerk ein

Vultr bietet Ihnen eine hervorragende Konnektivität für private Netzwerke für Server, die am selben Standort ausgeführt werden. Aber manchmal möchten Sie zwei Server in verschiedenen Ländern

Installieren und Verwenden von Yunohost unter Debian 7 x64

Installieren und Verwenden von Yunohost unter Debian 7 x64

Dieses Tutorial führt Sie durch die Installation des Yunohost Complete Server-Kontrollfelds unter Debian. Folgen Sie einfach dem Tutorial und Ihr Server wird in Betrieb sein

Chroot auf Debian einrichten

Chroot auf Debian einrichten

In diesem Artikel erfahren Sie, wie Sie unter Debian ein Chroot-Gefängnis einrichten. Ich gehe davon aus, dass Sie Debian 7.x verwenden. Wenn Sie Debian 6 oder 8 ausführen, funktioniert dies möglicherweise, bu

So installieren Sie PiVPN unter Debian

So installieren Sie PiVPN unter Debian

Einführung Eine einfache Möglichkeit, einen VPN-Server unter Debian einzurichten, ist PiVPN. PiVPN ist ein Installationsprogramm und ein Wrapper für OpenVPN. Es werden einfache Befehle für Sie erstellt

Richten Sie Cacti auf Debian Jessie ein

Richten Sie Cacti auf Debian Jessie ein

Einführung Cacti ist ein Open-Source-Überwachungs- und Grafiktool, das vollständig auf RRD-Daten basiert. Mit Cacti können Sie nahezu jede Art von Gerät überwachen

Einrichten von Teamspeak 3 auf Debian Wheezy

Einrichten von Teamspeak 3 auf Debian Wheezy

Dieser Artikel zeigt Ihnen, wie Sie einen Teamspeak 3-Server unter Debian Wheezy ausführen. Bevor Sie damit beginnen können, sollten Sie einige Vorbereitungen für Ihr VPS treffen. ich

Verwenden von MySQL Views unter Debian 7

Verwenden von MySQL Views unter Debian 7

Einführung MySQL verfügt über eine großartige Funktion, die als Ansichten bezeichnet wird. Ansichten sind gespeicherte Abfragen. Stellen Sie sich diese als Alias ​​für eine ansonsten lange Abfrage vor. In diesem Handbuch

So installieren Sie ModSecurity für Nginx unter CentOS 7, Debian 8 und Ubuntu 16.04

So installieren Sie ModSecurity für Nginx unter CentOS 7, Debian 8 und Ubuntu 16.04

ModSecurity ist ein WAF-Modul (Open Source Web Application Firewall), mit dem Apache, Nginx und IIS vor verschiedenen Cyberangriffen geschützt werden können

Installieren Sie Hiawatha Web Server mit PHP-FPM und MySQL unter Debian

Installieren Sie Hiawatha Web Server mit PHP-FPM und MySQL unter Debian

Hiawatha ist ein Webserver, der Einfachheit, Benutzerfreundlichkeit und Sicherheit im Auge hat. Es ist die perfekte Lösung für kleinere Server, ältere Hardware oder Embedde

Installieren Sie Lynis auf Debian 8

Installieren Sie Lynis auf Debian 8

Einführung Lynis ist ein kostenloses Open-Source-Tool zur Systemprüfung, das von vielen Systemadministratoren verwendet wird, um die Integrität zu überprüfen und ihre Systeme zu härten. ich

Überwachen Sie den Debian-Serverstatus mit Munin

Überwachen Sie den Debian-Serverstatus mit Munin

Munin ist ein Überwachungstool zur Überwachung von Prozessen und Ressourcen in Ihrer Maschine und präsentiert die Informationen in Diagrammen über eine Weboberfläche. Verwenden Sie die folgenden

So installieren Sie das NodeBB-Forum unter Debian 9

So installieren Sie das NodeBB-Forum unter Debian 9

Verwenden Sie ein anderes System? NodeBB ist ein Node.js-basiertes Forum. Es verwendet Web-Sockets für sofortige Interaktionen und Echtzeitbenachrichtigungen. NodeBB-Quellcode i

So installieren Sie BigTree CMS auf einem Debian 9 LAMP VPS

So installieren Sie BigTree CMS auf einem Debian 9 LAMP VPS

Verwenden Sie ein anderes System? BigTree CMS 4.2 ist ein schnelles und leichtes, kostenloses und Open-Source-Content-Management-System (CMS) für Unternehmen mit umfangreichen Funktionen

So installieren Sie Koel unter Debian 9

So installieren Sie Koel unter Debian 9

Verwenden Sie ein anderes System? Koel ist eine einfache webbasierte persönliche Audio-Streaming-App, die auf der Clientseite in Vue und auf der Serverseite in Laravel geschrieben wurde. Koe

Sticky Session mit Docker Swarm (CE) auf Debian 9

Sticky Session mit Docker Swarm (CE) auf Debian 9

Verwenden Sie ein anderes System? Einführung Docker Swarm verwandelt Ihre einzelnen Server in einen Computercluster. Erleichterung der Skalierung, Hochverfügbarkeit an

So installieren Sie Paste 2.1 auf einem Debian 9 LAMP VPS

So installieren Sie Paste 2.1 auf einem Debian 9 LAMP VPS

Verwenden Sie ein anderes System? Paste 2.1 ist eine einfache und flexible, kostenlose und Open-Source-Pastebin-Anwendung zum Speichern von Code, Text und mehr. Es war ursprünglich

Erzwinge Apt-Get auf IPv4 oder IPv6 unter Ubuntu oder Debian

Erzwinge Apt-Get auf IPv4 oder IPv6 unter Ubuntu oder Debian

Hier bei Vultr haben wir die Option, IPv6 auf allen bereitstellbaren VPS zu aktivieren. Aber damit bevorzugen einige Programme und Befehle den einen oder anderen Witz

So installieren Sie Automad CMS unter Debian 9

So installieren Sie Automad CMS unter Debian 9

Verwenden Sie ein anderes System? Einführung Automad ist ein Open Source File-basiertes Content Management System (CMS) und eine in PHP geschriebene Template Engine. Automa

So installieren Sie Apache Cassandra 3.11.x unter Debian 9

So installieren Sie Apache Cassandra 3.11.x unter Debian 9

Verwenden Sie ein anderes System? Apache Cassandra ist ein kostenloses und Open-Source-NoSQL-Datenbankverwaltungssystem, das Skalierbarkeit bietet

So konfigurieren Sie Snort unter Debian

So konfigurieren Sie Snort unter Debian

Snort ist ein kostenloses Network Intrusion Detection System (IDS). In weniger offiziellen Begriffen können Sie Ihr Netzwerk in Echtzeit auf verdächtige Aktivitäten überwachen

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist

ReactOS: Ist das die Zukunft von Windows?

ReactOS: Ist das die Zukunft von Windows?

ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.