Php 会议背后的故事是什么
简单地说,我已经受够了会话,那么什么是该会话工作的最佳服务器设置 示例 假设我们有两个文件[a.php和b.php] a、 php代码Php 会议背后的故事是什么,php,session,Php,Session,简单地说,我已经受够了会话,那么什么是该会话工作的最佳服务器设置 示例 假设我们有两个文件[a.php和b.php] a、 php代码 b、 php代码 是的,是的,它可以和你们很多人一起工作,但我想知道为什么它可以和我一起在某些主机上使用下面的php信息 在我的第二个主机上不工作时有以下信息 为什么??php服务器设置有什么问题,我真的很沮丧,因为我的网站完全依赖此会话作为警报:( 感谢您的帮助会话在标题中发送,您正在使用位置标题重定向。标题()每个PHP.net函数一次只发送
b、 php代码
是的,是的,它可以和你们很多人一起工作,但我想知道为什么它可以和我一起在某些主机上使用下面的php信息
在我的第二个主机上不工作时有以下信息
为什么??php服务器设置有什么问题,我真的很沮丧,因为我的网站完全依赖此会话作为警报:(
感谢您的帮助会话在标题中发送,您正在使用位置标题重定向。标题()每个PHP.net函数一次只发送一个头。我认为您在服务器将会话头发送给用户之前进行了重定向。我可能错了,所以请使用meta refresh进行测试,看看会发生什么。是的,它已被弃用,但在此处进行测试时效果良好:
echo '<meta http-equiv="refresh" content="0;b.php">';
希望对您有效会话存储在两台服务器上的文件中(session.save\u handler=files),但session.save\u路径不同:
/var/php\u会话
用于不工作的服务器,而“空”用于工作的服务器(默认情况下为/tmp)
/var/php\u会话是否存在并且可供web服务器用户(通常是apache、httpd或www数据)编写?您应该在/var/php\u sessions
中找到会话文件。将会话id与cookie提供的id匹配。另一个错误源可能是代理干扰。您的第二台服务器正在运行Nginx/Varnish,这两个服务器都可以配置为充当反向代理
第二个服务器对a.php请求的回答以“0”开头,这也让我很恼火。我可以理解b.php打印了一个“0”,但a.php为什么要这样做呢
你自己看看:
0<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">\n
^ <-- this is strange, isn't it?
0\n
^
echo '<meta http-equiv="refresh" content="0;b.php">';
header("Location: b.php");
0<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">\n
^ <-- this is strange, isn't it?