2014-11-06 61 views

回答

1

/favicon.ico是每個瀏覽器試圖從它訪問的任何站點獲得的東西,以在地址欄中顯示一個漂亮的圖標。我的第一個猜測是你的應用程序發送一個登錄表單回瀏覽器,而不是文件或404 NOT FOUND。

如果您有圖標,請確保瀏覽器無需先登錄即可下載圖標。

0

不要責怪Tomcat也不要你的web應用程序。他們給了瀏覽器要求的東西。根據Wikipedia,瀏覽器使用文件favicon.ico將圖標關聯到網站。在第一次連接時,瀏覽器獲取文件,然後將其緩存直到清除緩存。您可以配置一些瀏覽器在瀏覽器關閉時清除緩存。

1

謝謝你們,我嘗試了很多快速修復,並得到一個正確的工作。

我在我的登錄和索引jsp頁面中添加了以下代碼行,它不再返回錯誤。

 <link rel="icon" href="data:;base64,=">

再次感謝!

0

我只是覺得我會將這裏的評論凝結成一個連貫的答案和解決方案。我喜歡這個問題的作者有這個問題。

我保護我是用安全約束url-pattern的配置制定的部位(例如<的url-pattern >/* </url-pattern的>)從具有訪問我的網站的內容封鎖整個網站 - 包括favicon.ico文件。瀏覽器請求標籤/標題欄的favicon.ico文件作爲默認行爲。

我的網站有一個沒有指定favicon標籤的FORM認證的登錄頁面。安全行爲和瀏覽器會導致收藏夾圖標請求成爲登錄之後的第一個成功操作,而不是您的歡迎文件!因此,一旦您通過身份驗證,它就會向您顯示favicon.ico(或未找到圖像)。

如果您像我一樣配置您的網站,您可能需要避免從資源中檢索您的圖標。有兩種方法可以做到這一點,我可以想到:1)使favicon圖像base64存儲在<鏈接>元素的登錄頁面本身或2)使登錄頁面不需要圖像。兩種方法都需要使用<鏈接>元素語法:

(no image) 

&lt;link rel="icon" href="data:;base64,="&gt; 

(image as a data URI) 

&lt;link rel="shortcut icon" href="data:image/gif;base64,R0lGODlhIAAgAOf/ADEzMDo0LjY2O9oNHS09P101P1c4NTBCR2A3KHQwO8QaK4otL88aJWw3LL4gJL4gKcAhH5osMT1HO8khKdIeLURGQ9wcJ..." /&gt;