最近在用thinkphp做一個(gè)項(xiàng)目,基本完成后部署到nginx服務(wù)器上才發(fā)覺(jué)nginx是不支持pathinfo的,網(wǎng)上搜索了別人的解決方法,有兩種思路:
1、修改thinkphp讓他可以在nginx上運(yùn)行
2、修改nginx讓它支持pathinfo
網(wǎng)上說(shuō)nginx開(kāi)啟pathinfo是有一定風(fēng)險(xiǎn)的,能不用pathinfo最好不用,所以還是折騰thinkphp吧,個(gè)人覺(jué)得這種方法相對(duì)第2種方法來(lái)得簡(jiǎn)單
修改nginx的rewrite
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
然后項(xiàng)目配置下url模式改為2
'URL_MODEL'=>2,
如果是多個(gè)項(xiàng)目,布署項(xiàng)目時(shí)要把項(xiàng)目布署到目錄里,如后臺(tái)的項(xiàng)目放到Admin目錄里,那么在nginx的rewrite里再寫(xiě)一條
location /Admin/ {
if (!-e $request_filename) {
rewrite ^/Admin/(.*)$ /Admin/index.php?s=$1 last;
break;
}
}
最后也不要忘記把這個(gè)項(xiàng)目的url模式改為2。
更多信息請(qǐng)查看IT技術(shù)專欄