server {
listen 80;
server_name abc.com;
location /path1/ {
proxy_pass http://1.2.3.4:1000;
}
location /path2/ {
proxy_pass http://1.2.3.4:2000;
}
#...
}
1
tangtang369 2023-12-21 17:42:21 +08:00
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Server $host; 我这样的鉴权好像没啥问题 |
2
XyIsMy 2023-12-21 17:43:22 +08:00
你这域名都是通用的,肯定有很多坑。要么下游支持 abc.com/path1/login 的方式,要么 abc.com/login 统一都转发到 http://1.2.3.4:1000 上去
|
4
wu00 2023-12-21 17:48:05 +08:00
跟 header 没关系
你都知道配/path1/、/path2/、你再配个/login 不就行了 配完/login ,还有/logout ,还有/refresh 咋办? 所以你需要了解 location 规则及优先级问题,刚刚还有帖子就是关于这方面的 |
5
ZerototoFive 2023-12-21 17:49:18 +08:00
server {
listen 80; server_name abc.com; location /path1 { proxy_pass http://1.2.3.4:1000/; } location /path2 { proxy_pass http://1.2.3.4:2000/; } #... } |
6
dcsite 2023-12-21 23:36:27 +08:00
用 Nginx 的 sub_filter 模块对目标页面内容进行替换。把所有 abc.com/ 开头的字符替换成 abc.com/path1/
|