如何配置或修改Drupal以完全删除Drupal的登录,即使对于管理员?

时间:2012-05-09 14:22:42

标签: drupal login

这是背景。

我需要在两台服务器上部署SAME Drupal网站。第一个用于互联网访问,我们不希望任何Drupal登录,甚至不是管理员。

第二台服务器位于我们组织的内部网络上,此服务器上的Drupal网站只是常规服务器。

在第一台服务器上配置/修改Drupal的优雅方法是什么?

对我来说,对于互联网Drupal来说,像http://myorg.com/user这样的链接仍然有用,但是应该没有形式。如果我想这样做,我需要修改哪些文件以及如何修改?

另一个解决方案可能是没有Drupal的任何配置/修改,第一个服务器可以有重定向,任何http://myorg.com/user将被重定向到另一个页面。这可行吗?怎么样?

我使用的是Drupal 7,服务器环境是Unix。

非常感谢任何输入!

2 个答案:

答案 0 :(得分:1)

Drupal中的任何路径都可以通过hook_menu_alter进行修改。

简单创建自定义模块,使用挂钩,并设置所需的路径(用户,用户/登录)拒绝访问。

您可以为用户设置禁止注册以禁用用户/注册的配置。

这些项目是一个数组,因此您只需添加属性“访问回调”并将其设置为FALSE。

function mymodule_menu_alter(&$items) {
  //disable the user login paths
  $items['user']['access callback'] = FALSE;
  $items['user/login']['access callback'] = FALSE;
}

答案 1 :(得分:1)

Bright Plum建议的另一种选择是你可以修改.htaccess。禁止所有/ admin路径和/ user路径。

但Bright Plum回答的方式可能会好一些。因为它允许您在第一个服务器上使用相同的代码(使用不同的数据库),而在第二个服务器上启用模块,而在第二个服务器上,您永远不会启用它。)

希望有所帮助。