Detailliertes Beispiel für die Bereitstellung der dynamischen und statischen Trennung von Nginx+Apache

Detailliertes Beispiel für die Bereitstellung der dynamischen und statischen Trennung von Nginx+Apache

Einführung in die dynamische und statische Trennung von Nginx

Nginx verfügt über starke statische Verarbeitungsfunktionen, aber unzureichende dynamische Verarbeitungsfunktionen. Daher verwenden Unternehmen häufig dynamische und statische Trennungstechnologien, um PHP von dynamisch und statisch zu trennen.

  • Statische Seiten werden von Nginx verwaltet
  • Dynamische Seiten werden vom PHP-FPM-Modul oder Apache verarbeitet

In der Nginx-Konfiguration werden durch das Standortkonfigurationssegment und den regulären Abgleich unterschiedliche Verarbeitungsmethoden für statische und dynamische Seiten implementiert.

Reverse-Proxy-Prinzip

Nginx kann nicht nur als Webserver verwendet werden, sondern verfügt auch über die Funktionen Reverse-Proxy, Lastausgleich und Caching.

Nginx verwendet das Proxy-Modul, um die Clientanforderung an den Upstream-Server weiterzuleiten. Zu diesem Zeitpunkt wird die Verbindung zwischen Nginx und dem Upstream-Server über das HTTP-Protokoll hergestellt.

Die wichtigste Anweisung von Nginx bei der Implementierung der Reverse-Proxy-Funktion ist proxy_pass, das Benutzeranforderungen entsprechend der URI, den Client-Parametern oder einer anderen Verarbeitungslogik an den Upstream-Server weiterleiten kann.

Konfigurieren Sie Nginx, um eine dynamische und statische Trennung zu erreichen

In diesem Fall wird Nginx entsprechend den Anforderungen des Unternehmens so konfiguriert, dass eine dynamische und statische Trennung erreicht wird. Anforderungen für PHP-Seiten werden zur Verarbeitung an LAMP weitergeleitet, während statische Seiten zur Verarbeitung an Nginx übergeben werden, um eine dynamische und statische Trennung zu erreichen.

Die Architektur ist in der Abbildung dargestellt

Bildbeschreibung hier einfügen

Konfigurationsschritte

1. Einrichten und Debuggen der Backend-LAMP-Umgebung

①Installieren Sie den Apache-Dienst

[root@localhost ~]# yum install httpd httpd-devel -y

②Legen Sie die Berechtigungen für den HTTP-Dienst in der Firewall fest

[root@localhost ~]# Firewall-cmd --permanent --zone=public --add-service=http
Erfolg
[root@localhost ~]# Firewall-cmd --permanent --zone=public --add-service=https
Erfolg   
[root@localhost ~]# Firewall-cmd --reload 
Erfolg
[root@localhost ~]# systemctl start httpd

③Installieren Sie MariaDB

Das Datenbankverwaltungssystem MariaDB ist ein Zweig von MySQL, der hauptsächlich von der Open-Source-Community gepflegt und unter der GPL lizenziert wird. Der Zweck von MariaDB besteht darin, vollständig mit MySQL kompatibel zu sein, einschließlich API und Befehlszeile, sodass es problemlos als Ersatz für MySQL dienen kann.

[root@localhost ~]# yum installiere MariaDB MariaDB-Server MariaDB-Libs MariaDB-Devel -y
[root@localhost ~]# systemctl starte mariadb.service

④MySQL-Sicherheitskonfigurationsassistent

[root@localhost ~]# mysql_secure_installation

⑤Installieren Sie PHP und unterstützende Software

[root@localhost ~]# yum install php -y
[root@localhost ~]# yum installiere php-mysql -y
[root@localhost ~]# yum installiere php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel php-bcmath -y

⑥Ändern Sie die Hauptseite der Website

[root@localhost ~]# cd /var/www/html
[root@localhost html]# vim index.php
<?php
  echo "Dies ist das Apache-Testweb";
?>

[root@localhost html]# systemctl restart httpd

⑦Zugriffstest, geben Sie die URL http://192.168.150.214/index.php ein

Bildbeschreibung hier einfügen

2. Kompilieren und installieren Sie nginx

①Supportsoftware installieren

[root@localhost ~]# yum installiere gcc gcc-c++ pcre-devel zlib-devel -y

②Laufende Benutzer und Gruppen erstellen

[root@localhost ~]# useradd -M -s /sbin/nologin nginx

③Kompilieren und installieren

[root@localhost LNMP-C7]# tar zxvf nginx-1.12.2.tar.gz -C /opt
[root@localhost LNMP-C7]# cd /opt/nginx-1.12.2/
[root@localhost nginx-1.12.2]# ./konfigurieren \
> --prefix=/usr/local/nginx \
> --user=nginx \
> --group=nginx \
> --mit-http_stub_status_module

[root@localhost nginx-1.12.2]# make && make install
[root@localhost nginx-1.12.2]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin

④Service-Management-Kontrolle

[root@localhost ~]# vim /etc/init.d/nginx
#!/bin/bash
# chkconfig: -99 20
# Beschreibung: Ngins Service Control Skript
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
Fall "$1" in
Start)
  $PROG
  ;;
stoppen)
  töten -s BEENDEN $(Katze $PIDF)
  ;;
Neustart)
   $0 Stopp
   $0 Start
   ;;
neu laden
   töten -s HUP $(Katze $PIDF)
   ;;
*)
   echo "Verwendung: $0 {start|stop|restart|reload}"
   Ausfahrt 1
esac
Ausfahrt 0

[root@localhost ~]# chmod +x /etc/init.d/nginx
[root@localhost ~]# chkconfig --add nginx
[root@localhost ~]# Dienst nginx starten

⑤Starten Sie den Dienst

[root@nginx ~]# systemctl stoppe firewalld.service
[root@nginx ~]# setenforce 0
[root@nginx ~]# Dienst nginx starten

⑥Konfigurieren Sie Nginx für die Verarbeitung dynamischer Seitenanforderungen

[root@nginx ~]# vim /usr/local/nginx/conf/nginx.conf
    Standort ~ \.php$ {
      Proxy-Passwort http://192.168.150.214;
    }

[root@nginx ~]# Dienst nginx neu starten

⑦Zugangstest

Bildbeschreibung hier einfügen
Bildbeschreibung hier einfügen

Zusammenfassen

Oben ist ein ausführliches Beispiel für die Bereitstellung der dynamischen und statischen Trennung von Nginx+Apache, das vom Herausgeber eingeführt wurde. Ich hoffe, es wird allen helfen. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!
Wenn Sie diesen Artikel hilfreich finden, können Sie ihn gerne abdrucken und dabei bitte die Quelle angeben. Vielen Dank!

Das könnte Sie auch interessieren:
  • Grundlegendes Konfigurationsbeispiel von Nginx mit Apache oder Tomcat zur dynamischen und statischen Trennung
  • Verwenden von Nginx+uWsgi zum Trennen der dynamischen und statischen Teile der Django-Framework-Site von Python
  • Einfache Implementierung des Nginx+Tomcat-Reverse-Proxys und der dynamischen und statischen Trennung
  • Detaillierte Erklärung von Nginx zum Trennen von statischem und dynamischem Tomcat
  • nginx realisiert Lastausgleich und dynamische und statische Trennung
  • Nginx-Beispielcode zur Implementierung dynamischer und statischer Trennung
  • Beispielcode für Nginx zur Erreichung dynamischer und statischer Trennung
  • Nginx implementiert dynamische und statische Trennung Beispielerklärung
  • Implementierungsfallcodeanalyse für dynamische und statische Trennung von Nginx
  • Detaillierte Erläuterung des Prozesses zur Realisierung der dynamischen und statischen Trennung in Springmvc nginx
  • Docker Nginx-Container und Tomcat-Container zur Realisierung von Lastausgleich und dynamischen und statischen Trennungsvorgängen
  • Analyse des Prinzips von Nginx + Tomcat zur Erreichung eines Lastausgleichs sowie einer dynamischen und statischen Trennung
  • Das Prinzip und die Konfiguration des Nginx-Lastausgleichs sowie der dynamischen und statischen Trennung
  • Beispiel, wie nginx dynamische und statische Trennung implementiert
  • Detaillierte Anleitung für nginx von der Installation bis zur Konfiguration (Installation, Sicherheitskonfiguration, Anti-Hotlinking, dynamische und statische Trennung, HTTPS-Konfiguration, Leistungsoptimierung)
  • Implementierung des Nginx+Tomcat-Lastausgleichs und der dynamischen und statischen Clustertrennung
  • Server-Lastausgleich von Nginx + Tomcat zur Erzielung einer dynamischen und statischen Trennung
  • Implementierung und Beschreibung der dynamischen und statischen Trennungskonfiguration von Nginx

<<:  So vereinheitlichen Sie den Zeichensatz einer vorhandenen MySQL-Datenbank

>>:  Ein einfaches Beispiel für die Verwendung von Vue3-Routing VueRouter4

Artikel    

Artikel empfehlen

Deaktivieren der Implementierungseigenschaften für Eingabetextfelder

Heute möchte ich einige sehr nützliche HTML-Tags z...

Drei Möglichkeiten zum Implementieren eines Textfarbverlaufs in CSS

Bei der Entwicklung von Web-Frontends entwerfen U...

Zusammenfassung einiger gängiger Verwendungen von Refs in React

Inhaltsverzeichnis Was sind Refs 1. Referenzen vo...

Konfigurationslösung für die MySQL Dual-Master-Architektur (Master-Master)

In Unternehmen hat die hohe Verfügbarkeit von Dat...

Konfigurieren Sie ein Implementierungsbeispiel für den Mysql-Master-Slave-Dienst

Konfigurieren Sie ein Implementierungsbeispiel fü...

HTML+CSS zum Erstellen einer Schaltfläche im Cyberpunk-Stil

Erster Blick auf die Wirkung: Vorwort: Auf diese ...

Vue implementiert grafischen Überprüfungscode

In diesem Artikelbeispiel wird der spezifische Co...

jQuery zum Erreichen des Sperrfeuereffekts

In diesem Artikel wird der spezifische Code von j...

Detaillierte Erläuterung der CSS-Bildspleißtechnologie (Sprite-Bild)

CSS-Bildspleißtechnologie 1. Bildzusammenfügung B...

CSS-Code-Abkürzung div+css-Layout-Code-Abkürzungsspezifikation

Durch die Verwendung von Abkürzungen können Sie di...