Categories


Tags


discuz、ecshop、帝国cms部署https(ssl)后会员无法登录

注意,以下教程只针对我司港台虚拟主机或者亚数的云主机香港IP部署SSL后的301跳转

1.discuz部署https后台无法登录:

discuz采用: $_SERVER[‘HTTPS’] 方式判断,我司虚拟主机不支持同时也不支持$_SERVER['HTTP_HOST'],需使用$_SERVER['HTTP_FROM_HTTPS']进行判断,其他php程序同样适用。

source/class/discuz/discuz_application.php (第188行左右):

查找:

$_G['isHTTPS'] = ($_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;

修改为:

$_G['isHTTPS'] = ($_SERVER['HTTP_FROM_HTTPS'] && strtolower($_SERVER['HTTP_FROM_HTTPS']) != 'off') ? true : false;

uc_server/avatar.php(第14行左右):

查找:

define('UC_API', strtolower(($_SERVER['HTTPS'] == 'on' ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'].substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['PHP_SELF'], '/'))));

修改为:

define('UC_API', strtolower(($_SERVER['SERVER_PORT'] == 443 || $_SERVER['HTTP_FROM_HTTPS'] == 'on' ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'].substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['PHP_SELF'], '/'))));

另:使用301方式强制将http跳转到https后会导致后台uc通信失败。

2.ecshop部署https后台无法登录:

打开includes/cls_ecshop.php 154行左右

查找

return (isset($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off')) ? 'https://' : 'http://';

修改为:

return isset($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off')||(strtolower($_SERVER['HTTP_FROM_HTTPS']) == 'on') ? 'https://' : 'http://';

3.帝国cms部署https后台登陆空白:

(1)帝国cms7.2及以下版本

e/class/connect.php

function eReturnDomain(){

$domain=RepPostStr($_SERVER['HTTP_HOST'],1);

if(emptyempty($domain))

{

return '';

}

// return 'http://'.$domain;    注释该行,替换成下两行内容

$httptype = isset($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off')||(strtolower($_SERVER['HTTP_FROM_HTTPS']) == 'on') ? 'https://' : 'http://';

return $httptype.$domain;

}

function FWeReturnDomain(){

$domain=RepPostStr($_SERVER['HTTP_HOST'],1);

if(emptyempty($domain))

{

return '';

}

//return 'http://'.$domain;  注释该行,替换成下两行内容

$httptype = isset($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off')||(strtolower($_SERVER['HTTP_FROM_HTTPS']) == 'on') ? 'https://' : 'http://';

return $httptype.$domain;

}

(2)帝国cms7.5及以上版本

e/config/config.php      'httptype'=>0  # 全自动

e/class/connect.php

function eCheckUseHttps(){

//if($_SERVER['HTTPS']&&strtolower($_SERVER['HTTPS'])!='off')  注释该行, 替换成下一行内容

if (isset($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off')||(strtolower($_SERVER['HTTP_FROM_HTTPS']) == 'on'))

{

return 1;

}

else

{

return 0;

}

}

来源:西部数码


Public @ 2018-11-02 15:55:57

织梦dedecms程序安全设置

织梦dedecms程序安全设置升级到dedecms最新版本dedecms后台一般支持在线升级,如果不行,请到官方网站查询手工升级办法www.dedecms.com权限设置:主机控制面板中点击 “文件管理” 选中wwwroot目录 在点击 “权限” 按钮,将整站所有文件设置为只读。 老版本可能登录后台会提示验证码错误,进入wwwroot目录,选中data目录,然后点击“权限”单独将data设置为完全

Public @ 2017-10-15 15:37:17

域名续费流程

。 一、申请 1、用户打开域名服务商提供的注册域名续费页面,填写续费时限及支付信息,按照操作指引完成所有必填项和设定所有已知的项,提交申请。 2、提交申请后,域名经过验证(验证用户输入信息正确无误,确定注册域名是否过期等),如果验证通过,则将所选时限的费用收取用户账号,域名状态改为已续费。 二、失效 1、如果用户续费时未指定续费时间,则域名按照默认策略续费,每次域名有效期可延长一年,也可

Public @ 2023-03-04 03:48:23

HTTPS究竟是啥?这篇文章带你快速了解HTTPS

HTTPS是一种用于保护网页通信安全的协议,也是HTTP协议的增强版。HTTPS通过使用SSL/TLS协议来加密网络数据传输,从而防止窃听、篡改和伪造等攻击。 在HTTPS中,浏览器和服务器之间的通信过程中,会进行一系列加密解密操作,以确保网络数据的安全性。由于HTTPS协议使用了SSL/TLS协议,因此在网络通信过程中,浏览器和服务器之间会进行数字证书的验证和密钥交换,从而保证通信的安全性和完

Public @ 2023-06-04 23:50:16

如何在阿里云申请免费的SSL证书?

如果网站要升级为Https,就需要SSL证书。本教程以图文形式介绍,通过阿里云免费申请SSL证书的流程。Step1:打开阿里云SSL证书页面:免费SSL证书,点击“立即购买”,如图所示:image.Step2:选择“DV单域名证书”,证书个数选择“20个”,点击“立即购买”,如图所示:image.Step3:0元支付,如图所示:image.image.Step4:点击“登录管理控制台”,点击“证书

Public @ 2011-11-06 15:56:14

更多您感兴趣的搜索

0.509790s