So installieren Sie Nginx, Mariadb und PHP (FEMP) Stack auf FreeBSD

So installieren Sie Nginx, Mariadb und PHP (FEMP) Stack auf FreeBSD

In diesem Tutorial wird Sie über die Installation und Konfiguration von FBEMP in FreeBSD geleitet 11.X neueste Erscheinung. FBEMP ist ein Akronym, das die folgende Softwaresammlung beschreibt:

FreeBSD 11.1 UNIX-ähnliche Verteilung, NGINX-Webserver, MariADB Relational Database Management System (eine Community-Gabel von MySQL) und PHP Dynamic Programming Language, die auf der Server-Seite ausgeführt wird.

Anforderungen

  1. Installation von FreeBSD 11.X
  2. 10 Dinge nach der FreeBSD -Installation zu tun

Schritt 1: Installieren Sie den NGINX -Webserver auf FreeBSD

1. Der erste Service, den wir für unsere installieren werden FBEMP stapeln FreeBSD ist der Webserver, dargestellt von Nginx Software.

Nginx Webserver verfügt über mehr vorgeführte Pakete in Freebsd 11.x Ports. Um eine Liste von zu erhalten Nginx Binärdateien von Häfen Repositories, geben Sie die folgenden Befehle in Ihrem Server -Terminal aus.

# ls/usr/ports/www/| grep nginx # pkg suche -o nginx 
Finden Sie Nginx -Pakete

2. In dieser speziellen Konfiguration installieren wir die Hauptpaketversion von Nginx durch Ausgabe des folgenden Befehls. Der pkg Die Packungsverwaltung fragt Sie, ob Sie mit der Installation des Nginx -Pakets fortfahren möchten. Antwort mit Ja (y in Befehlszeile), um den Installationsprozess zu starten.

# PKG Installieren Sie Nginx 
Installieren Sie Nginx auf FreeBSD

3. Führen Sie die folgenden Befehle aus, um das Dämon-Systemweit zu aktivieren und den Dienst in Ihrem System zu starten, nachdem das Nginx-Webserverpaket in Ihrem System installiert war.

# sysrc nginx_enable = "yes" # service nginx starten 
Starten Sie Nginx auf FreeBSD und aktivieren Sie

4. Als nächstes verwenden Sie die Sockstat Befehl, überprüfen Sie die NGINX -Service -Netzwerk -Sockets 80/TCP Port, durch Ausgabe des folgenden Befehls. Die Ausgabe des Befehls von Sockstat wird über das GREP -Dienstprogramm geleitet, um die zurückgegebenen Ergebnisse nur auf die NGINX -String zu reduzieren.

# Sockstat -4 | grep nginx 

5. Öffnen Sie schließlich einen Browser auf einem Desktop -Computer in Ihrem Netzwerk und besuchen Sie die NGINX -Standard -Webseite über das HTTP -Protokoll. Schreiben Sie die Fqdn Ihres Computers oder Ihres Domänennamens oder der IP -Adresse Ihres Servers in der URL des Browsers, die zum Anfordern von NGINX -Webserver -Standard -Webseite eingereicht wurde. Die Nachricht "Willkommen bei nginx!”Sollte in Ihrem Browser angezeigt werden, wie im folgenden Screenshot dargestellt.

http: // Ihre Domain.com http: // your_server_ip http: // your_maachine_fqdn 
Überprüfen Sie Nginx auf FreeBSD

6. Das Standard -WOBOT -Verzeichnis für NGINX -Webinhalte in befindet sich in /usr/local/www/nginx/ Absolutes Systempfad. In diesem Ort sollten Sie Webinhaltdateien erstellen, kopieren oder installieren, z. B .html oder .Php Dateien für Ihre Website.

Um diesen Speicherort zu ändern, bearbeiten Sie die Hauptkonfigurationsdatei der NGINX -Hauptkonfiguration und ändern Sie die Root -Direktive, um Ihren neuen Webroot -Pfad widerzuspiegeln.

# nano/usr/local/etc/nginx/nginx.Conf 

Suchen Sie hier die folgende Zeile, um Ihren neuen Webroot -Pfad widerzuspiegeln:

root/path/to/new/webroot; 

Schritt 2: Installieren Sie PHP auf FreeBSD

7. nicht wie Apache http Server, Nginx hat nicht die Möglichkeit, PHP -Code nativ zu verarbeiten. Im Gegenzug über gibt der Nginx Web Server PHP -Anforderungen an einen PHP -Interpreter weiter, wie z PHP-FPM FASTCGI Daemon, der den Code inspiziert und ausführt. Der daraus resultierende Code wird dann an Nginx zurückgegeben, wodurch der Code wieder in das angeforderte HTML.

Freebsd 11.X Ports -Repositories bieten mehrere binäre Versionen für die PHP -Programmiersprache, wie z Php 5.6, Php 7.0 Und Php 7.1 Veröffentlichungen. Um alle verfügbaren vorkompilierten PHP Freebsd 11.X, Führen Sie die folgenden Befehle aus .

# PKG Search -O PHP # ls/usr/ports/Lang/| Grep Php 

8. Sie können wählen, ob Sie die Version von PHP installieren möchten, die Sie für die Webanwendung am besten für die Webanwendung finden, die Sie in Ihrem System ausführen. In dieser Anleitung installieren wir jedoch die neueste Version von PHP.

Installieren Php 7.1 Release und einige PHP -wichtige Module, die für verschiedene Webanwendungen erforderlich sind, führen Sie den folgenden Befehl aus.

# PKG Installieren Sie PHP71 PHP71-MYSQLI PHP71-MCRYPT PHP71-ZLIB PHP71-GD PHP71-JSON MOD_PHP71 PHP71-MBRING PHP71-CURL 

9. Nachdem Sie PHP -Pakete in Ihrem System installiert haben, öffnen Sie PHP-FPM Konfigurationsdatei für Nginx und passen Sie die Benutzer- und Gruppenwerte an den Wert des Nginx -Laufzeitbenutzers an, das heißt www. Machen Sie zunächst eine Sicherung der Datei mit dem folgenden Befehl.

# cp/usr/local/etc/php-fpm.D/www.conf ,.Backup 

Öffnen Sie dann die Datei und aktualisieren Sie die folgenden Zeilen, die in der folgenden Stichprobe angezeigt werden.

user = www Group = www 
Konfigurieren Sie PHP-FPM auf FreeBSD

10. Erstellen Sie außerdem eine PHP -Konfigurationsdatei, die für die Produktion verwendet wird, indem Sie den folgenden Befehl ausgeben. In dieser Datei können Sie benutzerdefinierte Änderungen vornehmen, die zur Laufzeit auf PHP -Interpreter angewendet werden.

# cp/usr/local/etc/php.In-Produktion/USR/Lokal/etc/php.Ini 

Zum Beispiel ändern Sie die Datum.Zeitzone Einstellung für PHP -Interpreter, um den physischen Standort Ihres Maschinens wie im folgenden Beispiel zu aktualisieren. Die PHP -Zeitzone -Liste finden Sie hier: http: // PHP.Netz/Handbuch/EN/Timezones.Php.

# vi/usr/local/etc/php.Ini 

Fügen Sie die folgende Zeitzone hinzu (stellen Sie TimeZone nach Ihrem Land fest).

Datum.Zeitzone = Europa/London 

Sie können auch andere PHP -Variablen anpassen, z. B. die maximale Dateigröße der hochgeladenen Datei, die durch Ändern der folgenden Werte erhöht werden können:

Upload_MAX_FILESIZE = 10M post_max_size = 10m 

11. Danach haben Sie die benutzerdefinierten Einstellungen für PHP vorgenommen, aktivieren und beginnen PHP-FPM Daemon, um die neuen Konfigurationen durch Ausgabe der folgenden Befehle anzuwenden.

# sysrc php_fpm_enable = yes # service php-fpm start 
Starten Sie und aktivieren Sie PHP-FPM auf FreeBSD

12. Standardmäßig, PHP-FPM Daemon in FreeBSD bindet in einem lokalen Netzwerksteck am Port 9000/TCP. Zu zeigen PHP-FPM Netzwerkstücken führen den folgenden Befehl aus.

# Sockstat -4 -6 | Grep Php-FPM 

13. Damit der Nginx -Webserver die PHP -Skripte an übergeben können Fastcgi Gateway -Server, der sich anhört 127.0.0.1: 9000 Socket, öffnen Sie die Hauptkonfigurationsdatei der NGINX -Hauptkonfiguration und fügen Sie den folgenden Codeblock hinzu, wie im folgenden Beispiel dargestellt.

# vi/usr/local/etc/nginx/nginx.Conf 

FastCGI -Code -Block für Nginx:

 Ort ~ \.php $ root/usr/local/www/nginx; FASTCGI_PASS 127.0.0.1: 9000; FASTCGI_INDEX INDEX.PHP; fastcgi_param script_filename $ request_filename; FASTCGI_PARAMS einschließen;  
Konfigurieren Sie FastCGI für Nginx auf FreeBSD

14. Um die aktuellen PHP -Informationen für Ihren Server anzuzeigen, erstellen Sie eine die Info.Php Datei in Nginx WOBOT -Pfad durch Ausgabe des folgenden Befehls.

# echo "" | tee/usr/local/www/nginx/Info.Php 

15. Testen und starten Sie den Nginx -Daemon dann, um das anzuwenden PHP FASTCGI Einstellungen und besuchen Sie die die Info.Php Seite in einem Browser.

# Nginx -t # Testen Sie die Nginx -Konfigurationsdatei für Syntaxfehler # Service Nginx Neustart 

Ersetzen Sie die IP -Adresse oder den Domänennamen in den folgenden Links entsprechend. Die Seite der PHP -Info sollte Informationen angezeigt, wie im folgenden Screenshot dargestellt.

http: // Ihre Domain.com/info.PHP http: // server_ip-or-fqdn/info.Php 
Überprüfen Sie die PHP -Informationen in FreeBSD

Schritt 3: Installieren Sie Mariadb auf FreeBSD

16. Die letzte Komponente fehlt in Ihrem Femp Stapel in der Datenbank. Mariadb/Mysql ist eine der am häufigsten zugehörigen Open -Source -RDBMS.

Eigentlich, Mariadb/Mysql ist eine der am häufigsten verwendeten relationalen Datenbanken der Welt. Durchsuchen durch FreeBSD -Ports, Sie können mehrere Veröffentlichungen finden Mariadb/Mysql.

In diesem Handbuch werden wir installieren Mariadb Datenbank, eine Community -Gabel von Mysql Datenbank. Um nach verfügbaren Versionen von zu suchen Mariadb, Geben Sie die folgenden Befehle im Terminal aus.

# ls -al/usr/ports/Datenbanken/| Grep Mariadb # PKG -Suche Mariadb 
Finden Sie Mariadb -Pakete

17. So installieren Sie die neueste Version von MariADB Database Server. Sie sollten auch das von PHP -Skripten verwendete PHP Relational Database -Treibermodul für eine Verbindung zu MySQL installieren.

# PKG MARIADB102-SERVER PHP71-MYSQLI Installieren 

18. Aktivieren Sie nach der Installation der Datenbank MySQL Daemon und starten Sie den Datenbankdienst, indem Sie die folgenden Befehle ausführen.

# 

19. Stellen Sie außerdem sicher, dass Sie neu starten PHP-FPM Daemon, um die Erweiterung der MySQL -Treiber zu laden.

# Service PHP-FPM Neustart
20. Im nächsten Schritt sicher Mariadb Datenbank durch Start mysql_secure_installation Skript. Verwenden Sie das folgende Beispiel des Installationsskripts, um die Fragen zu beantworten. Grundsätzlich sagen Sie ja (y) Für alle gestellten Fragen, um die Datenbank zu sichern und ein starkes Kennwort für den MySQL Root -Benutzer einzugeben.
#/usr/local/bin/mysql_secure_installation 
MySQL Secure Installationsskriptausgabe
Hinweis: Für alle Mariadb -Server in der Produktion werden alle Teile dieses Skripts ausgeführt! Bitte lesen Sie jeden Schritt sorgfältig durch! Um sich bei Mariadb anzumelden, um es sich zu sichern, benötigen wir das aktuelle Kennwort für den Stammbenutzer. Wenn Sie gerade MariADB installiert haben und das Stammkennwort noch nicht festgelegt haben, ist das Passwort leer, sodass Sie einfach hier die Eingabetaste drücken sollten. Geben Sie das aktuelle Kennwort für das Root ein (für keine eingeben): OK, erfolgreich verwendetes Passwort, weitermachen ... Setzen Sie das Stammkennwort, stellt sicher. Stellen Sie das Root -Passwort fest? [Y/n] y Neues Passwort: Neues Passwort erneut eingeben: Passwort erfolgreich aktualisiert! Lade -Privilegentabellen neu ... Erfolg! Standardmäßig hat eine MariADB. Dies dient nur zum Testen und um die Installation etwas glatter zu machen. Sie sollten sie entfernen, bevor Sie in eine Produktionsumgebung einsteigen. Entfernen Sie anonyme Benutzer? [Y/n] y… Erfolg! Normalerweise sollte Wurzel nur von 'Localhost' herstellen dürfen dürfen. Dies stellt sicher, dass jemand das Stammkennwort aus dem Netzwerk nicht erraten kann. Root Anmeldung aus der Ferne nicht zulassen? [Y/n] y… Erfolg! Standardmäßig wird Mariadb mit einer Datenbank mit dem Namen "Test" geliefert, auf die jeder zugreifen kann. Dies ist auch nur zum Testen gedacht und sollte entfernt werden, bevor sie in eine Produktionsumgebung einsteigen. Entfernen Sie die Testdatenbank und zugreifen Sie darauf? [Y/n] y - Testdatenbank fallen lassen… Erfolg! - Entfernen von Berechtigungen in der Testdatenbank… Erfolg! Das Nachladen der Berechtigungstische wird sicherstellen, dass alle bisher vorgenommenen Änderungen sofort wirksam werden. Laden Sie jetzt Privilege -Tabellen neu laden? [Y/n] y… Erfolg! Aufräumen ... alles fertig! Wenn Sie alle oben genannten Schritte ausgeführt haben, sollte Ihre Mariadb -Installation jetzt sicher sein. Danke, dass du Mariadb benutzt hast! 

21. Führen Sie den folgenden Befehl unten aus, um die MariADB -Datenbankverbindung aus der Konsole zu testen.

# MySQL -U root -p -e "Status wie 'Verbindungen' anzeigen" 

22. Um Mariadb weiter zu sichern, was standardmäßig auf eingehende Netzwerkverbindungen aufzuhören wird 0.0.0.0: 3306/tcp Socket, geben Sie den folgenden Befehl aus, um den Dienst zum Binden zu zwingen Loopback Schnittstellen. Starten Sie anschließend den MySQL -Service neu, um die neue Konfiguration anzuwenden.

# sysrc mysql_args = "-Bind-Address = 127.0.0.1 " # Service MySQL-Server Neustart 
Binden Sie Mariadb an die Loopback -Adresse

Überprüfen Sie, ob die Lokalhost Die Bindung wurde erfolgreich angewendet, indem NetStat -Befehl ausgeführt wurde, wie im folgenden Beispiel gezeigt.

# netstat -an -p tcp 

Das ist alles! Sie haben den NGINX-Webserver, die MariADB-Relational-Datenbank und die PHP Server-Side-Programmiersprache in FreeBSD erfolgreich installiert. Sie können jetzt dynamische Webseiten erstellen, um Ihren Besuchern Webinhalte zu bedienen.