如何解决无法将Nginx正确配置为Jenkins和Nexus服务器的反向代理
我希望通过将Nginx
配置为Nginx
和Jenkins
的反向代理来跟踪Nexus
网址。
http://10.20.30.40->应该显示Nginx主页
http://10.20.30.40/jenkins->应该显示Jenkins主页
http://10.20.30.40/nexus->应该显示Nexus主页
在谷歌搜索后,我修改了默认配置文件并尝试检查配置。但是在检查我的配置时出现以下错误。
注意:我没有任何域和ssl。暂时只使用IP地址。
sudo nginx -c /etc/nginx/nginx.conf -t
nginx: [emerg] invalid number of arguments in "proxy_pass" directive in /etc/nginx/sites-enabled/default:92
nginx: configuration file /etc/nginx/nginx.conf test failed
/ etc / nginx / sites-available / default
# Default server configuration
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
try_files $uri $uri/ =404;
}
}
# Jenkins server configuration
server {
listen 80;
listen [::]:80;
server_name _;
root /var/www/html;
index index.html;
location /jenkins {
proxy_pass http://localhost:8080
try_files $uri $uri/ =404;
}
}
# Nexus server configuration
server {
listen 80;
listen [::]:80;
server_name _;
root /var/www/html;
index index.html;
location /nexus {
proxy_pass http://localhost:8081
try_files $uri $uri/ =404;
}
}
解决方法
在服务器块之外创建两个上游块,分别用于jenkins和nexus:
upstream backendjenkins {
server <hostname>:8080;
}
upstream backendnexus {
server <hostname>:8081;
}
然后,在服务器块中,像这样提及:
location /jenkins {
proxy_pass http://backendjenkins;
try_files $uri $uri/ =404;
}
location /nexus {
proxy_pass http://backendnexus;
try_files $uri $uri/ =404;
}
希望,这可能会对您有所帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。