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

MySQL-Passwort ist korrekt, aber keine lokale Anmeldung möglich -1045

MySQL-Passwort ist korrekt, aber keine lokale Anm...

JavaScript-Simulationsrechner

In diesem Artikel wird der spezifische Code des J...

Tutorial zur Installation von mysql5.7.17 über yum auf redhat7

Die Linux-Betriebssysteme der RHEL/CentOS-Reihe v...

Zusammenfassung von 28 gängigen JavaScript-String-Methoden und Verwendungstipps

Inhaltsverzeichnis Vorwort 1. Ermitteln Sie die L...

Webdesign-Tipps: Einfache Regeln für das Seitenlayout

Wiederholung: Wiederholen Sie bestimmte Seitendes...

Implementierung der Nginx-Konfiguration https

Inhaltsverzeichnis 1: Bereiten Sie das https-Zert...