簡體   English   中英

CodeIgniter刪除index.php顯示404

[英]CodeIgniter remove index.php displays 404

我知道這個主題在這里已經被看到很多次了,但是我沒有看到他們在這里解決我的問題...

我有一個使用Codeigniter的應用程序。 我嘗試刪除URL中的index.php,但是今天我似乎受到了詛咒。

這是我的config.php文件中的內容:

$config['base_url']   = "http://".$_SERVER['SERVER_NAME']."/";
$config['index_page']    = "";
$config['uri_protocol']  = 'AUTO';

這是我的.htacess(如CI建議):

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

這樣,我無法在URL中刪除index.php。 實際上,它可以很好地刪除它,但是我在屏幕上看到了漂亮的404。

我檢查了phpinfos()來查看是否正確激活了mod_rewrite,並且這一方面沒有問題。

**編輯**

我檢查了我的apache日志,這是我所擁有的:

[Wed Jul 18 12:27:08 2012] [error] [client 127.0.0.1] File does not exist: [PATH]/trunk/user

真正的路徑應該是:

[PATH]/trunk/application/controllers/user

我看到所有這些東西都是在index.php文件中設置的,但似乎從未調用過...

有人可以建議我解決這個問題嗎?

謝謝 !

試試這個:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

第一個條件確保該請求不是針對有效文件,第二個條件確保該請求並非針對有效目錄。 文件系統中實際上不存在的所有文件或文件夾請求都通過index.php發送。

您不能阻止對index.php頁面的訪問,因為它是CI所基於的主頁。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM