1

我试图从 Internet 隐藏我的 Drupal7 管理页面,只允许从内部局域网访问。

我正在尝试隐藏 /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>

Apache 似乎接受了这一点,并且请求中的 urlencoding 字符似乎在处理请求之前就已解决(例如:/%55ser)

编辑:我注意到参数化路径,所以我还要检查这些类型:?q=admin

4

1 回答 1

1

比你列出的更多,只有*/delete一页。

模块可以通过实现告诉 Drupal 某些路径(除了开头的路径admin/)应该是管理的hook_admin_paths()

您可以调用相同的钩子来获取应视为管理的所有模式的列表,并相应地更新您的 vhost 文件:

$paths = module_invoke_all('admin_paths');

变量的开发打印输出$paths如下所示:

在此处输入图像描述

它应该让您对需要隐藏的路径有一个很好的了解。对于您的安装,打印输出可能看起来完全不同,这取决于您安装了哪些模块。

于 2012-08-27T23:48:48.333 回答