这是针对在heroku上运行的Facebook应用程序,但heroku可能不是问题所在。问题要么是某种与缓存相关的事情,要么是操作系统移植,要么我认为这可能是回车问题。
无论如何,我分别在顶部和底部收到几个错误:
Warning: Unknown:
Warning: session_start(): open(C:ProgramDataJcx.SoftwareVS.Php2.10.6970.0temp/sess_i4ood4poc11ebsgth000g1nm74, O_RDWR) failed: No such file or directory (2) in /app/www/sdk/src/facebook.php on line 37
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /app/www/sdk/src/facebook.php:37) in /app/www/sdk/src/facebook.php on line 37
open(C:ProgramDataJcx.SoftwareVS.Php2.10.6970.0temp/sess_i4ood4poc11ebsgth000g1nm74, O_RDWR) failed: No such file or directory (2) in Unknown on line 0 Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (C:ProgramDataJcx.SoftwareVS.Php2.10.6970.0temp) in Unknown on line 0
从本质上讲,我已经尝试了整个"确保会话位于顶部",但是我在任何文件中都没有该会话代码段。我已经尝试了整个,确保"?>"也在新行上,但没有效果。
更新
我发现了一个叫做:zend_extension_ts="C:\Program Files (x86)\Jcx.Software\VS.Php\2010\php 5.2\ext\php_xdebug.dll"
在一个名为php的文件中.ini即使在我试图摆脱它之后,它似乎也没有改变任何东西。所以,我认为这与我之前推送的一些文件有关,然后使用puo,intellisense.cache,projphp等扩展名删除。
我不知道这些是否是自动生成的,但无论如何根据我的错误:
- 名为 temp 的文件中有一些会话数据。我没有名为 temp 的文件。
- zend_extension_ts应该在某处被引用,但它在我的代码中不可见。
- 我显然需要通过 session_start() 再次重新发送会话缓存限制器,这在我的代码中不可见。
不是会话,我敢肯定。但是您的代码中包含目录路径,但该目录不存在!只需先重构代码的那部分!
作为提示,您应该使用 realpath() 并在尝试使用它之前检查 path 是否存在。
希望这有帮助!