摘要:今天在把項目放到服務器上的時候,死活路由不到頁面,要么是,要么都是頁面,很煩。服務器環境位報錯誤的原因原因是默認不支持這種格式,當你瀏覽器里輸入的時候,會認為你要訪問目錄下的文件夾里的,所以會報錯誤。控制器的文件名稱不能小寫。
今天在把ci項目放到服務器上的時候,死活路由不到頁面,要么是404,要么都是welcome頁面,很煩。到網上搜到一大堆方法,大多不全面或者不好使,有的干脆就一行代碼,我也是看不懂。剛剛弄了好幾個小時,總算路由到頁面了。這里mark一下。服務器環境
Debian 9.0 64位 nginx 1.13.5 PHP/7.1.10 CodeIgniter 3.1.6nginx 報404錯誤的原因
原因是默認Nginx不支持pathinfo這種格式,當你瀏覽器里輸入http:xxx.xxx.comindex.phppageshome的時候,Nginx會認為你要訪問index.php目錄下的pages文件夾里的home,所以會報404 not found錯誤。
解決方法解決方法就是修改nginx.conf文件,下面是我的配置:
location / { root html; index index.html index.htm; try_files $uri $uri/ /index.php; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ .php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ .php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /$document_root$fastcgi_script_name; include fastcgi_params; }
主要就是加了一行 try_files $uri $uri/ /index.php;具體的原理我也不是很懂,大致就是重定向之類的,懶得走進科學,反正我知道添加這一行,就好用了。
然后修改php支持pathinfo ,找到php的php.ini文件(可能在php安裝目錄的etc目錄也可能在lib文件夾下,看自己的配置),搜索:cgi.fix_pathinfo
將注釋放開,并置為1:cgi.fix_pathinfo=1
然后在CI的application 下的config/config.conf文件里修改三個參數:
$config["base_url"] = "http://1.abc.com/"; $config["index_page"] = ""; $config["uri_protocol"] = "REQUEST_URI";
這三個參數比較關鍵,其中第一個是web根目錄對應的域名 ,index_page要為”,不要為默認值 ‘index.php’.
經過以上設置就ok了,url地址里不需要寫index.php了。
然而在我的項目里,nginx路由雖然不報錯了,但是ci還是報錯404,最后發現是文件名大小寫的問題,真的很坑。
控制器的文件名稱不能小寫。
參考鏈接
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/26007.html
摘要:最近用搞一個項目,不太熟悉,好不容易配置好了,記錄一下。以下為配置配置做如下修改配置之后重啟打開搞定 最近用codeigniter搞一個php項目,nginx不太熟悉,好不容易配置好了,記錄一下。以下為nginx配置 server { listen 9006; server_name localhost; root /...
摘要:前段時間為了抓取網絡文本數據,申請了騰訊云學生機,用的框架弄了一段時間。這個用戶既是不可登錄的操作系統用戶,也是數據庫用戶。設置數據庫用戶密碼為了能夠讓和數據庫相連接,需要設置數據庫用戶密碼。 打讀研之后,更加關注算法的學習,Web開發這一塊便落下了,平時也通過微信公眾號關注了些,常常感慨,技術的更迭真是日新月異。 前段時間為了抓取網絡文本數據,申請了騰訊云學生機,用Python的Sc...
摘要:前段時間為了抓取網絡文本數據,申請了騰訊云學生機,用的框架弄了一段時間。這個用戶既是不可登錄的操作系統用戶,也是數據庫用戶。設置數據庫用戶密碼為了能夠讓和數據庫相連接,需要設置數據庫用戶密碼。 打讀研之后,更加關注算法的學習,Web開發這一塊便落下了,平時也通過微信公眾號關注了些,常常感慨,技術的更迭真是日新月異。 前段時間為了抓取網絡文本數據,申請了騰訊云學生機,用Python的Sc...
摘要:行,判斷如果為空,那么返回默認路由。行,把處理完畢后找到的返回。方法該方法是自動按著約定規則去目錄去找路由的過程。此文可以轉載,但轉載前需要發郵件到進行溝通,未溝通的均視作侵權。 前言 我個人覺得在當前 MVC 流行的架構下,要想去了解一個框架,或者是一個基于此架構下的應用程序,最好的入手方式就是先看路由,雖然路由不是 MVC 里的任何一個,但是知道了路由的來龍去脈就知道了整個框架或者...
摘要:版本版本版本修改下的修改下的修改下的修改下的,為私有,不能作為表名方法不能刷新主鍵,否則會報錯方法的模型,面向對象的鏈式寫法是,模塊為勾選,為勾選域名虛擬主機配置,添加到的最后打開激活在配置對應好版本為文檔添加微軟的連接插件安裝擴 1,PHP PHP版本5.3.3 Apache版本 2.1.5 MSSQL版本 2012 修改database.php下的$db[default][dbd...
閱讀 1035·2021-11-22 13:53
閱讀 1590·2021-11-17 09:33
閱讀 2391·2021-10-14 09:43
閱讀 2850·2021-09-01 11:41
閱讀 2271·2021-09-01 10:44
閱讀 2911·2021-08-31 09:39
閱讀 1448·2019-08-30 15:44
閱讀 1860·2019-08-30 13:02