Implementierung der Nginx-Konfiguration für den Multi-Port- und Multi-Domain-Name-Zugriff

Implementierung der Nginx-Konfiguration für den Multi-Port- und Multi-Domain-Name-Zugriff

Um mehrere Sites auf einem Server bereitzustellen, müssen Sie mehrere Ports öffnen, um auf verschiedene Sites zuzugreifen. Der Vorgang ist sehr einfach. Das Debuggen dauerte 2 Stunden. Hier ist ein Datensatz:

Hauptdomänenname - Multiport-Zugriff

Einrichten eines A-Eintrags im DNS-Nameserver

Richten Sie www.xxx.com auf die Server-IP

Öffnen Sie die erforderlichen Ports und ändern Sie die Nginx-Konfigurationsdatei

Beispielsweise haben wir zwei Dienste auf Port 80 bzw. Port 8080 geöffnet.

Wenn iptable vorhanden ist, öffnen Sie zuerst den Port:

iptables -A INPUT -ptcp --dport 80 -j AKZEPTIEREN
iptables -A INPUT -ptcp --dport 8080 -j AKZEPTIEREN

Ändern Sie die Konfigurationsdatei:

#Pfad: /usr/local/nginx/conf/nginx.conf

Server {
hören Sie 80;
Servername www.xxx.com;
access_log /data/www/log/33.33.33.33_nginx.log kombiniert;
index.html index.htm index.php;
Schließen Sie /usr/local/nginx/conf/rewrite/none.conf ein.
Stamm /data/www/website/33.33.33.33:80;


Standort ~ [^/]\.php(/|$) {
  fastcgi_pass unix:/dev/shm/php-cgi.sock;
  fastcgi_index index.php;
  fastcgi.conf einschließen;
  }
Standort ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
  läuft in 30 Tagen ab;
  Zugriff_Abmeldung;
  }
Standort ~ .*\.(js|css)?$ {
  läuft am 7. Tag ab;
  Zugriff_Abmeldung;
  }
}
Server {
hören Sie 8080;
Servername A.xxx.com;
access_log /data/www/log/33.33.33.33:8080_nginx.log kombiniert;
index.html index.htm index.php;
Schließen Sie /usr/local/nginx/conf/rewrite/none.conf ein.
root /data/www/website/33.33.33.33:8080;


Standort ~ [^/]\.php(/|$) {
  fastcgi_pass unix:/dev/shm/php-cgi.sock;
  fastcgi_index index.php;
  fastcgi.conf einschließen;
  }
Standort ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
  läuft in 30 Tagen ab;
  Zugriff_Abmeldung;
  }
Standort ~ .*\.(js|css)?$ {
  läuft am 7. Tag ab;
  Zugriff_Abmeldung;
  }
}

Der Schlüssel sind die beiden Serverabschnitte. Sie können diese beiden Abschnitte auch in zwei Konfigurationsdateien aufteilen und in

/etc/nginx/conf.d/

Unterhalb des Verzeichnisses;

Subdomain-Multiport-Zugriff

Diese Art des Zugriffs ist unsinnig, da Ihr Zugriff auf Port 8080 im Format http://xxx.com:8080; erfolgen muss.

Und was sollen wir tun, wenn es zwei unterschiedliche CGIs gibt, beispielsweise Port 80 einem PHP-Webdienst entspricht und Port 8080 einem Node.JS-Webdienst; und unser Node.JS wird mit einem Webdienst geliefert, der bereits auf Port 8080 lauscht?

Zu diesem Zeitpunkt benötigen wir die Reverse-Proxy-Funktion von Nginx und fügen einen A-Eintrag auf dem DNS-Server hinzu, um dies endlich zu erreichen

  • www.xxx.com greift auf Port 80 zu
  • A.xxx.com greift über die Nginx-Weiterleitung auf Port 8080 zu

Einen A-Eintrag hinzufügen

Richten Sie A.xxx.com auf die Server-IP

Die Nginx-Konfigurationsvorlage sieht wie folgt aus:

#Pfad: /usr/local/nginx/conf/nginx.conf

Server {
  hören Sie 80;
  Servername www.xxx.com;
  access_log /data/www/log/33.33.33.33_nginx.log kombiniert;
  index.html index.htm index.php;
  Schließen Sie /usr/local/nginx/conf/rewrite/none.conf ein.
  Stamm /data/www/website/33.33.33.33:80;


  Standort ~ [^/]\.php(/|$) {
    fastcgi_pass unix:/dev/shm/php-cgi.sock;
    fastcgi_index index.php;
    fastcgi.conf einschließen;
    }
  Standort ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
    läuft in 30 Tagen ab;
    Zugriff_Abmeldung;
    }
  Standort ~ .*\.(js|css)?$ {
    läuft am 7. Tag ab;
    Zugriff_Abmeldung;
    }
}

Server {
  hören Sie 80;
  hören [::]:80;

  Servername A.XXX.com;

  Proxy-Verbindungs-Timeout 300 s;
  Proxy_Sendezeitüberschreitung 300 s;
  Proxy_Lese_Timeout 300 s;
  fastcgi_send_timeout 300 s;
  fastcgi_read_timeout 300 s;

  Standort / {
    Proxy-Passwort http://127.0.0.1:3000;
    Proxy_http_Version 1.1;
    Proxy_Set_Header-Upgrade $http_upgrade;
    proxy_set_header Verbindung „Upgrade“;
    Proxy_Set_Header Host $host;
    Proxy-Cache-Bypass $http_upgrade;
    versuche_dateien $uri $uri/ =404;
  }
}

nginx lädt die Konfigurationsdatei neu

nginx -s neu laden

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Lösen Sie das Problem der Änderung des Konfigurationszugriffs von tp5 unter nginx
  • So konfigurieren Sie Nginx, um die Zugriffshäufigkeit derselben IP zu begrenzen
  • Schritte zum Konfigurieren von Nginx SSL zur Implementierung des HTTPS-Zugriffs (für Anfänger geeignet)
  • So konfigurieren Sie Nginx, um zwischen dem PC- oder Mobiltelefonzugriff auf verschiedene Domänennamen zu unterscheiden
  • Detaillierte Erläuterung der Nginx-Zugriffsbeschränkungskonfiguration
  • Detaillierte Erläuterung der SSL-Modulkonfiguration von Nginx zur Unterstützung des HTTPS-Zugriffs
  • So verwenden Sie nginx zum Konfigurieren des Zugriffs auf wgcloud

<<:  Detaillierte Erklärung zur Verwendung der React-Listenleiste und der Warenkorbkomponenten

>>:  Detaillierte Erläuterung der Vorgänge zum Hinzufügen, Löschen und Ändern der MySQL-Datenbank

Artikel empfehlen

Mehrere Möglichkeiten zum Zentrieren einer Box in der Webentwicklung

1. Notieren Sie mehrere Methoden zum Zentrieren d...

Anwendung von HTML und CSS in Flash

Anwendung von HTML und CSS in Flash: Ich habe zufä...

Nginx-Lastausgleichskonfiguration, automatischer Umschaltmodus bei Ausfallzeiten

Streng genommen verfügt nginx nicht über eine Int...

Zusammenfassung gängiger MySQL-DDL-Operationen

Bibliotheksverwaltung Erstellen einer Bibliothek ...

Zwei Möglichkeiten zum Einführen von SVG-Symbolen in Vue

So führen Sie SVG-Symbole in Vue ein Methode 1 zu...

Beispielcode zur Implementierung der Ellipsenbahnrotation mit CSS3

In letzter Zeit müssen folgende Effekte erzielt w...

Beispiel für das Hinzufügen eines Musikvideos zu einer HTML-Seite

1. Video-Tag Unterstützt die automatische Wiederg...

Vue implementiert die Anmeldung per Mobiltelefon-Bestätigungscode

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

Beispielanweisungen für Indizes und Einschränkungen in MySQL

Fremdschlüssel Abfrage, bei welchen Tabellen der ...

React verwendet Routing, um zur Anmeldeoberfläche umzuleiten

Im vorherigen Artikel haben wir nach der Konfigur...

Prinzip des MySQL-Indexfehlers

Inhaltsverzeichnis 1. Gründe für Indexfehler 2. S...