我有一个新的NGINX安装正在运行,并且在某种程度上可以运行(我可以在host.com/上看到默认的nginx登录页面)。 在我的配置中,我有3个位置块。具有以下模式:
/
/register
/keycloak
如上所述,第一个有效。加载目标网页很好。 后两个无法加载其proxy_pass标识的内容。
location /register {
proxy_pass http://register;
}
location /keycloak {
proxy_pass http://keycloak;
}
奇怪的是,当我从以下位置更新默认(/)块时:
location / {
root html;
index index.html index.htm;
}
收件人:
location / {
proxy_pass http://register;
}
或
location / {
proxy_pass http://keycloak
}
它提供了正确的内容,就像我希望/ register / keycloak做的那样。
我的nginx安装正在自己的计算机上运行,而register和keycloak服务则在同一局域网中的另一台服务器上运行。我可以从Nginx服务器ping服务器,并且可以从Nginx服务器卷曲两个服务。
答案 0 :(得分:0)
我需要在proxy_pass网址的末尾加上一个/。
从这里:
location /keycloak {
proxy_pass http://keycloak;
}
对此:
location /keycloak {
proxy_pass http://keycloak/;
}
希望它对其他人有帮助。