使用NGINX反向代理服務Go服務

向世界展示Go應用程序的最常見方法之一是通過反向代理。

NGINX使這非常容易。此NGINX配置可為2個不同的應用程序提供服務,分別監聽端口8001和8002。

server {
   listen 80 default_server;
   server_name your-domain;

location /go-service-1 { proxy_set_header X-Real-IP $remote_addr; proxy_pass http://localhost:8001; }

location /go-service-2 { proxy_set_header X-Real-IP $remote_addr; proxy_pass http://localhost:8002; } }

使用proxy_set_header X-Real-IP $remote_addr確保您擁有訪客的真實地址http.Request.Header.Get("X-Real-IP")

8081和8082端口現在可以保持私有狀態,而NGINX從單個入口點為它們提供服務。


更多教程: