我在docker-compose mysql,keycloack和nginx中进行了设置。 已更改为独立模式和独立模式
<web-context>keycloak/auth</web-context>
所以我可以在/ keycloak下使用keycloak。 如果我公开8080密钥克隆端口,则可以在http:// localhost:8080 / keycloak / auth /下使用它。 登录,更改设置等都可以正常工作。
所以我可以假定此密钥斗篷配置很好。 但我想将其隐藏在nginx代理下。
这是我的nginx.conf:
user nginx;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type text/html;
server {
listen 8080;
location /keycloak {
proxy_pass http://keycloak:8080/keycloak/auth/;
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 $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-Port $server_port;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
}
如果我转到http:// localhost / keycloak或http:// localhost / keycloak / auth 我看到404 Nginx错误。
我找不到这个问题。
有什么解决办法吗? 谢谢!
编辑: 当我设置proxy_pass http:// keycloak:8080; 然后网址:http:// localhost / keycloak / auth /可以正常工作, 但我想知道为什么我转到http:// localhost / keycloak /我被重定向到http:// localhost / auth 有什么想法吗?