【发布时间】:2019-01-06 23:24:39
【问题描述】:
我有几个 Docker 容器充当桥接网络上的 Web 服务器。我想使用 Nginx 作为代理,在桥接网络之外公开服务(Web),并使用服务器端包含嵌入来自其他服务(即 wiki)的内容。
长话短说,我正在尝试使用以下配置,但我的位置无法正常工作。 / 位置工作正常,但是当我添加另一个位置(例如 /wiki)或将 / 更改为更具体的位置(例如 /web)我从 Nginx 收到一条消息,分别说它“无法获取 /wiki”或“无法获取 /web”:
events {
worker_connections 1024;
}
http {
upstream wiki {
server wiki:3000;
}
upstream web {
server web:3000;
}
server {
ssi on;
location = /wiki {
proxy_pass http://wiki;
}
location = / {
proxy_pass http://web;
}
}
}
我已附加到 Nginx 容器并验证我可以使用 CURL 访问其他容器 - 它们似乎工作正常。
我也阅读过 Nginx 的陷阱,知道使用主机名(wiki、web)并不理想,但我不提前知道 IP 地址,并试图通过告诉 docker 来解决任何 DNS 问题-说明 nginx 容器依赖 web 和 wiki。
有什么想法吗?
【问题讨论】:
-
尝试在末尾添加反斜杠,例如
http://wiki/;。 -
就是这样!您应该将此添加为答案(如果您能告诉我为什么会有所作为,则可以加分)。