织梦跨域共享cookie的BUG修复+使用教程

资源来源网络,如需授权,请更换源码,模块仅供学习,如需商用请购买正版授权,本栏目不提供技术服务,积分不够请签到!如何签到?系统升级暂停签到,恢复关注公告!
如遇下载链接蓝奏网盘打不开lanzous替换成lanzoux尝试! 广告

织梦的跨域共享场景

用户在浏览器上打开你的主站(www.dedehtml.com)登录会员,然后浏览你的子站点手机站(m.dedehtml.com)或者商城站(shop.dedehtml.com)时不需要重新登录会员,实现跨域共享cookie。
织梦跨域共享cookie的BUG修复

不喜欢改的小伙伴可以直接下载我修改好的/include/dedeajax2.js 覆盖到你网站include文件夹里

喜欢自己改的小伙伴打开 /include/dedeajax2.js 找到

DedeXHTTP = new XMLHttpRequest();

在它的下面加入

DedeXHTTP.withCredentials = true;

继续找到

DedeXHTTP.open(“POST”, purl, true);

在它的下面加入

DedeXHTTP.withCredentials = true;

继续找到

DedeXHTTP.open(“GET”, purl, true);

在它的下面加入

DedeXHTTP.withCredentials = true;

继续找到

DedeXHTTP.open(“GET”, purl, false);

在它的下面加入

DedeXHTTP.withCredentials = true;

织梦跨域共享cookie的使用教程

1、后台-系统-系统配置参数-核心设置-跨域共享cookie的域名,填上

.dedehtml.com

注意有个英文小数点

保存修改后,你可能会出现后台登录时提示验证码错误,但是你填的验证码明明是对的,那有可能你的织梦程序不是新的,你需要替换官方新版的这2个文件。

提示:替换前记得先备份你的这2个文件,再替换官方的进来。

/include/common.inc.php
/include/vdimgck.php

2、启用 CORS 来解决浏览器跨域出现的拦截跨源问题

解决浏览器跨域拦截跨源有2种方法

第1种,直接在ajax请求的php文件里加入

header(“Access-Control-Allow-Credentials:true”);
header(“Access-Control-Allow-Origin:http://m.dedehtml.com”);

例如,获取会员登录状态是这个文件 http://www.dedehtml.com/member/ajax_loginsta.php

如果你有多个ajax获取文件,也需要加入这2行代码。

第2种,在网站环境配置里加入(注意:使用第1种就不要再去操作第2种了)

2-1) Apache环境的小伙伴在conf配置文件里加入

Header set Access-Control-Allow-Origin “*”

2-2) Nginx环境的小伙伴在配置文件里加入

add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Credentials true;
add_header Access-Control-Allow-Headers “x-requested-with,Authorization”;
add_header Access-Control-Allow-Methods *;

2-3) iis环境的小伙伴添加如下标头

Access-Control-Allow-Origin:*

打开IIS,找到“HTTP响应标头”点进去,在右侧可以看到添加,然后添加如下标头即可

3、在子域名的模板中,有ajax获取会员登录状态数据的地方,文件路径要使用主域名的文件

例如

<script type=”text/javascript” src=”{dede:global.cfg_basehost/}/include/dedeajax2.js“></script>
<script type=”text/javascript”>
function CheckLogin(){
var taget_obj = document.getElementById(‘_userlogin’);
myajax = new DedeAjax(taget_obj,false,false,”,”,”);
myajax.SendGet2(“{dede:global.cfg_basehost/}/member/ajax_loginsta.php“);
DedeXHTTP = null;
}
</script>

完成

©下载资源版权归作者所有;本站所有资源均来源于网络,仅供学习使用,请支持正版!
风格酷模板网 » 织梦跨域共享cookie的BUG修复+使用教程
NOTICE:【咨询风格酷】客服QQ:1131734965
NOTICE:【咨询风格酷】客服微信:wwwxmamnet
NOTICE:【风格酷模板网②群】QQ群:288678775
☉免责声明:本站所有模板均来自用户分享和网络收集,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服,我们核实后会立即删除。
☉如果源码网盘地址失效!或有其他问题,请点我报错,谢谢合作!
☉人民币与积分汇率为1比10,即1元=10积分.有任何疑问请联系客服
☉如有其他问题,请加网站客服QQ(1131734965)进行交流。
☉本站提供的源码、模板、软件工具等其他资源,都不包含技术服务,请大家谅解!
☉源码、模板等资源会随着技术、环境的升级而存在部分问题,还请慎重选择。

发表评论

风格酷模板网www.xmam.net分享优质网站模板

立即查看 了解详情