在centos中安装了nginx和php7,为了使用thinkphp,thinkphp默认是pathinfo模式,因为pathinfo模式更友好,也有利于SEO。需要调整下让nginx支持pathinfo模式。
首先回顾下thinkphp支持的四种url模式:
- 普通模式:
http://serverName/appName/?m=module&a=action&id=1
- pathinfo模式:
http://serverName/appName/module/action/id/1/
- rewrite模式
- 兼容模式:普通模式和pathinfo模式的结合体
http://serverName/appName/?s=/module/action/id/1/
废话不多说,直接上nginx配置:
1 | location ~ \.php { |
就可以了。特别要注意最前面location的.php
后面不要有$
符号。
最后
如果是在mac上做这个设置,还需要特别去设置下php.ini
的open_basedir
设置为你的根目录。
如果还有问题,就需要将php.ini
的cgi.fixpathinfo
这个配置设置为1.
have fun~ 🙂