0

在路由文件中有一行像

Router::connect('/', array('controller' => 'admins', 'action' => 'login'));

如果有人写像http://abc.com/webroothttp://abc.com/css_or_js这样的 URL,我想做点什么,那么它也会进入管理员的登录操作。如果是这样,那我该怎么办?

Router::connect('/webroot/*', array('controller' => 'admins', 'action' => 'login'));
Router::connect('/css/*', array('controller' => 'admins', 'action' => 'login'));
Router::connect('/js/*', array('controller' => 'admins', 'action' => 'login'));

但它webroot现在有效,不适用于 css 或 js 文件夹或任何其他文件夹。请在这件事上帮助我。我会非常感谢你。

4

1 回答 1

0

css 和 js 路由不起作用的原因是 Cake 的调度程序将它们视为资产,因此它完全跳过路由过程并交付资产。如我所见,解决此问题的唯一方法是编写自定义调度程序。

无论如何,您不应该为 webroot 目录及其文件夹编写路由。webroot 文件夹应该是虚拟主机上的文档根目录,因此被视为站点的根目录。

于 2012-12-12T16:04:20.233 回答