我正在尝试在默认控制器文件夹中创建Admin控制器。我创建了" admin" "控制器"中的文件夹文件夹中。
在路线档案中:
Route::get('/admin', 'admin/AdminController@showAdminIndex');
AdminController.php文件:
namespace Admin;
class AdminController extends \BaseController {
public function showAdminIndex()
{
return "Hello World";
}
}
我在浏览器上收到错误:
403 Forbidden
出了什么问题?
答案 0 :(得分:9)
问题是您在admin
目录中有一个public
子文件夹。 Laravel附带的.htaccess
仅在请求的URI处不存在目录或文件时启动应用程序(这就是CSS和其他资产仍然有效的原因)
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
你基本上有两个选择:
重命名其中一个,路径或文件夹。如果public/admin
用于资产,则可以将其放在public/assets/admin
中。
将您的.htaccess
更改为不忽略文件夹以进行重写
像:
# Handle Front Controller...
# RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]`