2012-05-22 66 views
2

從谷歌IIS 7手託谷歌的If-Modified-Since HTTP標頭要求

確保您的網絡服務器支持If-Modified-Since的HTTP標頭。 此功能可讓您的網絡服務器告訴Google您的 內容自上次檢索您的網站後是否發生了變化。支持這個 功能可以節省帶寬和開銷。

我們運行一個Umbraco網站,想知道如何滿足這個要求,我知道數據存在的問題是「動態的」,並希望至少說1天后過期。

由於上次Google更新,我的客戶和她的SEO代表感覺很重要。

提前致謝!

回答

2

這與Umbraco沒有直接關係,而是我如何解決類似情況的更一般的描述。

我首先確保數據庫中存在LastModified/LastUpdated字段,並且在插入或更新郵件時更新它。然後我使用Last-Modified HTTP-Header將它發送給客戶端。

當客戶端再次請求同一頁面併發送If-Modified-Since標題時,我會查看它發送的日期。將它與數據庫中的值進行比較。如果相同,我將Status 304 Not Modified返回給客戶端並停止執行ASP.NET代碼。

如果值不同,我像往常一樣加載頁面。

基本上我所要做的就是發送Modified-Since頭到客戶端,從客戶端讀取If-Modified-Since頭,並在該值上做一個額外的處理。這應該可以在Umbraco中完成,但由於我自己沒有運行,所以我不能告訴你在哪裏做這些改變。