将Cake核心升级到2.6.7后,插件控制器操作的URL路径不再有效。
例如,访问以下URL:mysite.com/plugin_name/controller_name/action
给了我一个控制器'找不到错误。这些路径在更新之前正在运行,这使我相信版本之间的API发生了变化。
答案 0 :(得分:1)
问题原来是我在bootstrap.php文件中调用CakePlugin :: load()之前有一些Configure :: load()调用。
在所有插件加载后移动Configure :: load()调用为我解决了这个问题。
至于为什么会发生这种情况: 看起来在CakePHP的2.6版本中,调用Configure :: load()将导致加载/lib/Cake/Config/routes.php。此文件加载Router类的所有URL解析模式。如果在包含此文件时没有加载插件,则不会加载插件的URL解析模式(如'/:plugin /:controller /:action / *')。