我需要爲訪問者提供對私人wiki的訪問。如何啓用對關閉(私人)wiki的訪問?
這個wiki對所有匿名用戶都是封閉的 - 您必須登錄才能看到內容,但我需要提供一個單一的履帶(由用戶代理字符串和單個IP標識)完全訪問,所以內容可以被索引。這是一個內部爬蟲,因此只有在成功登錄後才能訪問其資源。
有關如何啓用訪問單個客戶端(而不是用戶,因爲爬蟲無法將自己登錄到wiki中)的任何建議?
我需要爲訪問者提供對私人wiki的訪問。如何啓用對關閉(私人)wiki的訪問?
這個wiki對所有匿名用戶都是封閉的 - 您必須登錄才能看到內容,但我需要提供一個單一的履帶(由用戶代理字符串和單個IP標識)完全訪問,所以內容可以被索引。這是一個內部爬蟲,因此只有在成功登錄後才能訪問其資源。
有關如何啓用訪問單個客戶端(而不是用戶,因爲爬蟲無法將自己登錄到wiki中)的任何建議?
實際上有解決這個問題的方法。 正如我所提到的一個爬蟲將使用特定的IP,它只會是爬蟲使用它。如此快而骯髒,但仍然是一個文明的方式做到這一點:
$crawler_ip = '1.2.3.4';
if ($_SERVER['REMOTE_ADDR'] == $crawler_ip) {
$wgGroupPermissions['*']['read'] = true;
}
簡單,是吧? :)
如果您有權訪問數據庫,則可以在太陽能等系統中使用數據庫搜尋器來爲您執行此操作。
我確實在使用Solr,但我只是在網上找到的教程,因此需要更多地瞭解如何使用它來完成數據庫爬行。我使用Nutch來抓取頁面。不完全理解它的整個理念,因爲我只是開始玩它,所以我需要更多地閱讀它。 – 2011-01-26 16:47:29
您可以爲您的抓取工具創建自定義用戶組,假設我們稱之爲「抓取工具」。因爲它必須登錄纔是最簡單的解決方案。
只要給它這樣寫的權限:
$wgGroupPermissions['*']['read'] = false;
$wgGroupPermissions['crawler']['read'] = true;
參考:http://www.mediawiki.org/wiki/Manual:User_rights#Changing_group_permissions
編輯嗯等待,我誤解。抓取工具可能不是一個登錄賬戶?堅持,檢查您是否可以設置對IP的權限。
你爲什麼要使用搜尋引擎?爲什麼不使用默認搜索或Lucene? – Wikis 2011-01-26 21:18:59
因爲Wiki只是Intranet的一部分。我想要實現的是全面的搜索。我們目前使用Wiki的Lucene搜索插件,但Intranet上有幾個區域需要搜索。 – 2011-01-27 07:28:27