2012-08-27 103 views
1

我試圖從互聯網隱藏我的Drupal7管理頁面,只允許從內部局域網訪問。隱藏Drupal管理員

我試圖隱藏/ admin/user和*/edit,但還有什麼我需要否認,禁止訪問Drupal管理員的所有部分?

<Location ~ "(/([aA][dD][mM][iI][nN]|[uU][sS][eE][rR])|/[eE][dD][iI][tT])"> 
    Order deny,allow 
    Deny from all 
    Allow from 12.193.10.0/24 
</Location> 

阿帕奇似乎接受了這一點,並在請求URL編碼字符似乎請求被處理之前加以解決(如:/%55ser)

編輯:我已經注意到了參數化的路徑,所以我還會去檢查這些種類:?q = admin

回答

1

這裏有超過你列出的,*/delete頁面爲一個。

模塊可以告訴Drupal某些路徑(除了那些開頭admin/)應該通過執行hook_admin_paths()來管理。

你可以調用相同的鉤來獲取應被視爲管理的所有模式的列表,並相應地更新您的虛擬主機文件:

$paths = module_invoke_all('admin_paths'); 

$paths變量的devel的打印輸出看起來是這樣的:

enter image description here

它應該給你你需要隱藏的路徑的一個不錯的主意。打印輸出對於您的安裝可能看起來完全不同,它取決於您安裝的模塊。

+0

謝謝克萊夫。真的有用的信息。 – LarsK