我已经尝试过解决之前在这里提出的类似问题,并尝试了几种解决方案,但是它们似乎没有用。
我的localhost
根目录中有一个名为“ projectX”的文件夹,该文件夹是 CodeIgniter项目
该项目有一个称为仪表板的控制器。
可通过以下链接访问仪表板http://localhost/projectX/index.php/dashboard
但是,如果我尝试没有执行此操作,则index.php
(http://localhost/projectX/dashboard)表示未找到。
这是我的.htaccess文件的样子(该文件位于应用程序文件夹外部,位于projectX文件夹的根目录中)
RewriteBase /projectX
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/system.*
RewriteRule ^(.*) index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+) index.php?/$1 [L]
这是我的配置文件:-
$config['base_url'] = "http://localhost/projectX/";
/*
|--------------------------------------------------------------------------
| Index File
|--------------------------------------------------------------------------
|
| Typically this will be your index.php file, unless you've renamed it to
| something else. If you are using mod_rewrite to remove the page set this
| variable so that it is blank.
|
*/
$config['index_page'] = '';
/*
我在做什么错了?
答案 0 :(得分:1)
检查以下规则:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
并也更改此内容
$config['uri_protocol'] = "AUTO"
// Replace with
$config['uri_protocol'] = "REQUEST_URI"
答案 1 :(得分:0)
在您的.htaccess文件中尝试
Options All -Indexes
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]