【问题标题】:Why are my PHP sessions not being created?为什么我的 PHP 会话没有被创建?
【发布时间】:2013-08-11 05:27:07
【问题描述】:

我有一个由FatCow 托管的网站。

我试图通过模仿他们的quickstart guide 在我的网站上安装 Securimage PHP CAPTCHA,但它未能立即工作,因此我在我的网站上运行了他们的PHP Test Script 以确定问题。

它抛出了这个错误:

尝试调用 session_start() 时出现以下错误: session_start() [function.session-start]: open(/temp/sess_5e72461407b4ac6283d9897cc49dc4e3, O_RDWR) failed: No such file or directory (2)

现在,我在围绕会话之前遇到了一个问题,所以我通过我的 FTP 客户端在我的域的主 ('/') 文件夹中创建了一个临时文件夹,并将其文件权限设置为 777。然后我开始放置一个 php .ini 文件也在我的域的主文件夹中,并带有以下声明:

session.save_path = "/temp"
session.cookie_path = "/temp"

有什么问题?为什么它不能创建这些会话?

【问题讨论】:

  • 好吧,我链接了 PHP 测试脚本,所以如果你浏览它,你会看到它几乎在最顶部。
  • FatCow 有一个help page for this
  • 不错。这是一个很好的发现。

标签: php session hosting host session-storage


【解决方案1】:

如果系统不包含 temp/tmp 目录,这似乎是主机配置问题,因此您必须与您的提供商联系。

您创建自己的临时目录的解决方案可能有效,但您的路径不正确。 “/”只是您的 FTP 会话所感知的根目录,因为 FTP 会话通常是 chroot 的。 Web 服务器感知到的主目录将成为您的主目录,可能类似于 /home/my-domain。您可以使用 PHP getcwd() 函数来找出它到底是什么。

【讨论】:

  • 亲爱的,我想它可能是这样的。我现在会调查一下。我找了几个小时来了解它是如何工作的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-09
  • 1970-01-01
  • 2012-07-22
相关资源
最近更新 更多