在CakePHP 2.2中找不到favicon.icoController
我刚刚检查了在CakePHP 2.2中找不到favicon.icoController,cakephp,cakephp-2.0,cakephp-2.1,cakephp-2.3,Cakephp,Cakephp 2.0,Cakephp 2.1,Cakephp 2.3,我刚刚检查了error.log内部cake/app/tmp,发现有一个与'fa'相关的错误 2013-07-24 10:12:00错误:[MissingControllerException]找不到控制器类Favicon.icoController #0 C:\inetpub\wwwroot\app\webroot\index.php(92):调度程序->调度(对象(CakeRequest),对象(CakeResponse)) #1 C:\inetpub\wwwroot\index.php(42
error.log
内部cake/app/tmp
,发现有一个与'fa'相关的错误
2013-07-24 10:12:00错误:[MissingControllerException]找不到控制器类Favicon.icoController
#0 C:\inetpub\wwwroot\app\webroot\index.php(92):调度程序->调度(对象(CakeRequest),对象(CakeResponse))
#1 C:\inetpub\wwwroot\index.php(42):要求('C:\inetpub\wwwr…'))
#2{main}
我很困惑,因为我可以在我的网站上看到favicon,它与网站的其他图像位于webroot/img
。我使用的是.png
格式
另外,在webroot
中有一个名为favicon.ico
的默认favicon,我相信它就是CakePHP
这是我在版面标题中加载自己的favicon的方式:
echo $this->Html->meta('icon', $this->Html->url('/img/favicon.png'));
这个问题指出了什么?尝试不使用Html::url并添加类型:
$this->Html->meta('icon', '/img/favicon.png', array('type' => icon');
尝试不使用Html::url并添加类型:
$this->Html->meta('icon', '/img/favicon.png', array('type' => icon');
favicon.ico不存在
默认情况下,CakePHP中有以下路由:
/:controller
如果请求一个不存在的文件,它将显示为丢失的控制器错误。例如,请求一个存在“just works”的文件:
删除该文件将导致404:
$ rm favicon.ico
$ curl -I http://cakephp.2.dev/favicon.ico
HTTP/1.1 404 Not Found
Date: Wed, 24 Jul 2013 11:26:52 GMT
Server: Apache/2.2.22 (Ubuntu)
X-Powered-By: PHP/5.4.17RC1
Set-Cookie: CAKEPHP=0h68rnghqaku6d8eo30od1ga06; expires=Wed, 24-Jul-2013 15:26:53 GMT; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Length: 2861
Vary: Accept-Encoding
Content-Type: text/html; charset=UTF-8
除此之外,生成的错误消息是针对丢失的
控制器的:
$ curl -i http://cakephp.2.dev/favicon.ico
...
<em>Favicon.icoController</em> could not be found.</p>
$curl-ihttp://cakephp.2.dev/favicon.ico
...
找不到Favicon.icoController
因此-要获取问题中的错误消息-文件不存在(或由于文件权限而无法读取)。favicon.ico不存在
默认情况下,CakePHP中有以下路由:
/:controller
如果请求一个不存在的文件,它将显示为丢失的控制器错误。例如,请求一个存在“just works”的文件:
删除该文件将导致404:
$ rm favicon.ico
$ curl -I http://cakephp.2.dev/favicon.ico
HTTP/1.1 404 Not Found
Date: Wed, 24 Jul 2013 11:26:52 GMT
Server: Apache/2.2.22 (Ubuntu)
X-Powered-By: PHP/5.4.17RC1
Set-Cookie: CAKEPHP=0h68rnghqaku6d8eo30od1ga06; expires=Wed, 24-Jul-2013 15:26:53 GMT; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Length: 2861
Vary: Accept-Encoding
Content-Type: text/html; charset=UTF-8
除此之外,生成的错误消息是针对丢失的
控制器的:
$ curl -i http://cakephp.2.dev/favicon.ico
...
<em>Favicon.icoController</em> could not be found.</p>
$curl-ihttp://cakephp.2.dev/favicon.ico
...
找不到Favicon.icoController
因此-要获取问题中的错误消息-文件不存在(或由于文件权限而无法读取).生成的html也是图标类型:
生成的html也是图标类型:
错误涉及名为Favicon.icoController
的控制器,而不是任何.ico
文件。此外,正如我所说,.ico
文件存在于webroot
文件夹中。(默认情况下)您从哪里获得请求Url:/favicon.ico
?不是我的错,是的。你是对的。我发现我没有把它很好地指向另一层。谢谢该错误涉及名为Favicon.icoController
的控制器,而不是任何.ico
文件。此外,正如我所说,.ico
文件存在于webroot
文件夹中。(默认情况下)您从哪里获得请求Url:/favicon.ico
?不是我的错,是的。你是对的。我发现我没有把它很好地指向另一层。谢谢