所以我有一个登录/会话系统设置,可以很好地工作一段时间。但是,在过去几天内,会议未能进入子域。
我一直在使用session_start调用上面的以下内容:
session_set_cookie_params(0, '/', '.domain.com');
再次,这很好。您可以在基本域登录,然后移动到子域并继续进行会话。或者您可以登录子域并移动到其他人。例如:
此脚本未进行任何更改。它失败了。也许主持人负责?
修改 即使您登录子域,也会创建PHP会话但不起作用。尽管您可以在浏览器的cookie中看到PHP会话,但没有$ _SESSION数组数据可用等。
答案 0 :(得分:0)
尝试使用 ini_set()功能,例如:
ini_set('session.cookie_domain',
substr($_SERVER['SERVER_NAME'], strpos($_SERVER['SERVER_NAME'],"."),100) );
或尝试使用 .htaccess
php_value session.cookie_domain .domain.com
或者尝试将安全参数设置为false,例如
session_set_cookie_params(0, '/', '.domain.com', false, false);
答案 1 :(得分:0)
修正了它。似乎我在PHP.ini中的session.save_path设置为/ tmp,无论出于何种原因,它都不允许我的子域工作或访问会话文件。
我将PHP.ini更改为html层次结构中的新文件夹,但它确实有效。
仍在使用session_set_cookie_params(0,'/','。domain.com');以及我之前的所有设置。所以我的代码很好,不知何故保存路径停止工作。很奇怪。