我通常不会在网上发布消息以获得帮助,但我觉得我已经尝试了所有内容而且我被卡住了。
我想将CodeIgniter从2.2版升级到3.0.3版(我也尝试过v3.0.2),然后我跟着相应的guide on codeigniter.com。但现在,只有默认控制器被加载,无论网址如何。
我在网上搜索过,我发现它可能来自:
但我仍然没有解决方案......
这必须是路由问题......
以下是我所做的一些测试: Table of tests
这是我的htaccess文件(我也在网上尝试了其他文件,结果是一样的):
RewriteEngine On #Checks to see if the user is attempting to access a valid file, RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d #Enable access to the images and css folders, and the robots.txt file RewriteCond $1 !^(index\.php|public|images|robots\.txt|css) RewriteRule ^(.*)$ index.php/$1 [L]
这是我的“application / config / routes”文件:
$route['default_controller'] = 'dashboard'; $route['404_override'] = 'auth/e404'; $route['translate_uri_dashes'] = FALSE;
任何帮助将不胜感激: - )
谢谢!
解
$ config ['enable_query_strings']在文件“application / config / config.php”中设置为“TRUE”。将其设置为“FALSE”解决了这个问题。这么简单......
答案 0 :(得分:0)
在codeigniter 3 wamp
我使用这个htaccess
Options +FollowSymLinks
Options -Indexes
DirectoryIndex index.php
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
你的错误404越过骑行不能在子文件夹中。
更改
$route['404_override'] = 'auth/e404';
要
$route['404_override'] = 'e404';
在config.php上
$config['base_url'] = 'http://localhost/your_project/';
// You can leave base url blank but not recommended because when you try to submit forms make cause issue.
$config['index_page'] = '';
$config['uri_protocol'] = 'REQUEST_URI';
答案 1 :(得分:0)
尝试将索引方法放在路径中,例如代替此
$route['blog'] = 'blog';
试试这个
$route['blog'] = 'blog/index';
如果这不起作用,您能确认在application / config / config.php中设置了正确的基本网址吗?