子域的$ _SESSION未由共享的php文件

时间:2016-11-29 01:28:32

标签: php session session-cookies cdn subdomain

我有一个子域设置,其中包含来自另一个子域的共享文件,因此基本上是一个子域上的主主题,然后是其他所有引用相同主子域的子主题。

在主子域共享文件中有一个登录脚本,它在成功登录时设置了$ _SESSION,但它没有保存会话,因此我检查了会话是否正在写入,并在检查session_save_path时遇到以下错误可写的:

Warning: is_writable(): open_basedir restriction in effect. File(/serverPath/php/session) is not within the allowed path(s): (/serverPath/nameOfDir/:/tmp/) in /serverPath/pathToSharedPHPfile on line ****

我认为这是由于我通过AJAX运行登录功能这一事实导致引用者是主子域名url而不是我想登录的域名所以我设置了cookie参数如下:

$url =  "https://{$_SERVER['HTTP_HOST']}";

$escaped_url = htmlspecialchars( $url, ENT_QUOTES, 'UTF-8' );

session_set_cookie_params(0, '/', $escaped_url, true, true);

session_start();

$_SESSION['nameOfSession] = array('key' => 'value', ....);

但我仍然遇到同样的错误。这一切都是新的,所以我的研究因不知道要搜索什么而受到阻碍。

任何帮助表示感谢。

0 个答案:

没有答案