【发布时间】:2021-01-05 03:08:32
【问题描述】:
我在docker中部署了一个应用程序,它是一个带有apache2的php应用程序。 docker中有一个nginx,用来代理应用。 www.myhost.com -> nginx(docker) -> 我的应用程序(docker)
如果我通过 host:port 请求我的应用程序,它会成功运行。 当我通过域名请求我的应用程序时,它会随机获取 ERR_CONNECTION_RESET。
net::ERR_CONNECTION_RESET 200 (OK)
server {
listen 80;
server_name myhost.com;
client_max_body_size 5120m;
location / {
#client_max_body_size 1024M;
#proxy_redirect off;
#proxy_set_header Host $http_host;
#proxy_set_header X-Real-IP $remote_addr;
#proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#proxy_request_buffering off;
#proxy_buffering off;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
proxy_pass http://192.168.17.19:8080/;
}
}
【问题讨论】:
-
看看couple of other answers,你能试试用nginx禁用压缩吗?
-
@johnson 您使用哪些 docker 镜像?
192.168.17.19是你的网桥地址吗?你能添加更多细节,如docker run、docker-compose或Dockerfile来模拟问题吗? -
在 freeCodeCamp 上寻找这篇文章:freecodecamp.org/news/…
-
尝试将
proxy_set_header X-NginX-Proxy true;添加到位置部分 -
你能在你的 nginx 容器中尝试
curl -I http://192.168.17.19:8080/。我怀疑它无法到达您的应用程序。