我一直试图调试这个问题几个小时,但不能。我有这两个文件:
我的第一个文件:
session_start();
$_SESSION['user'] = '1';
我的第二个文件:
session_start();
print_r($_SESSION);
echo $_SESSION['user'];
但是第二个文件回显了一个空数组。这在我的本地主机上运行良好,但在在线服务器上不起作用。我还在 php.ini 中关闭了“register_globals”
我一直试图调试这个问题几个小时,但不能。我有这两个文件:
我的第一个文件:
session_start();
$_SESSION['user'] = '1';
我的第二个文件:
session_start();
print_r($_SESSION);
echo $_SESSION['user'];
但是第二个文件回显了一个空数组。这在我的本地主机上运行良好,但在在线服务器上不起作用。我还在 php.ini 中关闭了“register_globals”
我也面临与 ipage 托管相同的问题,现在它通过 Radhakrishna Chowdary 的帮助解决了,我做了以下 -
如果您使用的是 cPanel 转到cPanel
> php.ini QuickConfig
>
检查
session.save_handler = files
session.save_path = /tmp
如果您仍然遇到问题,请询问您的 cPanel 人员,他们会帮助您
iPage 要求您session_save_path()
在脚本中指定。像这样:
session_save_path("your home directory path"/cgi-bin/tmp);
session_start();
查看此iPage 知识库文章以供进一步参考。
尝试将 $_SESSION['user'] 之类的会话变量更改为 $_SESSION['userr'] 因为更改变量名称对我来说适用于 ipage 上的 php 5.3
更改“session.save_path”不起作用我尝试了很多但没有解决,我联系那里的支持为我解决问题,但他们说会话在 ipage 中被禁用,这对 cPanel 站点来说非常糟糕。
但无论如何,我推荐另一个托管服务,因为 iPage 不支持会话,这是 php 开发中用于登录和保存数据的主要内容。
我最近从 IPage 客户服务处收到了这个:
这意味着“ session.save_path ”永远不会在“php.ini”中改变,你必须在你的代码中做这件事,就像客户服务中提到的那样。
请记住在会话开始之前添加此行
session_save_path('/home/your/home/directory/path/cgi-bin/tmp');