我正在C#中使用ASP.NET 3.5 Web應用程序項目。我已經手動添加了Google友好的站點地圖,其中包含項目中每個頁面的條目 - 這不是CMS。可更新的Google Sitemap for ASP.NET 3.5 Web應用程序項目
<url>
<loc>http://www.mysite.com/events.aspx</loc>
<lastmod>2009-11-17T20:45:46Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
客戶端使用管理後端更新事件。除此之外,該網站相對靜態。我正在嘗試決定更新定期更新的幾頁網頁的<lastmod>值的最佳方式。
特別是,我使用的ListView控件的QueryStringField,提升SEO如下所述:
http://www.4guysfromrolla.com/articles/010610-1.aspx
當QueryStringField屬性設置,DataPager的呈現分頁界面作爲爬蟲可以關注和索引的一系列超鏈接。但是,如果Google在兩天前抓取了我的活動列表,並且與此同時,管理員又添加了十多個活動...說,頁面大小設置爲6;在這種情況下,Google SERP鏈接現在將指向錯誤的頁面。這就是爲什麼我需要確保網站地圖反映事件頁面一旦發生變化即可。
我已經看過其他SO問題的信息,並沒有找到我所需要的。任何人都可以提供一些指導或其他方法嗎?
UPDATE:
由於這是一個共享的託管環境,目錄觀察者/服務將無法正常工作:
How to create file watcher in shared webhosting environment
UPDATE:
開始意識到我可能需要向Google表明含有頁面已更新;更新最後修改的HTTP標頭?
優秀的迴應。我有一個管理系統,管理員必須設置一個複選框才能使事件生效,因此該方法將在那裏被調用。每小時一次的提醒+1;可以感受到一個額外的表格:-O – IrishChieftain 2010-01-31 01:50:58
如所承諾的,我已經完成了將它整合到Cyclemania中。目前,通過管理工具手動調用ping方法(當然,可以從其他方法調用它)。 該實現還具有記錄到數據庫表(正如您所暗示的)和ping延遲60分鐘(可配置)。數據分層有點快而且很髒,現在使用ADO。 ;) 請注意robots.txt文件,因爲站點地圖也在那裏引用。 Google現在可以從robots.txt中獲取站點地圖位置。 – MissingLinq 2010-02-01 01:20:25