codeigniter在nginx安装配置及URL重写
目錄?[hide]
- 1?codeigniter修改
- 2?修改nginx配置
- 3?訪問url
codeigniter(CI)是一個輕量型的PHP優秀框架,但是它是在apache服務器下開發的,在nginx下需要特別的配置才可以使用。
codeigniter修改
對application/config/config.php進行修改,大約在48行左右。
| 1 | $config['uri_protocol'] =?"PATH_INFO"; |
修改nginx配置
對nginx的進行配置,nginx.conf
| 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | server { ????????listen?????? 80; ????????listen [::]:80 ipv6only=on; ????????server_name? www.example.com; ????????root?? /data/www/www.example.com; ????????index index.php? index.html index.htm; ????????location / { ????????????????# 這里使用try_files進行url重寫,不用rewrite了。 ????????????????try_files $uri $uri/ /index.php?$query_string; ????????} ????????location ~ \.php($|/) { ????????????fastcgi_pass?? 127.0.0.1:9000; ????????????fastcgi_index? index.php; ????????????fastcgi_split_path_info ^(.+\.php)(.*)$; ????????????fastcgi_param?? PATH_INFO $fastcgi_path_info; ????????????fastcgi_param? SCRIPT_FILENAME? $document_root$fastcgi_script_name; ????????????include??????? fastcgi_params; ????????} ????????location ~ /\.ht { ????????????????deny? all; ????????} } |
要特別注意19行的include fastcgi_params;,如果沒有這一行,那么你的PHP程序會無法運行的。我被這個坑了很多次了。
訪問url
在CI框架下,有一個默認的controller,叫welcome。原先在沒有nginx的rewrite前,我們需要通過這樣的方式訪問http://www.example.com/index.php/welcome/index。現在我們可以http://www.example.com/welcome/index這樣訪問URL了。
聲明:未經允許禁止轉載 東東東 陳煜東的博客 文章,謝謝。如經授權,轉載請注明:?轉載自東東東 陳煜東的博客
本文鏈接地址:?codeigniter在nginx安裝配置及URL重寫 – https://www.chenyudong.com/archives/codeigniter-in-nginx-and-url-rewrite.html
來源:https://www.chenyudong.com/archives/codeigniter-in-nginx-and-url-rewrite.html
總結
以上是生活随笔為你收集整理的codeigniter在nginx安装配置及URL重写的全部內容,希望文章能夠幫你解決所遇到的問題。