discuz 跨域整合的记录文件
2009-06-27 00:00
399 查看
\\create by ahuinan 2009-6-22
\\up by ahuian 2009-6-23
\\up by ahuinan 2009-6-24
1、将common项目中的md5函数代码更改为:
实现主站与论坛统一加密方式。
2、将common项目中的Encode和Decode改成直接返回。
3、ASP若采用session,则之前先判断是否有cookie。而主站的统一退出只需要添加一个清空cookie操作,代码可以如下:
4、在dnt论坛中的aspx>>1文件夹下面先建立一个login_in.aspx处理所有的同步登陆请求。实现多域名下同步登陆,比如可以实现www.a.com和www.b.com 下的登录问题。
5、管理员部分由于修改了加解密部门,所以需要重写admin/index.aspx.cs文件,注释掉:
更改为:
同步登陆代码文件有个文件名是index.aspx直接拷贝过去OK,拷贝到admin/index.aspx里面
6、以下内容是为了修复IE6下COOKIE丢失的问题,因为IE6不支持P3P协议,可以再每个程序网站添加该协议,但比较麻烦,现在直接在IIS添加HTTP头。
自定义HTTP头名为:P3P
自定义HTTP头值为:CP=CAO PSA OUR
7、可能用到的整合文件:
\\up by ahuian 2009-6-23
\\up by ahuinan 2009-6-24
1、将common项目中的md5函数代码更改为:
return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str, "MD5").ToLower().Substring(8, 16);
实现主站与论坛统一加密方式。
2、将common项目中的Encode和Decode改成直接返回。
3、ASP若采用session,则之前先判断是否有cookie。而主站的统一退出只需要添加一个清空cookie操作,代码可以如下:
Response.Cookies("dnt")("userid") = rs("uid") Response.Cookies("dnt")("password") = DESCode Response.Cookies("dnt")("tpp") = rs("tpp") Response.Cookies("dnt")("ppp") = rs("ppp") Response.Cookies("dnt")("pmsound") = rs("pmsound") Response.Cookies("dnt")("invisible") = rs("invisible") Response.Cookies("dnt")("referer") = "index.aspx" Response.Cookies("dnt")("sigstatus") = rs("sigstatus") Response.Cookies("dnt")("expires") = 0 Response.Cookies("dnt").Domain = ".xxxx.com" //修改为你的域名,注意前面带.(点) Response.Cookies("dnt").Secure = False
4、在dnt论坛中的aspx>>1文件夹下面先建立一个login_in.aspx处理所有的同步登陆请求。实现多域名下同步登陆,比如可以实现www.a.com和www.b.com 下的登录问题。
5、管理员部分由于修改了加解密部门,所以需要重写admin/index.aspx.cs文件,注释掉:
//if (Context.Request.Cookies["dntadmin"] == null || Context.Request.Cookies["dntadmin"]["key"] == null ||ForumUtils.GetCookiePassword(Context.Request.Cookies["dntadmin"]["key"].ToString(), config.Passwordkey) != (oluserinfo.Password + secques + oluserinfo.Userid.ToString()))
更改为:
if (Context.Request.Cookies["dntadmin"] == null || Context.Request.Cookies["dntadmin"]["key"] == null)
同步登陆代码文件有个文件名是index.aspx直接拷贝过去OK,拷贝到admin/index.aspx里面
6、以下内容是为了修复IE6下COOKIE丢失的问题,因为IE6不支持P3P协议,可以再每个程序网站添加该协议,但比较麻烦,现在直接在IIS添加HTTP头。
自定义HTTP头名为:P3P
自定义HTTP头值为:CP=CAO PSA OUR
7、可能用到的整合文件:
<%@ Page Language="C#" %> <%@ Import Namespace="Discuz.Forum" %> <%@ Import Namespace="Discuz.Common" %> <script runat="server"> protected void Page_Load(object sender, EventArgs e) { if (Request.QueryString["userName"] != null && Request.QueryString["passWord"] != null) { string userName = Request.QueryString["userName"].ToString().Replace("'", "''"); string passWord = Request.QueryString["passWord"].ToString().Replace("'", "''"); int uid = Discuz.Forum.Users.CheckPassword(userName, passWord, false); if (uid != -1) { LoginLogs.DeleteLoginLog(Discuz.Common.DNTRequest.GetIP()); UserCredits.UpdateUserCredits(uid); ForumUtils.WriteUserCookie(uid, Discuz.Common.Utils.StrToInt(DNTRequest.GetString("expires"), 500),userName, DNTRequest.GetInt("templateid", 0), DNTRequest.GetInt("loginmode", -1)); Users.UpdateUserLastvisit(uid, Discuz.Common.DNTRequest.GetIP()); } } } </script>
相关文章推荐
- discuz 跨域整合的记录文件
- 常用配置文件记录,整合ssh
- Spring JPA 缺少 JAR 引起异常 记录整合中缺少 JAR 文件引起的异常 版本 Spring 3+ Hibernate 4+ JPA
- 整合springboot+mvc+mybatis(通用mapper)+druid+jsp+bootstrap实现权限管理文件上传下载多数据源切换操作日志记录等功能
- 记录Maven和Mybatis整合时打包漏掉mapper的xml文件及其它资源
- Discuz 整合到其它系统记录
- discuz学习记录:在模板文件中显示语言包中的某个值
- discuz学习记录:在模板文件中循环显示数组中的值
- 学习Discuz! X3.2记录:一个小提示,可以知道插件php文件语法出问题了
- log4net 如何跨域或者跨进程日志记录在同一个日志文件中以及数据库中
- 记录Maven和Mybatis整合时打包漏掉mapper的xml文件及其它资源
- discuz学习记录:最基本的入口、控制、模板3个文件
- 利用discuz自带通行证整合dedecms的方法以及文件下载
- mybatis代码配置文件记录
- <context-param>与<init-param>的区别与作用含与Spring整合时的文件配置
- Java笔记记录第一天Java Web整合开发实战 阅读
- spring+springmvc+mybatis整合之登录+文件上传
- rtems 文件系统(14)-jffs2使用问题记录
- Apache配置——不记录指定文件类型的日志