分享WP资源
是件美好的事情

解决nginx添加反向代理代码无效问题

腾讯云限时秒杀活动

摘要:一些用户的网站使用nginx,在添加了反向代码之后,没有效,感觉和不添加的时候一样。经过我工作室顶尖技术人员的排查,发现问题原因是rewrite的优先级高于反向代理并且某些网站程序的伪静态规则,直接拦

一些用户的网站使用nginx,在添加了反向代码之后,没有效,感觉和不添加的时候一样。经过我工作室顶尖技术人员的排查,发现问题原因是rewrite的优先级高于反向代理

并且某些网站程序的伪静态规则,直接拦截了所有匹配导致。如 thinkphp,zblog,小旋风站群 等!

解决办法就是,给伪静态规则加上一个条件,把反向目录排除。

以下以thinkphp的伪静态规则做举例,thinkphp的默认伪静态规则如下:

——————————————————

if (!-e $request_filename) {

rewrite  ^(.*)$  /index.php?s=$1  last;

break;

}

——————————————————

注意红色部分,把 ^(.*) 改成 ^/(?!mulu888)(.*) ,其中 mulu888改成自己的反代目录,如有多个用|分开: ^/(?!mulu888|mulu999)(.*)

修改后的代码就变成以下:

——————————————————

if (!-e $request_filename) {

rewrite  ^/(?!mulu888)(.*)$  /index.php?s=$1  last;

break;

}

——————————————————

 收藏 (0) 打赏

您可以选择一种方式赞助本站

支付宝扫一扫赞助

微信钱包扫描赞助

未经允许不得转载:莲花不妖 » 解决nginx添加反向代理代码无效问题
分享到: 生成海报

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录