我刚刚设置了一个新的网站http://www.reviewongadgets.com
但是网址渲染存在问题
当我将URL放在下面时,它不起作用并且给出了找不到页面的错误 http://www.reviewongadgets.com/latest-mobile
但它适用 http://www.reviewongadgets.com/index.php/latest-mobile
我不想在我的网址中显示index.php,它应该是http://www.reviewongadgets.com/latest-mobile 你能告诉我该怎么办?
这是我的.htaccess
文件内容:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
配置文件内容:
$config['base_url'] = "http://www.reviewongadgets.com";
$config['index_page'] = "";
为我的另一个网站工作的相同类型配置
将我的.htaccess
内容更改为
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>
答案 0 :(得分:3)
此问题的最常见解决方案通常是在?
中的index.php之后缺少问号.htaccess
,所以
RewriteRule ^(.*)$ index.php/$1 [L]
应该是
RewriteRule ^(.*)$ index.php?/$1 [L]
E.G。在我的Windows XAMPP上,我不需要“?”,但在Linux托管环境中通常需要它。
答案 1 :(得分:2)
我同意Vlakorados,但我会分享我的.htaccess设置
RewriteEngine on
RewriteCond $1 !^(index\.php|images|css|js|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php?/$1 [L,QSA]
完美的工作。
我希望这对您的CI网站起作用
答案 2 :(得分:0)
您可能未加载rewrite_module
模块。
尝试运行以下命令。
sudo a2enmod rewrite