Nginx rewrite rule with proxy pass

2020-02-17 10:27发布

I'm trying to implement nginx rewrite rules for the following situation

Request:

http://192.168.64.76/Shep.ElicenseWeb/Public/OutputDocuments.ashx?uinz=12009718&iinbin=860610350635 

Should be redirected to:

http://localhost:82/Public/OutputDocuments.ashx?uinz=12009718&iinbin=860610350635 

I tried this with no luck:

location /Shep.ElicenseWeb/ {
    rewrite ^/Shep.ElicenseWeb/ /$1 last;
    proxy_pass http://localhost:82;
}

What is the correct way to perform such a rewrite for nginx ?

2条回答
不美不萌又怎样
2楼-- · 2020-02-17 10:39

You're missing a trailing slash:

location /Shep.ElicenseWeb/ {
    proxy_pass http://localhost:82/;
}

This will work without a rewrite.

查看更多
趁早两清
3楼-- · 2020-02-17 10:56

Your rewrite statement is wrong.

The $1 on the right refers to a group (indicated by paratheses) in the matching section.

Try:

rewrite  ^/Shep.ElicenseWeb/(.*)  /$1 break;
查看更多
登录 后发表回答