URL 需要名为 index.php 的文件

File named index.php needed in URL

虽然 Codeigniter 托管在 Godaddy 或 Speedhost 上,但 URL 的工作方式类似于 - http://www/host_name.com/admin/home but it doesn't work on Amazon's Linux AMI instance or Even with Ubuntu Instance as we need to introduce the index.php in between in URL as shown below - http://www/host_name.com/index.php/admin/home

我在项目根目录中包含 .htaccess 文件(此处为 admin_portal),但仍然不会成功。以下是我的 .htaccess 文件的内容。

DirectoryIndex index.php
RewriteEngine on
RewriteCond  !^(index\.php|(.*)\.swf|forums|images|css|downloads|jquery|js|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php? [L,QSA]

谢谢, 拉维

将此添加到您的 .htaccess:

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI} ^/$
RewriteCond %{REQUEST_URI} !^/index.php [NC]
RewriteRule ^$ /index.php    [R=301,L]

确保您已启用 mod_rewrite。

如果将 apache 运行 作为您的网络服务器并且您可以在您的实例上访问命令 shell,您可以使用...

sudo a2enmod rewrite

然后重启服务器

sudo service apache2 restart