2017-03-06 2 views
0

IEにfaviconを設定しようとしています。アクセスしていないという警告が表示されます。Internet ExplorerのCakephp Favicon

2017-03-06 19:43:25 Error: [Cake\Routing\Exception\MissingControllerException] Controller class Favicon.ico could not be found. 

他のブラウザでは、問題なく動作しています。

私はまだ、次のコード

<link rel="icon" type="image/x-icon" href="url/favicon/favicon-32x32.png" sizes="32x32"> 
<link rel="icon" type="image/x-icon" href="url/favicon/favicon-16x16.png" sizes="16x16"> 
<link rel="shortcut icon" href="url/favicon/favicon-16x16.png" type="image/x-icon"> 

を持って、それがエラーを与える静止画。

ideias?

+0

の問題が修正されました答えを皆のおかげであなたは「直接URL」とエラーが発生するコードの一部を交換しました。私たちが手伝ってくれることは間違いありません。 – Dave

+1

@あなたは正しいです、それを修正しました! :) – Cafn

+0

IEの多くのバージョンがPNG favアイコンをサポートしているとは思わないが、すでにicoフォーマットを試したことはありますか? – ahoffner

答えて

0

はルート

Router::redirect(
    '/favicon.ico', 
    'url.ico', array('status' => 302) 
); 
1

TL; DR

favicon.icoという名前のアイコンファイルを作成し、サイトのルートにそれを置きます。詳細

慣例により、それがサイトを訪れたとき、IEは/favicon.icoを探します。現代版もPNGアイコンをサポートしているので、この問題は無害で無視することができます。あなたがこの問題を修正するために何ができるか

  • は、Webサイトのルートにfavicon.icoを提供します。これにより、ブラウザーが探しているものをいくつか与えている間、失敗を防ぐことができます。
  • CakePHPがエラーを無視するようにします。明らかに、アクセスはCakePHPを騙します.CakePHPは、これがいくつかのPHPコードにルーティングされなければならないと考えています。 CakePHPがこのアクセスをそれが何であるか(すなわち静的ファイルへのアクセス)と見なすことができれば、通常の404エラーと同じようになります。 404のような人はいませんが、少なくともFavicon.icoという仮想コントローラの探求とは違って、これは正しい動作です。