2010-07-20 52 views
5

我試圖使用Codeigniter OpenID library和一切工作正常與默認配置CI沒有.htaccessCodeigniter,OpenID和.htaccess

當我通過改變config.php.htaccess我得到404找不到網頁當我嘗試驗證我的OpenID刪除index.phphttp://ci.dlsb.eu/test/

誰能告訴我在哪裏,我錯了嗎?

的config.php

$config['index_page'] = ""; 

的.htaccess

RewriteEngine on 
RewriteBase/
RewriteCond $1 !^(index\.php|images|robots\.txt) 
RewriteRule ^(.*)$ /index.php/$1 [L] 

回答

5

RewriteRule嘗試在每個目錄下,其中,從我可以告訴,發生得太創建PATH_INFO在請求處理階段後期才能正常工作。

最好的辦法是根本就沒有這樣做,因爲笨不需要它的功能:

RewriteEngine on 
RewriteBase/
RewriteCond $1 !^(index\.php|images|robots\.txt) 
RewriteRule ^(.*)$ /index.php 

笨應該能夠找出正確的請求是對自己,前提是你左$config['uri_protocol']設置爲AUTO。如果不是,則應將其設置爲AUTOREQUEST_URI

+0

好的,我修復了我的.htaccess,$ config ['uri_protocol']設置爲REQUEST_URI,但我仍然得到相同的錯誤... – 2010-07-20 16:39:04

+1

是的,我可能有點偏離基地。這是因爲表單提交的URL沒有結尾斜槓,所以CodeIgniter的路由以某種方式失敗。我會檢查,看看爲什麼會這樣,並讓你知道如何解決它。 – 2010-07-20 17:24:26

+1

當我設置$ config ['url_suffix'] =「/」;一切工作正常。謝謝蒂姆! – 2010-07-20 17:38:25