Php 如何在drupal中会话过期时将用户重定向到登录页面
当会话在drupal 6中过期时,是否有任何方法可以将用户重定向到登录页面。现在,当会话过期时,我收到一条消息“拒绝访问。您无权访问此页面。”。我真的不希望显示此消息,相反,如果我能将他们重定向到登录页面会更好。有人能帮我吗? 只需安装此模块。它将用登录表单替换经典的拒绝访问页面 这里有一个快速技巧: 将以下代码添加到页面模板文件(page.tpl.php)的顶部:Php 如何在drupal中会话过期时将用户重定向到登录页面,php,drupal,drupal-7,drupal-6,Php,Drupal,Drupal 7,Drupal 6,当会话在drupal 6中过期时,是否有任何方法可以将用户重定向到登录页面。现在,当会话过期时,我收到一条消息“拒绝访问。您无权访问此页面。”。我真的不希望显示此消息,相反,如果我能将他们重定向到登录页面会更好。有人能帮我吗? 只需安装此模块。它将用登录表单替换经典的拒绝访问页面 这里有一个快速技巧: 将以下代码添加到页面模板文件(page.tpl.php)的顶部: 我认为您可以在主题template.php中覆盖函数:template\u process\u page() 在这里,您可以检查全
我认为您可以在主题template.php中覆盖函数:template\u process\u page()
在这里,您可以检查全局$user,要检查is$user->uid,如果它等于0,请使用函数drupal_goto(),到您想要的页面为什么不尝试drupalIs专用社区?是否有任何用于终止会话的模块?@RajeevK。不,我没有使用任何已贡献的模块。除了包含另一个模块之外,它是否可以通过其他方式执行..?编辑includes文件夹中的common.inc文件是否是一个好主意?不,编辑common.inc不是一个好主意,你为什么不想使用这个模块呢?tanx for the info@RajeevK。只是想知道除了使用贡献的模块之外,我是否可以覆盖这个效果……)<代码>$\u服务器['REQUEST\u URI']仅在apache上可用。改为使用Drupal函数(它也会为您去掉前导斜杠,这样您也可以跳过
substr()
)。
global $user;
if (!$user->uid && $title == 'Access denied') {
header('Location: /user?destination=' . substr($_SERVER['REQUEST_URI'],1));
exit;
}