基本上我不想被搜索引擎「重複內容」處罰。我擔心,在某些情況下,webapp服務器可能會在可能正常顯示的頁面上生成異常。當我的webapp服務器有bug時應該怎麼辦?
例如,用戶可以張貼鏈接到互聯網上的以下兩頁:
www.example.org/nice-article
和
www.example.org/even-nicer-article
現在我的web應用程序通常將返回兩個不同的網頁,它們應包含豐富的內容這將是由谷歌等進行索引精細
我擔心的是,在某些情況下,我的web應用程序的服務器可能會遇到試圖爲這些異常時頁面:可能有一個錯誤,我們沒有抓住以前的版本,servlet可能會拋出異常,因爲它依賴的資源已關閉等。
在這種情況下,據我瞭解,一些異常捕捉正在進行,但我不確定我在做什麼是正確的。
在我的web.xml,我有這樣的事情:
<error-page>
<exception-type>java.lang.Throwable</exception-type>
<location>/WEB-INF/jsp/error.jsp</location>
</error-page>
和
<error-page>
<error-code>404</error-code>
<location>/WEB-INF/jsp/error.jsp</location>
</error-page>
我不知道我的web.xml是正確的在這裏。
我擔心的是,在例外的情況下被抓到,我從error.jsp文件顯示一條消息,告訴像「發生內部錯誤,請稍後再試」不過這對於我是什麼原因d是發送此作爲一個正常的頁面,而不是作爲一個錯誤頁面(以及因此所有損毀頁會得到引用的「重複內容」,因爲他們會全部顯示或多或少相同的消息)。
基本上我想知道兩件事情:
我應該拋出什麼狀態代碼,如果一個資源通常能夠獲得是下來的時候爬行的機器人(和客戶端的瀏覽器)嘗試訪問它(這是一個500嗎?)
我怎麼配置Tomcat來產生這樣的狀態碼
此外這將是巨大的,如果你能解釋的方式,我可以測試這種工作:比如我可以的telnet,看看如果我得到正確的錯誤代碼?
我不能相信爬蟲明顯的重複內容將不檢查HTTP響應代碼。他們肯定會認出500,這是每個Web服務器返回一個未捕獲的異常(至少默認)。 – biziclop 2012-03-30 15:00:03
@biziclop:yup我知道......我擔心的是我想確保我確實服務於500.不知怎的,我擔心我可以捕獲異常併發送所有*寫入*的常規頁面作爲內容:*「錯誤500:內部服務器錯誤等」*,但不會與500/503一起提供。 – 2012-03-30 15:25:15