【发布时间】:2016-07-01 00:07:32
【问题描述】:
我正在使用 CI 开发一个网站,今天我遇到了一个问题。 这是我的链接。
http://example.com/subfolder/site/page/Snowman_Trek_24_Days
我想更改我的链接
http://example.com/subfolder/Snowman_Trek_24_Days
我更新了我的配置文件 -
$config['uri_protocol'] = 'QUERY_STRING';
$config['enable_query_strings'] = TRUE;
我也测试了这个 -
$config['uri_protocol'] = 'PATH_INFO';
$config['enable_query_strings'] = TRUE;
在 route.php 文件中我使用了这段代码 -
$route['default_controller'] = 'site';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
$route['page/(:any)'] = "site/page/$1";
我的 htaccess 代码是:-
RewriteEngine On
RewriteBase /folder/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [QSA,L]
做完这一切后,我得到了这个错误:- 无法确定应该显示什么。路由文件中没有指定默认路由。谁能帮帮我。
【问题讨论】:
-
路线的顺序很重要...
default_controller永远不应位于顶部,因为它会覆盖其他所有内容...default_controller位于底部。通过注释掉路线并一次添加一条路线来解决问题。
标签: php .htaccess codeigniter routing