if/else语句重定向不起作用


if/else statement redirect not working

我根据条件进行了重定向。

我有一个CMS,我正在开发一个移动版本的网站。主CMS链接到site_url.com,而移动版本位于子域m.site_url.com上。以下功能是上述CMS中经过编辑的注销功能。

CodonModule作为php包含在移动站点的index.php中。这基本上加载了CMS的所有功能。

我提出的解决方案是否允许我在下面所做的重定向,或者我是否需要其他东西来找到子域,并根据这些信息完成重定向?目前,它总是将我重定向到else参数的链接,无论我在哪里触发脚本,无论是在子域上还是在主域上。因此,我想修复下面的脚本,并使条件发挥作用。

Auth::LogOut触发注销过程。然后我添加一个重定向,让用户重定向到桌面页面(else参数)或移动版本(如果它们在子域上)。

当我在$subdomain行下方执行$die(subdomain)时,它会打印出域的名称。它不应该打印出子域的m吗?或者我把这段代码弄得一团糟吗?

class Logout extends CodonModule 
{
    public function index()
    {
       $sub_domain = array_shift(explode(".",$_SERVER['HTTP_HOST']));
       if($sub_domain == 'm')
       {
           Auth::LogOut();
           header('Location: http://m.site_url.com/index.php');
       }
       else
       {
           Auth::LogOut();
           header('Location: '.url('/'));
       }
    }
}

尝试在文件顶部添加session_start();,就在<?php的正下方,在这里你定义了index()函数,如果我是对的,会话甚至没有启动(IDK),但尝试添加它。

也许它会起作用。。