所以我有一個奇怪的問題與.htaccess文件和codeigniter。我的本地計算機上有一臺wamp服務器,並且在那裏按預期工作。我的文件夾一樣,WAMP/WWW/my_app應用和程序my_app文件夾我有.htaccess文件這樣的:Codeigniter和.htaccess文件忽略index.php
ErrorDocument 404 /index.php
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /my_app/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
<IfModule !mod_rewrite.c>
ErrorDocument 404 /index.php
</IfModule>
在煤礦井下的config.php GILE我有:
$config['base_url']='';
$config['index_page']='';
$config['uri_protocol']='AUTO';
所以我嘗試上傳該項目的debian服務器上的鏈接像apps.myserver.com/my_app。我把我的應用程序放到文件夾var/www/my_app。但訣竅是它不起作用。
我已經嘗試將uri_protocol更改爲所有5個選項,但沒有更改。我也嘗試把.htaccess文件放在var/www而不是var/www/my_app中,但是也沒有改變。
當我嘗試訪問沒有index.php前綴的控制器時,我總是收到那個愚蠢的404 Not Found錯誤。
任何想法?
編輯:我檢查服務器上的phpinfo,發現mod_rewrite是在加載模塊。
首先檢查你的服務器上是否啓用了mod_rewrite,發送從頂部和底部刪除這個ErrorDocuemnt,並且只是註釋掉RewriteBase並且檢查 – umefarooq
所以我註釋掉除第3行和第7行以外的所有行,並且沒有任何反應。這是否意味着我沒有在服務器上重寫模塊,或者這意味着它沒有讀取我的.htaccess文件? – gabrjan
這是CI文檔RewriteEngine上的最小htaccess代碼 RewriteCond $ 1!^(index \ .php | images | robots \ .txt) RewriteRule ^(。*)$ /index.php/$1 [L] – umefarooq