Nginx代理proxy pass配置去除前缀,VUE发布部署

简介
在我们日常使用中,经常会遇到需要去除前缀得情形,比如我们在做多个服务项目时,在nginx中我们需要把https://moonce.com/user-api/permission?userId=1 转发到 http://localhost:8089/permission?userId=1

完整代理

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
server {
    listen              80;
    server_name         moonce.com;
 
    location /user-api/ {
        proxy_pass http://localhost:8089;
        index index.html index.htm;
        proxy_no_cache 1;
        proxy_cache_bypass 1;
        chunked_transfer_encoding on;
        proxy_redirect off;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        client_max_body_size 10m;
        client_body_buffer_size 128k;
        proxy_connect_timeout 30;
        proxy_send_timeout 300;
        proxy_read_timeout 300;
        proxy_buffer_size 128k;
        proxy_buffers 4 256k;
        proxy_busy_buffers_size 256k;
        proxy_temp_file_write_size 512k;
    }
 
}

  

去前缀代理

proxy_pass后面加 /

复制代码
server {
    listen              80;
    server_name         moonce.com;

    location /user-api/ {
        proxy_pass http://localhost:8089/;
        index index.html index.htm;
        proxy_no_cache 1;
        proxy_cache_bypass 1;
        chunked_transfer_encoding on;
        proxy_redirect off;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        client_max_body_size 10m;
        client_body_buffer_size 128k;
        proxy_connect_timeout 30;
        proxy_send_timeout 300;
        proxy_read_timeout 300;
        proxy_buffer_size 128k;
        proxy_buffers 4 256k;
        proxy_busy_buffers_size 256k;
        proxy_temp_file_write_size 512k;
    }

}
View Code
复制代码

使用rewrite重写

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
server {
    listen              80;
    server_name         moonce.com;
 
    location /user-api/ {
        index index.html index.htm;
        proxy_no_cache 1;
        proxy_cache_bypass 1;
        chunked_transfer_encoding on;
        proxy_redirect off;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        client_max_body_size 10m;
        client_body_buffer_size 128k;
        proxy_connect_timeout 30;
        proxy_send_timeout 300;
        proxy_read_timeout 300;
        proxy_buffer_size 128k;
        proxy_buffers 4 256k;
        proxy_busy_buffers_size 256k;
        proxy_temp_file_write_size 512k;
 
        rewrite ^/user-api/(.*)$ /$1 break;
        proxy_pass http://localhost:8089;
    }
 
}

  

posted @   郑州谷多软件  阅读(734)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示