ThinkPHP框架实现session跨域问题的解决方法

ThinkPHP的session跨域问题很多开发者都遇到过!其实不管是ThinkPHP还是php本身,在解决session跨域问题的时候都需要设置session.cookie_domain。在ThinkPHP里,需要修改配置文件conf/config.php在第一行加上:

ini_set('session.cookie_domain', ".domain.com");//跨域访问Session

经过总结,针对session跨域这一问题的解决方法主要有以下几种:
第一种情况:如果你目录下没有.htaccess这个文件,也就是没有采取url伪静态的话,那么,你在conf/config.php的第一行加上:
ini_set('session.cookie_domain',".domain.com");//跨域访问Session

这种如果你开启了调试,可能用!但关闭了调试,可能就不管用了!
第二种情况:如果你目录下有.htaccess这个文件,那么你在根目录,index.php的第一行加入:

<?php 
ini_set('session.cookie_domain',".domain.com");//跨域访问Session
// 定义ThinkPHP框架路径
define('THINK_PATH', '/ThinkPHP/');
//定义项目名称和路径
define('APP_NAME', 'Www');
define(‘APP_PATH', '.');
// 加载框架入口文件
require(THINK_PATH."/ThinkPHP.php");
//实例化一个网站应用实例
App::run();
?>

这种方法不管开不开启调试都管用!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Se...
    chinariver阅读 5,707评论 1 49
  • php.ini设置,上传大文件: post_max_size = 128Mupload_max_filesize ...
    bycall阅读 6,905评论 3 64
  • 背景在HTTP协议的定义中,采用了一种机制来记录客户端和服务器端交互的信息,这种机制被称为cookie,cooki...
    时芥蓝阅读 2,395评论 1 17
  • 此文章转载~ Apache伪静态(Rewrite).htaccess文件详解 Htaccess(超文本访问)是一个...
    bornfreekiss阅读 4,223评论 0 6
  • session主要分为两部分:一个是session数据,该部分默认是存储在服务器端的tmp目录下,是以文件形式存在...
    舒小贱阅读 8,174评论 0 5