我有一个奇怪的情况,而试图使一个网站在bluehost上工作的人。我建立了一个非常简单的例子来说明这一点。我有两个文件:
<?php
session_start();
$_SESSION['x'] = 'yes';
var_dump($_SESSION);
:
<?php
session_start();
var_dump($_SESSION);
现在的问题是,当我调用第一个文件时,我得到这个:数组(1){["x"]=>字符串(3)"是"}
,但如果在此之后立即调用第二个文件,我会得到这个:数组(0){}
因此,会话似乎不会在调用之间持续。知道是什么原因导致的吗?
phpinfo会话设置:
Session Support enabled
Registered save handlers files user
Registered serializer handlers php php_binary wddx
Directive Local Value Master Value
session.auto_start Off Off
session.cache_expire 180 180
session.cache_limiter nocache nocache
session.cookie_domain no value no value
session.cookie_httponly Off Off
session.cookie_lifetime 0 0
session.cookie_path / /
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_divisor 1000 1000
session.gc_maxlifetime 1440 1440
session.gc_probability 1 1
session.hash_bits_per_character 4 4
session.hash_function 0 0
session.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path /tmp /tmp
session.serialize_handler php php
session.upload_progress.cleanup On On
session.upload_progress.enabled On On
session.upload_progress.freq 1% 1%
session.upload_progress.min_freq 1 1
session.upload_progress.name PHP_SESSION_UPLOAD_PROGRESS PHP_SESSION_UPLOAD_PROGRESS
session.upload_progress.prefix upload_progress_ upload_progress_
session.use_cookies On On
session.use_only_cookies On On
session.use_trans_sid 0 0
只是想在2021年加入一个更新。我正在使用Cloudways托管,并有这个完全相同的问题。我终于看到了这篇文章,并在Cloudways中禁用了清漆,现在一切都如预期的那样工作了。谢谢你!希望这对将来的人有所帮助。
这可能会帮助别人…主机提供商是BlueHost,在几封来回的电子邮件中,他们指责开发,他们承认这可能是因为Varnish,他们默认启用Wordpress优化包。https://my.bluehost.com/cgi/help/turn_varnish_off
关闭后,会话和cookie似乎工作