2012-05-26 49 views
7

當一個網頁提供需要用戶登錄有兩種方法可以讓他們驗證自己的身份內容:需要登錄的網頁應該重定向到登錄頁面或者只顯示錶單?

  1. Web應用程序商店的網址,然後重定向到一個單獨的登錄頁面,則在一成功驗證後,它會重定向回存儲的URL;

  2. 取代受保護的內容,頁面顯示登錄表單(保持在同一個URL),並且在成功登錄後,頁面刷新並顯示真實內容。

我想了解以下內容:

  • 如果我有選擇1何去何從將是正確的HTTP狀態代碼使用? (302 is probably the correct one,所以我只是在這裏列出這個問題只是爲了完整性。)
  • 什麼是適當的選項2 http狀態碼? 401是誘人的,但我不希望使用http身份驗證。
    • 一個子問題:爲什麼http身份驗證很少見?
  • 如何確保抓取工具不會將受保護內容的標題,關鍵字,描述和其他元數據與登錄表單關聯起來?

而實際上這是我很想知道:

  • 待辦事項HTTP狀態代碼在上述情況下,要緊的了?使用適當的狀態代碼有沒有實用的好處?

回答

2

您要使用的選項1.這樣做的原因是,如果你看每一個需要登錄的網址形式你有兩個問題:

  1. 搜索引擎會認爲登錄表單是該URL的實際內容而不是真實內容。顯然這不是你想要的。
  2. 谷歌會看到所有這些頁面重複的內容,這是一件壞事。他們的Panda算法專門針對大量重複內容,這可能會導致整個網站因低質量內容而受到處罰。

使用302重定向將是正確的方式來做到這一點,因爲你已經發現。並且使用正確的狀態碼很重要。搜索引擎解釋它們的含義併發送錯誤的狀態代碼可能會導致負面後果。由於發送正確的HTTP狀態碼很容易,所以這絕對值得一做。