CodeIgniter在nginx下的配置

CodeIgniter在nginx下的配置
1 Star2 Stars3 Stars4 Stars5 Stars 給文章打分!
Loading...

今天在把ci專案放到伺服器上的時候,死活路由不到頁面,要麼是404,要麼都是welcome頁面,很煩。到網上搜到一大堆方法,大多不全面或者不好使,有的乾脆就一行程式碼,我也是看不懂。剛剛弄了好幾個小時,總算路由到頁面了。這裡mark一下。伺服器環境

Debian 9.0 64位
nginx 1.13.5
PHP/7.1.10
CodeIgniter 3.1.6

nginx 報404錯誤的原因

原因是預設Nginx不支援pathinfo這種格式,當你瀏覽器裡輸入http:xxx.xxx.comindex.phppageshome的時候,Nginx會認為你要訪問index.php目錄下的pages資料夾裡的home,所以會報404 not found錯誤。

解決方法

解決方法就是修改nginx.conf

主要就是加了一行 try_files $uri $uri/ /index.php;

這三個引數比較關鍵,其中第一個是web根目錄對應的域名 ,index_page要為”,不要為預設值 ‘index.php’.
經過以上設定就ok了,url地址裡不需要寫index.php了。

然而在我的專案裡,nginx路由雖然不報錯了,但是ci還是報錯404,最後發現是檔名大小寫的問題,真的很坑。
控制器的檔名稱不能小寫。

參考連結

相關文章

程式語言 最新文章