我正在尝试使用 Codeigniter 设置到我网站上页面的路由,但我只是收到 403。我不明白为什么。
路由配置文件中的代码是:
$route['photo/(:num)'] = "viewphoto/view/$1";
$route['photo'] = 'photo';
$route['photos'] = "photospage/index";
$route['photos'] = 'photos';
$route['default_controller'] = 'homepage';
$route['homepage'] = 'homepage';
Run Code Online (Sandbox Code Playgroud)
当访问 mysite.com/photo/2(例如)时,它工作正常,主页也是如此。但是当访问 mysite.com/photos 时,我只收到 403 Forbidden 错误消息。
我无法解决这个问题,路由设置与 mysite.com/photo/2 路由完全相同。
它指向的控制器称为 photospage,其内部的函数称为 index。
如果我访问 mysite.com/photos/index 它可以工作......
非常感谢任何帮助:)
编辑:
将路由配置文件更改为以下内容,但当我访问 mysite.com/photos 时它仍然不起作用。我将控制器功能更改为“视图”而不是“索引”,但它仍然无法工作:(
$route['photos'] = "photos/view";
$route['photo/(:num)'] = "viewphoto/view/$1";
$route['default_controller'] = 'homepage';
Run Code Online (Sandbox Code Playgroud)
不过,主页和 photo/$id 仍然可以正常工作。
你的重写规则应该是:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
Run Code Online (Sandbox Code Playgroud)
您必须index.php从您的帐户中删除您的条目/application/config/config.php
验证设置是否正确,403 禁止错误可能是由于错误的.htaccess重写造成的。
| 归档时间: |
|
| 查看次数: |
37259 次 |
| 最近记录: |