内部服务器错误500 - session_start()

时间:2012-02-24 20:04:21

标签: php facebook internal-server-error

好吧,我找到了很多 ISE 500 的主题,但没有一个解决方案适合我。

我为我们的客户开发了一个Facebook应用程序来呈现一些音频跟踪,当然,我希望每个app_data参数将一些参数传递给应用程序。所以我整合了 facebook sdk 3.1.1。做了一切正确连接到facebook。

在我的本地xampp上,Everythings工作正常,我们公司的网络服务器也运行应用程序没有任何问题,我的私人网站空间也是如此。但是当我将应用程序上传到客户端服务器时,我得到500:内部服务器错误。为了排除我身边的任何奇怪的脚本错误,我试图执行sdk附带的example.php。同样的错误。即使我只是试图像这样实例化Facebook类:

<?php

require '../src/facebook.php';

$facebook = new Facebook(array(
  'appId'  => '???',
  'secret' => '??????',
));
?>

我已经查看了服务器错误日志。它唯一提到的是:

“脚本标题过早结束:example.php”

我还使用了广泛建议的error_reporting(E_ALL);来避免在服务器端错误处理错误。没有。服务器不会告诉我什么是错的。

我发现其他人遇到此错误的原因很多,最突出的是:

  • 在facebook.php / base_facebook.php
  • 中缺少?>标记
  • Facebook - 和FacebookApiException
  • 的多个实例

......所提供的解决方案都不适用于我。

所以我试着比较两者的phpinfos,客户端和我们公司的服务器。当然有一些差异,但对我来说并不明显。我找了论坛上的人们已经与ISE 500相关联的基本内容,例如 cURL扩展 php版本(5.3.9)。我不是服务器管理员,我只掌握了服务器配置的基本知识。所以为了确保缺少某些东西,我试图找到facebook sdk的服务器要求...

...但整个网络不会告诉我facebook sdk的服务器要求。即使是facebook文档也没有提及任何内容。所以我希望周围的人可以帮助我。

是的......我已经向服务器管理员求助了,他只是看着我眼中有两个问号......是的......我必须使用客户端服务器:( 叹息

在期待中感谢你......


更新
我将列出我为响应您的建议而尝试的事项:

服务器:
- 安装了cURL扩展(7.20.1)
- php版本是5.3.9。
- 试图包含其他文件,工作正常。似乎不是一个路径问题 - 服务器错误日志只显示“脚本标题的过早结束:example.php” - 启用了log_errors。 error_log说“没有价值”
- 尝试ini_set("display_errors", true);进行错误跟踪...没有效果


更新2

所以我能够逐行检查facebook文件后找出问题所在。尝试启动会话后,将在开始时抛出内部服务器错误500:

if(!session_id())
{
    session_start();
}

我将此信息转发给了服务器管理员和客户端...我现在猜不出来了,当我得到答案时,我会更新这篇文章。感谢您的反馈:)


好的,服务器管理员现在发现了问题。 session.save_handler设置为'user',他将其更改为'files',现在一切正常。:

session.save_handler = files

再次感谢您的帮助!

3 个答案:

答案 0 :(得分:6)

尝试在包含前添加此脚本:

ini_set("display_errors", true);

答案 1 :(得分:0)

这是一个非常糟糕的问题的完美例子。

虽然唯一的问题是how to get an error message from PHP,但你写了一本关于无人知晓的事情的小说。如果您运行Facebook应用程序或其他任何内容都没关系。你安装的是什么版本curl并不重要。

您唯一需要的是PHP错误消息 你必须追踪它。 检查phpinfo()中的error_reportingerror_loglog_errors指令 检查用户的主目录以获取其他日志文件。向服务器管理员询问日志文件。这必须是您搜索的唯一方向 - PHP错误消息。

答案 2 :(得分:0)

phpinfo()有答案。在会话中,save_handler参数必须设置为:

session.save_handler = user

到:

session.save_handler = files