默認情況下nginx是不支持pathinfo的。
雖然說配置支持pathinfo不難,但是呢,網上的教程沒幾個可以用的,麻蛋我忙活了2天也沒搞好這個
最後用了一個最簡單的方法解決了
把thinkphp的URL_MODE設置爲3
就是下面這種風格
index.php?s=/portal/index/test
其實原來很簡單
就是通過rewrite
首先先把index.php/XXX 後面的參數轉成 s=/XXX
然後在把index.php rewrite
location / {
index index.php index.html index.htm;
if (!-e $request_filename) {
rewrite ^/index.php(.*)$ /index.php?s=$1 last;
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
其實我是不建議用兼容模式的,但是讓thinkphp支持pathinfo這種方法絕對是最快的,嘿嘿