当前位置:Gxlcms > php框架 > ThinkPHP框架实现session跨域问题的解决方法

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

时间:2021-07-01 10:21:17 帮助过:45人阅读

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

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

经过总结,针对session跨域这一问题的解决方法主要有以下几种:

第一种情况:如果你目录下没有.htaccess这个文件,也就是没有采取url伪静态的话,那么,你在conf/config.php的第一行加上:

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

这种如果你开启了调试,可能用!但关闭了调试,可能就不管用了!

第二种情况:如果你目录下有.htaccess这个文件,那么你在根目录,index.php的第一行加入:

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

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

人气教程排行