地址重写了,只是ip 没转发,应该是9999那个才对,rewrite /sbgl/(.*) http://127.0.0.1:9999/$1 permanent;,这样,

记录想nginx搞路径重写的失败历程。

1.想将从nginx发出的127.0.0.1:80 请求过来的带sbgl的字眼去掉,然后,代理为127.0.0.1:9999,

所以我就百度出这个  这个  rewrite /sbgl/(.*)  /$1 permanent; 

但是这个也是不行,因为这样子写的话,有个漏洞就是请求先去掉sbgl,但是还是按照127.0.0.1:80 的端口去请求,而不是按照下面的代理127.0.0.1:9999 ,去请求。

( 地址重写了,只是ip 没转发,应该是9999那个才对,rewrite /sbgl/(.*)  http://127.0.0.1:9999/$1 permanent;,这样,http://127.0.0.1:9999,proxy_pass http://127.0.0.1:9999; 干掉,)

 

 

那么由此我就改进了第二个方法, rewrite /sbgl/(.*)  http://127.0.0.1:9999/$1 permanent;

但是这样子写有个漏洞就是存在跨域问题,因为你是从127.0.0.1:80  然后rewrite路径重写也就是重定向到127.0.0.1:9999,此时端口不一样,就会存在跨域的问题

 

 

你这个方法存在跨域问题,我加了这个也没用

那就把  permanent改成break;

rewrite /sbgl/(.*)  http://127.0.0.1:9999/$1 break;

 

posted @ 2023-02-27 18:54  秋名山滴  阅读(48)  评论(0)    收藏  举报