星期二, 10月 13, 2009

Remove "index.php" from Codeigniter URL

去掉Codeigniter中,網址的 index.php
有三個步驟:
  1. 打開 config.php (在 system/application/config裡),找到 $config['index_page'] = "index.php" 換成 $config['index_page'] = ""
  2. 建立一個名叫 ".htaccess" 的檔案,並放在網站專案的目錄中。
    這檔案的內容如下(只有五行):
    RewriteEngine on
    RewriteCond $1 !^(index\.php|resources|robots\.txt)
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php/$1 [L,QSA]
  3. 有時候,Codeigniter的 uri_protocol 的判斷會怪怪的,所以我們還是就改一下比較好。一樣打開 config.php (在 system/application/config裡),找到
    $config['uri_protocol'] = "AUTO" 換成 $config['uri_protocol'] = "REQUEST_URI"
完成,就這樣囉!

沒有留言: