簡體   English   中英

無法將 Nginx 正確配置為 Jenkins 和 Nexus 服務器的反向代理

[英]Not able to configure Nginx correctly as reverse proxy to both Jenkins and Nexus servers

我想通過將Nginx配置為JenkinsNexus反向代理來關注Nginx網址。

http://10.20.30.40 -> 應該顯示 Nginx 主頁

http://10.20.30.40/jenkins -> 應該顯示 Jenkins 主頁

http://10.20.30.40/nexus -> 應該顯示 Nexus 主頁

谷歌搜索后,我修改了默認配置文件並嘗試檢查配置。 但是在檢查我的配置時出現以下錯誤。

注意:我沒有任何域和 ssl。 暫時只使用IP地址。

須藤 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;
        }

希望,這可以幫助你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM