在Nginx低版本中,是不支持PATHINFO的,但是可以通过在nginx的配置文件Nginx.conf中配置转发规则实现
添加下面代码即可
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=/$1 last;
}
// …..省略部分代码
}
其实内部是转发到了ThinkPHP提供的兼容URL,利用这种方式,可以解决其他不支持PATHINFO的WEB服务器环境。
如果你的应用安装在二级目录,Nginx的伪静态方法设置如下。
location /xxx/ {
if (!-e $request_filename){
rewrite ^/xxx/(.*)$ /xxx/index.php?s=/$1 last;
}
}
其中xxx是所在的目录名称。
设置后,可以去掉index.php直接访问
#设置前
http://xxx.com/index.php/模块/控制器/操作/[参数名/参数值...]
#设置后
http://xxx.com/模块/控制器/操作/[参数名/参数值...]
网友评论