我正在尋找最好的解決方案我如何能確保我這樣做正確:的robots.txt和谷歌日曆
我有我的網站上一個日曆,用戶在其中可以採取的iCal日曆和飼料將其導入到其偏好的外部日曆中(Outlook,iCal,Google日曆等)。
爲了阻止壞人從* .ics文件抓取/搜索我的網站,我已經設置Robots.txt以禁止存儲訂閱源的文件夾。
所以,從本質上講,一個iCal供稿可能看起來像:WebCal中://www.mysite.com/feeds/cal/a9d90309dafda390d09/feed.ics
我明白上面是仍然公開網址。但是,我有一個功能,用戶可以根據需要更改其Feed的地址。
我的問題是:除Google日曆外,所有外部日曆在導入/訂閱日曆Feed時都沒有問題。它會拋出以下消息:由於robots.txt限制,Google無法抓取該網址。 Google's Answer to This。
因此,圍繞搜索後,我發現了以下工作:
1)安裝一個PHP文件(我用的),基本上強制下載的文件。它基本上是這樣的:
<?php
$url = "/home/path/to/local/feed/".$_GET['url'];
$file = fopen ($url, "r");
if (!$file) {
echo "<p>Unable to open remote file.\n";
exit;
}
while (!feof ($file)) {
$line = fgets ($file, 1024);
print $line;
}
fclose($file);
?>
我試過使用這個腳本,它似乎與谷歌日曆一起工作,沒有問題。 (雖然我不確定它是否會更新/刷新,但我仍然在等待看看它是否有效)。
我的問題是這樣的:有沒有更好的方法來處理這樣的問題?我想保留當前的Robots.txt,以便不允許抓取* .ics文件的目錄並隱藏文件。
的robots.txt谷歌的網站管理員工具幫助頁面,大多數主要的搜索引擎爬蟲會履行一個完全自願的機制,但惡意用戶將完全忽略(實際上,作爲源使用如果您實際上鎖定了您網站上的特定網址,請抓取地點) – 2011-01-14 03:41:38