So installieren Sie Laravel PHP -Framework mit Nginx auf CentOS 8
- 1512
- 28
- Tamina Liebach
Laravel ist ein Open-Source, bekanntes und modernes PHP-basierter Web-Rahmen mit ausdrucksstarker, eleganter und leicht verständlicher Syntax, mit dem es einfach ist, große, robuste Webanwendungen zu erstellen.
Zu den wichtigsten Funktionen gehören eine einfache, schnelle Routing-Engine, leistungsstarke Abhängigkeitsinjektionsbehälter, mehrere Back-Ends für Sitzungs- und Cache-Speicher, ausdrucksstarke und intuitive Datenbank-ORM (Objektrelationszuordnung), robuste Hintergrundjob-Verarbeitung und Ereignisereignisübertragung, Rundfunk.
Außerdem werden Tools wie verwendet, z Komponist - Ein PHP -Paket -Manager für die Verwaltung von Abhängigkeiten und Handwerker - Eine Befehlslinienschnittstelle zum Erstellen und Verwalten von Webanwendungen.
In diesem Artikel erfahren Sie, wie Sie die neueste Version der installieren Laravel Php Web Framework auf Centos 8 Linux -Verteilung.
Serveranforderungen
Der Laravel Framework hat die folgenden Anforderungen:
- Php> = 7.2.5 Mit diesen PHP -Erweiterungen OpenSSL, PDO, Mbstring, Tokenizer, XML, CTYPE und JSON.
- Komponist - Zur Installation und Verwaltung von Abhängigkeiten.
Schritt 1: Installieren von Lemp Stack in CentOS 8
1. Aktualisieren Sie zum Starten System -Softwarepakete und installieren Sie Lemp Stapel (Linux, Nginx, Mariadb / Mysql, Und Php) Verwenden Sie die folgenden DNF -Befehle.
# DNF-Update # DNF Installation NGINX PHP-F-FPM PHP-COMMON PHP-XML PHP-MBRING PHP-JSON PHP-ZIP Mariadb-Server PHP-MYSQLND
2. Wenn das Lemp Die Installation ist abgeschlossen. Sie müssen die Start haben PHP-PFM, Nginx Und Mariadb Dienste verwenden die folgenden SystemCTL -Befehle.
# SystemCTL Start PHP-FPM nginx mariadb # systemctl aktivieren PHP-FPM nginx mariadb # systemctl Status PHP-FPM nginx mariadb
3. Als nächstes müssen Sie die sichern und verhärten Mariadb Datenbank -Engine mithilfe des Sicherheitsskripts wie gezeigt.
# Mysql_secure_installation
Beantworten Sie die folgenden Fragen, um die Serverinstallation zu sichern.
Geben Sie das aktuelle Passwort für Root ein (für keine eingeben):Eingeben
Stellen Sie das Root -Passwort fest? [Y/n]y
#Neues Root -Passwort anonyme Benutzer entfernen? [Y/n]y
Root Anmeldung aus der Ferne nicht zulassen? [Y/n]y
Entfernen Sie die Testdatenbank und zugreifen Sie darauf? [Y/n]y
Laden Sie jetzt Privilege -Tabellen neu laden? [Y/n]y
4. Wenn Sie das haben Firewall Der Dienst läuft, Sie müssen die öffnen Http Und Https Service in der Firewall, um Clientanfragen auf dem NGINX -Webserver zu aktivieren.
# Firewall-cmd --zone = public --permanent --add-service = http # Firewall-cmd --zone = public --permanent --add-service = https # firewall-cmd--Reload
5. Schließlich können Sie bestätigen, dass Ihre Lemp Stack wird mit einem Browser an der IP -Adresse Ihres Systems ausgeführt.
http: // server-ipÜberprüfen Sie die Nginx -Webseite
Schritt 2: Konfigurieren und Sicherung von PHP-FPM und NGINX
6. Anfragen von der zu bearbeiten Nginx Webserver, PHP-FPM Kann auf einem UNIX -Socket oder einer TCP -Socket hören, und dies wird durch die definiert Hören Parameter in der /etc/php-fpm.D/www.Conf Konfigurationsdatei.
# vi /etc /php-fpm.D/www.Conf
Standardmäßig ist es konfiguriert an Hören Auf einer UNIX -Steckdose, wie im folgenden Screenshot gezeigt. Der Wert hier wird später in der Nginx -Server -Blockdatei angegeben.
Legen Sie PHP-FPM Hören Sie Socket ein7. Wenn Sie einen UNIX -Socket verwenden, sollten Sie auch den richtigen Eigentum und die richtigen Berechtigungen festlegen, wie im Screenshot gezeigt. Überzeugen Sie die folgenden Parameter und setzen Sie deren Werte auf Benutzer und Gruppe, um dem Benutzer und der Gruppe überein Nginx läuft als.
Hören.Besitzer = nginx hören.Gruppe = nginx hören.Modus = 066Setzen Sie Hören Sie Socket Besitz auf nginx
8. Setzen Sie als nächstes auch die systemweite Zeitzone in der /etc/php.Ini Konfigurationsdatei.
# vi /etc /php.Ini
Suchen Sie nach der Linie ";Datum.Zeitzone"
und wenden Sie sich an und setzen Sie seinen Wert wie im Screenshot gezeigt (verwenden Sie Werte, die für Ihre Region/Ihr Kontinent und Ihr Land gelten).
Datum.Zeitzone = Afrika/KampalaStellen Sie Zeitzone in PHP ein
9. Das Risiko von mindern Nginx Übergeben von Anfragen von böswilligen Benutzern, die andere Erweiterungen verwenden, um PHP-Code auf PHP-FPM auszuführen, den folgenden Parameter zu überzeugen und seinen Wert auf einen Wert zu setzen 0
.
CGI.fix_pathinfo = 1Sichern Sie PHP und Nginx
10. In Bezug auf den vorherigen Punkt auch den folgenden Parameter in der /etc/php-fpm.D/www.Conf Datei. Lesen Sie den Kommentar, um weitere Erklärungen zu erhalten.
Sicherheit.limit_extensions = .Php .Php3 .Php4 .Php5 .Php7Begrenzen Sie PHP -Erweiterungsausführungen
Schritt 3: Installieren von Komponisten und Laravel PHP -Framework
11. Als nächstes installieren Sie die Komponist Paket durch Ausführen der folgenden Befehle. Der erste Befehl lädt den Installateur herunter und führt ihn dann mit PHP aus.
# curl -SS https: // getComposer.Org/Installer | PHP # MV -Komponist.PHAR/usr/local/bin/Composer # chmod +x/usr/local/bin/ComposerInstallieren Sie den Komponisten in CentOS 8
12. Nun das Komponist wird installiert, um Laravel -Dateien und Abhängigkeiten wie folgt zu installieren. Ersetzen meine Seite.com Mit dem Namen des Verzeichnisses, in dem die Laravel -Dateien gespeichert werden /var/www/html/mySite.com.
# CD/var/www/html/ # Composer erstellen-projekt-Prefer-Dist Laravel/Laravel MySite.comInstallieren Sie Laravel in CentOS 8
Wenn während des Prozesses alles gut geht, sollte die Anwendung erfolgreich installiert werden und ein Schlüssel erzeugt werden, wie im folgenden Screenshot gezeigt.
Laravel -Installation vollständig13. Während des Installationsprozesses die .env
Die Umgebungsdatei wurde erstellt und die erforderliche Anwendung wurde ebenfalls generiert, sodass Sie sie nicht manuell erstellen müssen wie zuvor. Um dies zu bestätigen, führen Sie eine lange Auflistung des Laravel Root -Verzeichnisses mit dem Befehl LS aus.
# ls -la mysite.com/Listen Sie Laravel -Dateien auf
14. Als Nächst Lagerung und das Bootstrap/Cache Verzeichnisse, die vom Nginx -Webserver beschreibend sein sollen.
# Chown -r: nginx/var/www/html/mySite.com/storate/ # chown -r: nginx/var/www/html/mySite.com/bootstrap/cache/ # chmod -r 0777/var/www/html/mySite.com/storate/ # chmod -r 0775/var/www/html/mySite.com/bootstrap/cache/
15. Wenn Selinux Auf Ihrem Server aktiviert, sollten Sie auch den Sicherheitskontext der aktualisierten Lagerung Und Bootstrap/Cache Verzeichnisse.
# semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/mySite.com/storage (/.*)?' # semanage fcontext -a -t httpd_sys_rw_content_t'/var/www/html/mySite.com/bootstrap/cache (/.*)?' # restorecon -rv'/var/www/html/mySite.com '
Schritt 4: Konfigurieren Sie den Nginx -Server -Block für Laravel
16. Für Nginx Um Ihre Website oder Anwendung zu bedienen, müssen Sie in a einen Serverblock dafür erstellen .Conf
Datei unter /etc/nginx/conf.D/ Verzeichnis wie gezeigt.
# vi/etc/nginx/conf.D/MySite.com.Conf
Kopieren Sie die folgende Konfiguration in die Datei. Beachten Sie die Wurzel und fastcgi_pass Parameter.
Server Listen 80; server_name mysit.com; root/var/www/html/mySite.com/public; Indexindex.PHP; Charset UTF-8; gzip auf; GZIP_TYPES-Text/CSS-Anwendung/JavaScript Text/JavaScript-Anwendung/X-JavaScript Bild/SVG+XML Text/Klartext/XSD Text/XSL Text/XML Image/X-ICON; location / try_files $ uri $ uri / / Index.Php?$ query_string; Ort ~ \.PHP Fastcgi einschließen.conf; fastcgi_split_path_info ^(.+\.PHP) (//.+) $; fastcgi_pass unix:/run/php-fpm/www.Socke; Ort ~ /\.ht alles leugnen;
17. Speichern Sie die Datei und prüfen Sie, ob die Nginx Die Konfigurationssyntax ist durch Ausführen korrekt.
# nginx -tÜberprüfen Sie die Nginx -Konfiguration
18. Dann starten Sie die neu neu PHP-FPM Und Nginx Dienstleistungen für die jüngsten Änderungen, die wirksam werden,.
# SystemCTL RESTART PHP-FPM # SystemCTL Neustart nginx neu starten
Schritt 5: Zugriff auf die LaRavel -Website von einem Webbrowser über
19. Zugriff auf die Laravel -Website unter meine Seite.com, Dies ist kein voll qualifizierter Domain -Name (FQDN) und ist nicht registriert (es wird nur für Testzwecke verwendet), wir werden die verwenden /etc/hosts Datei auf Ihrem lokalen Computer zum Erstellen lokaler DNS.
Fügen Sie den folgenden Befehl aus, um die Server -IP -Adresse und -Domäne in der erforderlichen Datei hinzuzufügen (ersetzen Sie den Wert gemäß Ihren Einstellungen).
# IP hinzufügen #get Remote Server IP $ echo "10.42.0.21 MySite.com "| sudo tee -a /etc /hostsFügen Sie DNS -Einträge in lokale Datei hinzu
20. Öffnen Sie als Nächst.
http: // mysite.comLaraval -Webzugriff
Sie haben erfolgreich eingesetzt Laravel An Centos 8. Sie können jetzt mit der Entwicklung Ihrer Website oder Webanwendung beginnen Laravel. Weitere Informationen finden Sie unter Laravel Erste Start Guide.
- « So installieren Sie Ruby auf CentOS/Rhel 8
- So setzen Sie ein vergessenes Stammkennwort in Linux Mint zurück »