当前位置:  开发笔记 > 编程语言 > 正文

AJAX调用PHP脚本给我500内部服务器错误?

如何解决《AJAX调用PHP脚本给我500内部服务器错误?》经验,为你挑选了1个好方法。

我使用JQuery制作一个AJAX请求:

$.ajax({
  type: "GET",
  url: "getvideo.php",
  data: 'videoid=' + vid,

我用firebug告诉我发生了什么,它告诉我发生了500内部服务器错误?以下是相关脚本的一部分:

$videoid = $_GET['videoid'];
$get = new youtubeAPI();
$get->getVideoAPI($videoid);

class youtubeAPI extends Exception {

  function getVideoAPI($videoid){

    if (isset($videoid)) {

      $clientLibraryPath = 'library';
      $oldPath = set_include_path(
        get_include_path() . PATH_SEPARATOR . $clientLibraryPath
      );

      require_once 'Zend/Loader.php'; // the Zend dir must be in your include_path

我对其他脚本使用相同的AJAX调用,它们很好.我在另一台服务器上使用过这些脚本,除了另一台服务器上的文件命名为"getvideo.php5"之外没什么问题,而在这里我把它命名为"getvideo.php",因为我只安装了PHP 5.2.6.

请帮忙

UPDATE

这是错误:

[Wed Feb 11 20:48:17 2009] [错误] [client xx.xx.xxx.xxx] PHP致命错误:在/ var/www/html/library/Zend/Gdata/App中找不到类'DOMDocument'. php在734行,referer:http://xx.xx.xx.xxx/

我藏了我的IP.在那一行:

public static function importString($string, $className='Zend_Gdata_App_Feed') {
  // Load the feed as an XML DOMDocument object
  @ini_set('track_errors', 1);
  $doc = new DOMDocument(); // LINE 734
  $success = @$doc->loadXML($string);
  @ini_restore('track_errors');

但我不应该玩那个吧?在任何情况下,该类不作为脚本存在,并且在该脚本中不作为类存在.我在我的其他服务器上使用这个相同的图书馆.它也缺少??? 这是我从Youtube API zip文件夹下载的内容.

解决了

这是一个全新的服务器,它安装了最少的PHP.我缺少PHP dom功能.快速安装修复了这个问题.谢谢你提醒我查看日志.我应该先尝试一下.

yum install php-xml
yum install php-xmlrpc

Syntax.. 9

尝试在浏览器中自己手动执行调用(同样的事情)并查看返回的内容.如果没有返回任何内容并且您收到500内部服务器错误,则需要查看日志并查看导致此错误发生的原因.

还要确保您正在对正确的域进行ajax调用.如果您尝试呼叫您的域,则呼叫每次都会失败.



1> Syntax..:

尝试在浏览器中自己手动执行调用(同样的事情)并查看返回的内容.如果没有返回任何内容并且您收到500内部服务器错误,则需要查看日志并查看导致此错误发生的原因.

还要确保您正在对正确的域进行ajax调用.如果您尝试呼叫您的域,则呼叫每次都会失败.

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有