估計很多人學習CodeIgniter第一步想做的就是如何去掉index.php,這個官方手冊就有相關教程,修改.htaccess 文件(前提是你的服務器是apache):
當然了,有很多人按照要求修改了,但是卻出現了錯誤,所有的訪問都404了,而且,這個404是apache的404頁面,而不是CodeIgniter的404錯誤頁面。
出現這種問題,是對apache的rewrite規則不理解:
所以呢,如果CodeIgniter如果不是安裝在網站的根目錄,必然會出現錯誤。如何解決呢,在CodeIgniter手冊中也給出了相應的解決方案:
把上面最后一句改為:
只需要去掉index.php前面的斜杠就行。
通過上面的步驟,我們已經隱藏了index.php了,現在我們制作的網站更加的rest了,一般人已經無法一眼就看出你的網站是用CodeIgniter開發的,還是ROR開發的。
但是,如何在url后面增加后綴呢,這樣,我們甚至可以隱藏或者偽造網站的開發語言,通過修改 config/config.php 文件,你可以為 CodeIgniter 生成的 URL 添加一個指定的文件后綴,比如你可以添加.html,甚至你可以添加.asp,.jsp。
這樣我們就可以將 http://www.hualai.net.cn/index.php/news/view/about 變成 http://www.hualai.net.cn/index.php/news/view/about.html了。如何使用查詢字符串
一般情況下我們不需要使用查詢字符串,但是,總有一些特殊情況,是我們用CodeIgniter的rest模式無法完成的,這樣我們就需要在 URL 中使用查詢字符串:
CodeIgniter 默認此功能是關閉的,如果想開啟的話,打開配置文件 application/config/config.php 您可以看到如下內容:
如果你將 enable_query_strings 更改為 TRUE ,那么這個功能就被激活了。此時,你就可以通過關鍵字來調用需要的控制器和方法了:
當我們在使用CodeIgniter制作分頁的時候,這個就可以派上用場了。