Apache rewrite rules for CodeIgniter

CodeIgniter 本來的網址看起來像是這樣

http://tzangms.com/index.php/profile/edit

不過可以用 mod_rewrite 改寫成這樣

http://tzangms.com/profile/edit

一開始在用 CodeIgniter 的時候為了要把網址弄漂亮一點, 在 modrewrite 上搞了很久, 雖然 CodeIgniter 的 document 寫的很棒! 但是 CodeIgniter URLs 這一篇裡面寫到關於 modrewrite 的部份就只有一點點。

為了要將 tzangms.com CI 化, 就免不了要再處理一次 modrewrite, 只是這次是在 godaddy 租的主機, 所以只能寫 .htaccess 了, 在處理上一篇的 No input file specified. 的問題 時, 看到了 CodeIgniter wiki 上的 modrewrite 章節, 這篇寫的很完整阿!!!

所以直接! 第一個步驟, htaccess 內容如下, done!

```
RewriteEngine On RewriteBase / RewriteCond %{REQUESTFILENAME} !-f RewriteCond %{REQUESTFILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L]


ErrorDocument 404 /index.php
```

第二個步驟, 接著修改

system/application/config/config.php

找到下面這一行

$config['index_page'] = "index.php";

改成

$config['index_page'] = "";

沒錯, 這樣就樣就解決了阿!

tzangms

Read more posts by this author.

Subscribe to Oceanic / 海海人生

Get the latest posts delivered right to your inbox.

or subscribe via RSS with Feedly!