Nexus3 + Nginx 反向代理
Nexus3 + Nginx Reverse proxy
我正在努力让 Nexus3 落后于 Nginx 运行。
Nginx 用作反向代理和 SSL 终止。通过Nginx访问/nexus路径时,出现"Operation failed as server could not be reached"、"unable to detect which node you are connected to"等多个错误。在不通过 Nginx 的情况下访问 Nexus UI 非常完美,这让我认为错误出在 Nginx 上。
NginX 配置文件
location /nexus {
proxy_pass http://localhost:8081/nexus/;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
resolver 8.8.8.8 8.8.4.4 ipv6=off;
}
如果您使用 http://localhost:8081/nexus
访问该服务,它会起作用。
您当前的配置正在使用 proxy_pass
将 URI /nexus
更改为 /nexus/
。通常,建议在 location
和 proxy_pass
URI 上或两者都没有尾随 /
。
例如:
location /nexus {
proxy_pass http://localhost:8081/nexus;
...
}
事实上,您根本不需要修改 URI,因此您可以将其从 proxy_pass
指令中完全删除。
下面应该是等价的,但是效率更高:
location /nexus {
proxy_pass http://localhost:8081;
...
}
默认情况下,Host
header 设置为 proxy_pass
指令的值(即 locatlhost:8081
),已知该值可以正常工作。您可能会发现您的声明 proxy_set_header Host $host:$server_port;
是不必要的。
详情见this document。
我正在努力让 Nexus3 落后于 Nginx 运行。
Nginx 用作反向代理和 SSL 终止。通过Nginx访问/nexus路径时,出现"Operation failed as server could not be reached"、"unable to detect which node you are connected to"等多个错误。在不通过 Nginx 的情况下访问 Nexus UI 非常完美,这让我认为错误出在 Nginx 上。
NginX 配置文件
location /nexus {
proxy_pass http://localhost:8081/nexus/;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
resolver 8.8.8.8 8.8.4.4 ipv6=off;
}
如果您使用 http://localhost:8081/nexus
访问该服务,它会起作用。
您当前的配置正在使用 proxy_pass
将 URI /nexus
更改为 /nexus/
。通常,建议在 location
和 proxy_pass
URI 上或两者都没有尾随 /
。
例如:
location /nexus {
proxy_pass http://localhost:8081/nexus;
...
}
事实上,您根本不需要修改 URI,因此您可以将其从 proxy_pass
指令中完全删除。
下面应该是等价的,但是效率更高:
location /nexus {
proxy_pass http://localhost:8081;
...
}
默认情况下,Host
header 设置为 proxy_pass
指令的值(即 locatlhost:8081
),已知该值可以正常工作。您可能会发现您的声明 proxy_set_header Host $host:$server_port;
是不必要的。
详情见this document。