让帝国cms支持https访问后台 解决访问白屏

2017 年 3 月 18 日 0 条评论 2.02k 次阅读 0 人点赞

前段时间把之前一个网站升级了https访问,登录后台发现一片空白,什么都没有显示。后来debug才发现,帝国cms后台竟然不支持https,源码没有做判断啊,这个帝国cms考虑的有点少了。于是乎,改吧。

去找以下文件
/e/class/connect.php

找这个函数:  function eReturnDomain()

大概在3791行左右

function eReturnDomain(){
        $domain=RepPostStr($_SERVER['HTTP_HOST'],1);
        if(empty($domain))
        {
                return '';
        }
        return 'http://'.$domain;
}

把此函数修改下面的

function eReturnDomain(){
        $domain=RepPostStr($_SERVER['HTTP_HOST'],1);
        if(empty($domain))
        {
                return '';
        }
        return ($_SERVER['HTTPS'] ? 'https':'http').'://'.$domain;
}

还有一处在4029行
找到以下函数

//返回当前域名
function FWeReturnDomain(){
	$domain=RepPostStr($_SERVER['HTTP_HOST'],1);
	if(empty($domain))
	{
		return '';
	}
    return 'http://'.$domain;
}

替换为:

//返回当前域名
function FWeReturnDomain(){
	$domain=RepPostStr($_SERVER['HTTP_HOST'],1);
	if(empty($domain))
	{
		return '';
	}
    return ($_SERVER['HTTPS'] ? 'https':'http').'://'.$domain;
}

好了,重新登录后台试试吧。

雷雷

这个人太懒什么东西都没留下

文章评论(0)

(Spamcheck Enabled)