【发布时间】:2017-08-06 06:33:42
【问题描述】:
我是 Symfony 的新手,我正在做一个测试项目来提高我的知识。实际上,我正在学习Routing,我想做的是在请求扩展名为.disabled 的文件时拒绝访问。我说的是放在web 目录中的文件。因此,例如,位于web/config.php.disabled 的文件无法执行/下载。
然后我创建了一条这样的路线
/**
* @Route("{req}disabled", name="denyAccess", requirements={"req"=".+"})
*/
public function denyAccessAction(Request $request, $req)
{
return new Response('Access denied');
}
当我请求一个不存在的文件(例如http://my.website/file.php.disabled)时工作正常。但是当我请求现有文件时,该路径不起作用,我可以毫无问题地下载该文件。所以我猜请求放置在 web 目录中的现有文件将覆盖任何路由。
我怎样才能让我的路由比 web 目录中请求的文件具有更高的优先级?
【问题讨论】:
标签: php symfony url-routing