位置nginx中的反向代理

位置nginx中的反向代理,nginx,wso2,Nginx,Wso2,我在访问位置时出现404错误 HTTP状态404-/wso2/ 我的nginx配置如下。如果我只使用/in-location,那么一切都可以,但是我需要使用同一个域以实现跨域的目的 upstream mywso2 { server localhost:9443; ip_hash; } server { server_name myidp.io; location ^~ /wso2/ { proxy_set_h

我在访问位置时出现404错误

HTTP状态404-/wso2/

我的nginx配置如下。如果我只使用/in-location,那么一切都可以,但是我需要使用同一个域以实现跨域的目的

upstream mywso2 {
        server localhost:9443;
    ip_hash;
}

server {
        server_name myidp.io;
        location ^~ /wso2/ {
               proxy_set_header X-Forwarded-Host $host;
               proxy_set_header X-Forwarded-Server $host;
               proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
               proxy_set_header Host $http_host;
               proxy_read_timeout 5m;
               proxy_send_timeout 5m;
               proxy_pass https://mywso2;

               proxy_http_version 1.1;
               proxy_set_header Upgrade $http_upgrade;
               proxy_set_header Connection "upgrade";
        }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}

当我访问myidp.io/wso2时,我有一个404错误

什么是
https://mywso2
应该是什么意思?它不是一个合格的域,当然找不到任何东西。在我的代码顶部有对上游的引用。你能尝试用127.0.0.1更改“localhost”吗?那么,如果上游只有一台本地主机,为什么要使用ip_哈希呢?上游请求变成
https://mywso2/wso2/
,因此上游服务器可能正在生成404状态,因为它需要
https://mywso2/
。你可以试试
proxy\u passhttps://mywso2/;
(带尾随的
/
)什么是
https://mywso2
应该是什么意思?它不是一个合格的域,当然找不到任何东西。在我的代码顶部有对上游的引用。你能尝试用127.0.0.1更改“localhost”吗?那么,如果上游只有一台本地主机,为什么要使用ip_哈希呢?上游请求变成
https://mywso2/wso2/
,因此上游服务器可能正在生成404状态,因为它需要
https://mywso2/
。你可以试试
proxy\u passhttps://mywso2/;(带尾随的
/