2009-10-20 158 views
4

我剛剛建立了一個新的Drupal站點,基於社區。有一些論壇包含「敏感」信息,但令人難以置信的是,Drupal自動生成分類術語的RSS源,這是論壇的基礎。Drupal - 刪除RSS

有沒有內置的方式來關閉它!或者是一個模塊來控制生成的Feed ...這是一個很大的問題。

使用Drupal 6.14。我不想破解的核心,但如果有人知道的方式來解決這個問題...這將是巨大的

感謝

+0

不屬於serverfault,刪除標籤。 – Grayside 2009-10-25 01:51:24

回答

3

現在有一個Drupal模塊,可以這麼做:RSS Permissions。以下是其項目頁面的摘錄:

爲博客,分類,聚合器和主站點的RSS源設置基於角色的權限設置。此模塊不會完全禁用RSS提要:通過Views模塊創建的RSS提要和其他未在此處列出的提要沒有關聯的權限。

RSS權限模塊,您可以禁用部分或全部RSS提要根據不同的用戶角色,

+0

最後修補了一些與.htaccess(我記得)的東西,但是一個可憐的修復 - 感謝你發佈這個,模塊解決方案會好得多。 – luke 2010-02-18 20:00:01

5

你可以嘗試接管敏感的網址,並提供自定義模塊中的hook_menu通話空白頁面或錯誤消息。把它們關掉應該是核心,谷歌搜索在這個問題上顯示了很多脾氣暴躁的人。

+3

hook_menu_alter,併爲每個RSS路徑設置爲FALSE的'頁面回調'或'訪問回調'。 – Grayside 2009-10-20 23:04:22

4

如果您使用的是Views模塊,您可以啓用taxonomy_term覆蓋它提供的功能,並編輯它提供的兩個饋送顯示,調整它們僅適用於某些詞彙表,甚至強制404請求任何請求。

請注意,這只是ceejayoz'(正確)建議的變體,因爲該視圖會「接管」供稿網址併爲它們提供不同的服務。

+0

我更喜歡這個解決方案,作爲一個安全但有用的中間地帶。 – Grayside 2009-10-20 23:06:22

1

你可以在system.admin在system_rss_feeds_settings功能擴展的形式節「選項」值的列表。 inc - 在數組中添加「0」作爲值。然後,這會將0作爲「每個饋送中的項目數量」的值顯示,從而抑制RSS饋送生成。

+1

感謝您的答覆 - 正如上面發佈的phpdiva,現在有幸得到了一個模塊來讓這個更容易:) – luke 2010-12-18 20:34:46

1

這適用於自定義模塊。它將刪除該頁面以及該頁面的HTML鏈接,這是針對D7的。確保你沖洗緩存。

function MYMODULE_menu_alter(&$items) { 
    $items['rss.xml']['page callback'] = 'drupal_not_found'; 
} 

function MYMODULE_html_head_alter(&$head_elements) { 
    foreach ($head_elements as $key => $v) { 
    if (strstr($key, 'rss.xml')) { 
     unset($head_elements[$key]); 
    } 
    } 
}