【发布时间】:2021-05-19 12:49:01
【问题描述】:
fhsmgr 代理在 / 但不能在任何其他位置使用 404
fhsdir 代理在 /dir 处给出 404,但是当我在 localhost:5000 上直接浏览到它时,我得到了预期的输出,因此主机已启动并正在运行。此外,nginx 不会像我以前看到的那样抱怨无效的主机和退出。
- 我试过尾随 '/' 所以 '/dir/' 无济于事。
- 我已尝试将 fhsmgr 置于“/mgr”,在索引“/”处得到预期的 404,但随后在“/mgr”处再次得到 404。
- 我也试过不使用
proxy_redirect off;。 - 我删除了上游语句,直接放入容器名称
似乎它唯一可以让我代理的地方是“/”,尽管我知道我之前已经在像这样的设置中代理到不同位置路径的其他服务器。
-- docker compose
version: "3.7"
services:
fhsmgr:
build: fhsmgr
restart: always
fhsdir:
build: fhsdir
restart: always
ports:
- 5000:5000
nginx:
build: nginx
restart: always
ports:
- 80:80
environment:
- NGINX_ENVSUBST_OUTPUT_DIR=/etc/nginx
- FHSMGR_HOST=fhsmgr
- FHSMGR_PORT=5000
- FHSDIR_HOST=fhsdir
- FHSDIR_PORT=5000
-- nginx配置
events {}
http {
# upstream fhsmgr {
# server ${FHSMGR_HOST}:${FHSMGR_PORT};
# }
# upstream fhsdir {
# server ${FHSDIR_HOST}:${FHSDIR_PORT};
# }
# a simple reverse-proxy
server {
listen 80 default_server;
location / {
proxy_pass http://fhsmgr:5000;
proxy_redirect off;
}
location /dir {
proxy_pass http://fhsdir:5000;
proxy_redirect off;
}
}
}
我正在修改这个项目https://github.com/AwsGeek/lightsail-containers-nginx 以使其适用于我的用例。还没到lightsail,只是在本地使用docker compose
【问题讨论】:
标签: docker nginx docker-compose reverse-proxy