昨天碰到一個坑,我想用本地的nginx代理paas平台上的api服務,api服務有內網訪問域名,通過nginx配置如下:
location / {
proxy_pass http://api-test-yuntu-www-test.opaas.enncloud.cn;
proxy_next_upstream http_500 http_502 http_503 http_504 error timeout invalid_header;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Real-Port $remote_port;
index index.html index.htm;
}
通過錯誤日志一直看到nginx將內網域名解析成了內網ip,但是通過ip訪問根本訪問不到這個服務!
如是我將
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Real-Port $remote_port;
去掉了,它就不走ip了,直接域名轉發(猜測paas平台內部做了域名轉發)