So verwenden Sie den Nginx-Proxy zum Surfen im Internet

So verwenden Sie den Nginx-Proxy zum Surfen im Internet

Normalerweise verwende ich nginx als Reverse-Proxy für Tomcat und andere Anwendungen. Tatsächlich unterstützt nginx auch Forward-Proxy

Beim sogenannten Forward-Proxy greifen Intranet-Benutzer über das Gateway auf externe Ressourcen zu. Das heißt, wenn der Computer im Internet surft, ist der Browser so eingestellt, dass er über die HTTP-Proxy-Adresse auf das Internet zugreift.

Bei einem Reverseproxy greifen externe Benutzer über ein Gateway auf Intranetressourcen zu. Einfach ausgedrückt: Ihre Website läuft auf Port 8080 des Intranets und andere können über Port 80 darauf zugreifen.

HTTP-Proxy-Konfiguration

# Proxy-Internet-Zugangsserver weiterleiten {
  hören Sie 38080;

  # Lösen Sie den Domänennamen-Resolver 8.8.8.8 auf;

  Standort / {
    Proxy-Passwort $scheme://$http_host$Anforderungs-URI;
  }
}

Konfigurieren Sie die Proxy-IP und den Port im Browser und besuchen Sie dann http://www.ip138.com. Sie werden feststellen, dass sich die IP geändert hat, was darauf hinweist, dass der Proxy wirksam geworden ist.

Die https-Website kann jedoch nicht geöffnet werden. Dies liegt daran, dass das native nginx nur HTTP-Forward-Proxy unterstützt. Um HTTPS-Forward-Proxy für nginx zu unterstützen, können Sie den Patch ngx_http_proxy_connect_module + SSL-Modulunterstützung installieren.

https-Proxy-Modul hinzufügen

Sie müssen nginx hier neu kompilieren. Sie müssen die aktuelle nginx-Version und die Kompilierungsoptionen überprüfen und dann auf die offizielle Website gehen, um dieselbe Version des nginx-Quellcodes zur Neukompilierung herunterzuladen.

/usr/local/nginx/sbin/nginx -V
wget http://nginx.org/download/nginx-1.15.12.tar.gz
tar -zxvf nginx-1.15.12.tar.gz

Modul ngx_http_proxy_connect_module herunterladen

Git-Klon https://github.com/chobits/ngx_http_proxy_connect_module

Wenden Sie den Patch an und ändern Sie den Nginx-Quellcode. Dieser Schritt ist sehr wichtig, da das nachfolgende Make sonst nicht erfolgreich ist.

patch -d /root/nginx-1.15.12/ -p 1 < /root/ngx_http_proxy_connect_module/patch/proxy_connect_rewrite

Fügen Sie Module nach der ursprünglichen Konfiguration hinzu und achten Sie darauf, sie nicht nach make zu installieren

cd /root/nginx-1.15.12/
./Konfigurieren --mit-http_stub_status_module --mit-http_ssl_module --mit-file-aio --mit-http_realip_module --add-module=/root/ngx_http_proxy_connect_module/
machen
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
cp /root/nginx-1.15.12/objs/nginx /usr/local/nginx/sbin/

Ändern Sie die Konfigurationsdatei wie folgt und starten Sie den Dienst

# Proxy-Internet-Zugangsserver weiterleiten {
  hören Sie 38080;

  # Lösen Sie den Domänennamen-Resolver 8.8.8.8 auf;

  # ngx_http_proxy_connect_module
  Proxy_Verbindung;
  Proxy_Verbindung zulassen 443 563;
  Proxy_Connect_Verbindungs-Timeout 10 s;
  Proxy_Connect_Read_Timeout 10 s;
  Proxy_Connect_Sende-Timeout 10 s;

  Standort / {
    Proxy-Passwort $scheme://$http_host$Anforderungs-URI;
  }
}

Zusammenfassen

Der Proxy scheint nicht sehr stabil zu sein und kann manchmal nicht geöffnet werden, insbesondere https-Websites. Tun Sie dies nicht, wenn Sie ausländische Websites besuchen. Dies dient nur dazu, sich mit der Forward-Proxy-Funktion von nginx vertraut zu machen.

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:
  • So verwenden Sie Umgebungsvariablen in der Nginx-Konfigurationsdatei
  • So implementieren Sie eine verteilte Strombegrenzung mit Nginx
  • So stellen Sie statische Seiten mit Nginx bereit
  • Detaillierte Erklärung zum Erstellen eines CDN-Servers mit Nginx (Bild und Text)
  • Details zur Verwendung des Nginx-Arbeitsmodus und der Proxy-Konfiguration

<<:  So verwenden und begrenzen Sie Requisiten in React

>>:  Lernen Sie die MySQL-Zeichensatzeinstellungen in 5 Minuten kennen

Artikel empfehlen

Vue implementiert die Benutzeranmeldungsumschaltung

In diesem Artikelbeispiel wird der spezifische Co...

Einführung in den glibc-Upgradeprozess für Centos6.5

Inhaltsverzeichnis Szenarioanforderungen glibc-Ve...

Zwei Möglichkeiten zum Erstellen von SSH-Server-Aliasen in Linux

Vorwort Wenn Sie häufig über SSH auf viele versch...

Mysql, einige komplexe SQL-Anweisungen (Abfragen und Löschen doppelter Zeilen)

1. Suchen Sie nach doppelten Zeilen Wählen Sie * ...

Zusammenfassung der sieben grundlegenden XHTML-Codierungsregeln

1. Alle Tags müssen ein entsprechendes End-Tag hab...

25 Beispiele für Website-Design im Nachrichtenstil

bmi Voyager Heugabel Ulster Lebensmittelhändler F...

Beispiel für einen reinen CSS3-Mindmap-Stil

Mindmap Er sieht wahrscheinlich so aus: Die meist...

MySQL-Einstellungscode für die grüne Version und Details zum Fehler 1067

MySQL-Einstellungscode für grüne Version und Fehl...

Haben Sie die MySQL-Verbindungsabfrage wirklich gelernt?

1. Übersicht über Inner Join-Abfragen Der Inner J...

Tutorial zur MySQL-Installation in der Linux-CentOS7-Umgebung

Detaillierte Einführung in die Schritte zur Insta...