当前位置:Gxlcms > PHP教程 > nginx两个tp程序一个放到二级目录下,只能通过/index.php?g=Home&m=Category&a=index这种方式访问

nginx两个tp程序一个放到二级目录下,只能通过/index.php?g=Home&m=Category&a=index这种方式访问

时间:2021-07-01 10:21:17 帮助过:29人阅读

网站根目录是:xxx.com
二级目录:xxx.com/info
根目录没有问题,可以用u函数访问,二级目录只能访问到首页,或者用xxx.com/info/index.php?g=Home&m=Category&a=index这种方式访问,后台那些都没办法访问。
不知怎么解决,求各位大大指教。


回复讨论(解决方案)

加了一个二级目录的重写之后,访问会无限死循环。求大神支招啊~~

location  /info/ {       if (!-e $request_filename) {                 rewrite  ^(.*)$ /info/index.php?s=$1  last;                }        }

你那样写表示路径中含有/info/ 的就都转向,转向到包含/info/的路径,那很显然是死循环。/info/ 你后面加个$试试看。

你那样写表示路径中含有/info/ 的就都转向,转向到包含/info/的路径,那很显然是死循环。/info/ 你后面加个$试试看。


模式2还是不行,访问不到

这个问题,由于nginx和Apache不一样,Apache支持.htaccess重写,但nginx不认.htaccess,所以你得让你的nginx支持path_info和伪静态。

这个问题,由于nginx和Apache不一样,Apache支持.htaccess重写,但nginx不认.htaccess,所以你得让你的nginx支持path_info和伪静态。


对,就是 rewrite ^(.*)$ /info/index.php?s=$1 last;这个可以用模式2来访问,根目录的可以没有问题,二级目录的就不行了。

解决了,改了半天,rewrite ^\/info\/ 直接在前面做下匹配就可以了。

人气教程排行