我在 error.log 中收到这些消息:
Request URL: /files/thumbs1/1354046882.jpg
Stack Trace:
#0 /path/to/web/app/webroot/index.php(92): Dispatcher->dispatch(Object(CakeRequest), Object(CakeResponse))
#1 {main}
2013-05-08 13:44:16 Error: [MissingControllerException] Controller class FilesController could not be found.
Exception Attributes: array (
'class' => 'FilesController',
'plugin' => NULL,
)
图像文件 /files/thumbs1/1354046882.jpg 存在并显示。但除此之外,我在 error.log 中得到错误。我在视图 .ctp 中手动生成 url,如下所示:
<img src="/files/thumbs1/1354046882.jpg" alt="">
我不使用 echo $this->Html->image('cake_logo.png', array('alt' => 'CakePHP'));
如何添加 ControllerException,以便 webroot 中的目录“文件”不被识别为控制器。我没有 FilesController。或者是否有可能,“文件”是 CakePHP 中不应使用的受保护词?到目前为止,在 CakeBook 中找不到相关的内容。
/webroot 中的 .htaccess
<IfModule mod_rewrite.c>
RewriteCond %{HTTP_HOST} !www.domainname.com
RewriteRule (.*) http://www.domainname.com/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
我更新到 CakePHP 2.3。谢谢你的帮助。