Heim >Betrieb und Instandhaltung >Nginx >Unterstützt Nginx Sockets?
Es gibt eine Schnittstelle, die über einen Socket kommuniziert. Es gibt IP-Einschränkungen für den Zugriff auf den Peer-Server, daher müssen wir den Springboard-Computer verwenden, da dieser über die Berechtigung verfügt, auf den Peer-Server zuzugreifen. Nginx1.9 beginnt mit der Unterstützung der TCP-Layer-Weiterleitung, die über Stream implementiert wird, und Socket basiert ebenfalls auf TCP-Kommunikation.
Implementierungsprozess:
1. Nginx installieren, das Stream-Modul ist nicht standardmäßig installiert muss manuell Parameter hinzugefügt werden: –with-stream, wählen Sie nginx1.9 oder höher entsprechend Ihrer Systemversion aus.
2.nginx.conf-Konfiguration, siehe Beschreibung: ngx_stream_core_module
nginx.conf
user nginx; worker_processes 1; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024; } http { ................. } # tcp层转发的配置文件夹 include /etc/nginx/tcp.d/*.conf;
Bitte beachten Sie, dass die Stream-Konfiguration kann nicht in http platziert werden, das heißt, es kann nicht in /etc/nginx/conf.d/ platziert werden, da der Stream über die TCP-Ebene und nicht über http weitergeleitet wird.
Wenn in http konfiguriert, wird beim Starten von nginx der folgende Fehler gemeldet:
nginx: [emerg] "server" directive is not allowed here
3. Erstellen Sie eine neue bss_num_30001.conf-Datei unter tcp.d mit dem folgenden Inhalt:
stream { # 添加socket转发的代理 upstream bss_num_socket { hash $remote_addr consistent; # 转发的目的地址和端口 server 130.51.11.33:19001 weight=5 max_fails=3 fail_timeout=30s; } # 提供转发的服务,即访问localhost:30001,会跳转至代理bss_num_socket指定的转发地址 server { listen 30001; proxy_connect_timeout 1s; proxy_timeout 3s; proxy_pass bss_num_socket; } }
4. Starten Sie nginx neu und greifen Sie auf localhost:30001 zu. Es wird zur von bss_num_socket angegebenen Weiterleitungsadresse 130.51.11.33:19001 gesprungen.
Weitere technische Artikel zum Thema Nginx finden Sie in der Spalte Nginx-Tutorial, um mehr zu erfahren!
Das obige ist der detaillierte Inhalt vonUnterstützt Nginx Sockets?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!