微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

nginx 无法解析 url 并返回 404

如何解决nginx 无法解析 url 并返回 404

在 openshift 中使用 Nginx 将我的请求路由到 webapi openshift 服务。这些请求来自一个 js 客户端,axios POST 调用https://service.myapp.com/service1)。到目前为止非常好。我需要向我的令牌服务添加令牌刷新调用。因此,在 js 客户端中,我进行了检查,如有必要,将帖子发送到 tokenservice https://token.myapp.com/refresh 路由。此请求已成功从 Nginx 路由到 tokenservice。收到新令牌后,向我的原始服务 URL https://service.myapp.com/service1 发送另一个 POST。但是这次Nginx无法将请求路由到服务api并且收到了404。此 404 响应具有响应标头 server: Kestrel。另一方面,我最初成功调用 service1(200 响应)的结果是 server: Nginx:1.17.8。为什么 Nginx 在令牌刷新调用后开始不路由我的 /service1 调用?我错过了什么?

Nginx配置如下。

 server {
                  listen 8081 ssl http2;
                  ssl_certificate  /etc/ssl/certs/cert.pem;
                  ssl_certificate_key /etc/ssl/certs/cert.key;
                  server_name service.myapp.com;
                  
                  location ~ /servicex1 {
                              proxy_pass  https://servicex1:49253;
                              proxy_http_version 1.1;
                              proxy_ssl_server_name on;
                              proxy_set_header   Upgrade $http_upgrade;
                              proxy_set_header   Connection $connection_upgrade;
                              proxy_set_header   Host $host;
                              proxy_cache_bypass $http_upgrade;
                              proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
                              proxy_set_header   X-Forwarded-Proto $scheme;
                              proxy_connect_timeout       600;
                              proxy_send_timeout          600;
                              proxy_read_timeout          600;
                              send_timeout                600;
                            }
                  location ~ /servicex2 {
                              proxy_pass  https://servicex2:49253;
                              proxy_http_version 1.1;
                              proxy_ssl_server_name on;
                              proxy_set_header   Upgrade $http_upgrade;
                              proxy_set_header   Connection $connection_upgrade;
                              proxy_set_header   Host $host;
                              proxy_cache_bypass $http_upgrade;
                              proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
                              proxy_set_header   X-Forwarded-Proto $scheme;                           
                              proxy_connect_timeout       600;
                              proxy_send_timeout          600;
                              proxy_read_timeout          600;
                              send_timeout                600;                           
                            }                                  
                 
                  location / {
                              proxy_pass  https://myservers;
                              proxy_http_version 1.1;
                              proxy_ssl_server_name on;
                              proxy_set_header   Host $host;
                              proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
                              proxy_set_header   X-Forwarded-Proto $scheme;       
                              proxy_connect_timeout       600;
                              proxy_send_timeout          600;
                              proxy_read_timeout          600;
                              send_timeout                600;                           
                            }                 
                }



 server {
                  listen 8081 ssl http2;
                  ssl_certificate  /etc/ssl/certs/cert.pem;
                  ssl_certificate_key /etc/ssl/certs/cert.key;
                  server_name token.myapp.com;                   
                  
                  location / {
                              proxy_pass  https://tokenmicroservice:26560;
                              proxy_http_version 1.1;
                              proxy_ssl_server_name on;
                              proxy_set_header   Host $host;
                              proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
                              proxy_set_header   X-Forwarded-Proto $scheme;       
                              proxy_connect_timeout       600;
                              proxy_send_timeout          600;
                              proxy_read_timeout          600;
                              send_timeout                600;                           
                            }

                  location ~ /refresh {
                              proxy_pass  https://tokenmicroservice:26560;
                              proxy_http_version 1.1;
                              proxy_ssl_server_name on;
                              proxy_set_header   Host $host;
                              proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
                              proxy_set_header   X-Forwarded-Proto $scheme;       
                              proxy_connect_timeout       600;
                              proxy_send_timeout          600;
                              proxy_read_timeout          600;
                              send_timeout                600;                          
                            }  
                  location ~ /login {
                              proxy_pass  https://tokenmicroservice:26560;
                              proxy_http_version 1.1;
                              proxy_ssl_server_name on;
                              proxy_set_header   Host $host;
                              proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
                              proxy_set_header   X-Forwarded-Proto $scheme;       
                              proxy_connect_timeout       600;
                              proxy_send_timeout          600;
                              proxy_read_timeout          600;
                              send_timeout                600;                          
                            }                               
                }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。