Php 代码点火器线路有时不工作
我有个小问题。我正在使用Codeigniter 2.1.0,我的routes.php中有以下代码Php 代码点火器线路有时不工作,php,codeigniter,routes,Php,Codeigniter,Routes,我有个小问题。我正在使用Codeigniter 2.1.0,我的routes.php中有以下代码 $route['default_controller'] = "photo"; $route['404_override'] = 'error'; $route['photo/:num'] = 'photo/index/$1'; $route['people/:num'] = 'people/index/$1'; 奇怪的是,有时当我去它的工作,其他时候它重定向到我的错误页面 有人知道我的路线出
$route['default_controller'] = "photo";
$route['404_override'] = 'error';
$route['photo/:num'] = 'photo/index/$1';
$route['people/:num'] = 'people/index/$1';
奇怪的是,有时当我去它的工作,其他时候它重定向到我的错误页面
有人知道我的路线出了什么问题吗
已经提前谢谢了
Bob不确定是否是这种情况,但您可能希望在通配符周围加上括号:
$route['default_controller'] = "photo";
$route['404_override'] = 'error';
$route['photo/(:num)'] = 'photo/index/$1';
$route['people/(:num)'] = 'people/index/$1';
这是不对的
$route['photo/(:num)'] = 'photo/index/$1';
$route['people/(:num)'] = 'people/index/$1';
你必须写这条路线
$route['photo/(:num)'] = 'photo/$1';
$route['people/(:num)'] = 'people/$1';
这样,只允许使用数字
不需要索引。在Codeigniter中使用路由时,不要忘记.httaces文件
RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
并删除config.php文件
$config['index_page']=''中的index.php代码>是否尝试将(:num)
括在括号中?如果您在路由中使用$1
,则可能需要此选项。以前有此选项,但由于(:num)删除括号时出现错误。您有.htaccess文件正在从URL中删除index.php
,对吗?如果是这样,则不需要自定义路线。photo/1会自动转到photo/index/1。以前有此功能,但因为在(:num)时也出现了错误,所以我删除了括号。