使用codeIgniter(簡稱CI)做網站的朋友應該都會發現網站的任何url默認都會帶個index.php,這個從SEO的角度上來說,對網站的影響是不大的,但是url的美觀上來說,這個是非常讓人不舒服的,下面我們就來看看如何去除使用codeIgniter開發的網站的url裡面的index.php這幾個字符吧。
做以下操作之前請確定你網站所運行的環境支持使用 .htaccess 進行url重寫,如果可以的話,請繼續往下看:
在網站根目錄新建一個 .htaccess 文件,輸入如下內容:
RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond $1 !^(index\\.php|images|css|js|robots\\.txt) RewriteRule ^(.*)$ /index.php/$1 [L]
上面的代碼第四行的意思是排除某些目錄或文件,使得這些目錄不會 rewrite 到 index.php 上,這一般用在圖片、js、css 等外部資源上。也就是說非 PHP 代碼都要排除出去。(這裡我排除了 images 目錄 css 目錄 js 目錄 以及 robots.txt 文件,當然 index.php 也應該被排除)
然後找到application/config/config.php文件,將:
$config['index_page'] = "index.php";
改為
$config['index_page'] = "";