jjzjj

javascript - jQuery - Ajax 在某些帖子上返回错误 500

coder 2024-07-29 原文

我有一些 Ajax 一直在实时站点上工作,现在它停止工作了。 Ajax 应该返回一个页面,但返回的是 500 error (internal server error)。 .

奇怪的是我可以导航并发布到 Ajax 调用的页面,所以该页面只是无法通过 Ajax 调用($.post)工作。

另一个奇怪的事情是它在本地工作正常,但不是实时的。该网站上的所有其他 Ajax 也都在工作。

谁知道这可能是什么?顺便说一句,这都是 jQuery 和 CakePHP。

编辑:

apache 错误日志说: “脚本 header 过早结束:php-script、referer...”

编辑 2:

这一切都是在我将服务器切换到 SSL 时发生的。它说上面的错误,然后是“端口 80”。

最佳答案

首先,这与 jQuery、AJAX、POST、CakePHP 或 HTTP header 无关。完整的错误消息是“脚本过早结束”,这意味着 Apache 用来运行 PHP 脚本的 PHP 进程意外终止(即,在 PHP 进程完成其 Fast CGI 协议(protocol)的一部分之前)。这通常意味着 PHP 进程崩溃或导致“段错误”。

PHP 段错误很难解决,而且永远不应该发生; PHP 不应该崩溃。它崩溃的原因可能是由于多种原因造成的。不过,也许这是一个简单的修复。

我要做的第一件事是完全卸载 PHP 并安装最新的稳定版本。如果您正在运行 PHP 5.3 和 Windows,那么您应该只使用 VC6 二进制文件(“VC6 x86 线程安全”包); VC9包在Apache使用时会导致PHP崩溃。重新安装可能会解决您的问题,因为旧版本 PHP 的扩展 DLL/SO 可能仍存在于实时服务器上的扩展目录中。

如果在 Windows 上使用 MySQL,接下来我要做的是确保 MySQL bin 目录位于实时服务器的 Path 中。 .这样做的原因是为了确保操作系统可以“找到”libmySQL.dll。您应该能够通过 SSH 连接到实时服务器,键入 mysql --help,然后查看 MySQL CLI 客户端的使用消息。如果将 MySQL bin 目录添加到 Path,请重新启动 Apache。

如果这两个建议都不能解决问题,那么请用以下答案更新您的问题:

  1. 您使用的是网络托管服务商还是公司 IT 团队管理服务器供您使用?
  2. 如果使用虚拟主机,您是否租用专用服务器?
  3. 您运行的是什么操作系统?
  4. 您使用的是什么版本的 PHP?
  5. 正在加载哪些 PHP 扩展?
  6. 您加载 Zend 扩展吗?
  7. 你用过dl吗? ?

更新:在 5.3.6 及更高版本中,PHP 项目不再发布“VC6”安装程序。建议安装来自 Apache Lounge 的 Apache HTTPD 版本。并使用“VC9”安装程序。

关于javascript - jQuery - Ajax 在某些帖子上返回错误 500,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3182292/

有关javascript - jQuery - Ajax 在某些帖子上返回错误 500的更多相关文章

  1. ruby-on-rails - Rails 常用字符串(用于通知和错误信息等) - 2

    大约一年前,我决定确保每个包含非唯一文本的Flash通知都将从模块中的方法中获取文本。我这样做的最初原因是为了避免一遍又一遍地输入相同的字符串。如果我想更改措辞,我可以在一个地方轻松完成,而且一遍又一遍地重复同一件事而出现拼写错误的可能性也会降低。我最终得到的是这样的:moduleMessagesdefformat_error_messages(errors)errors.map{|attribute,message|"Error:#{attribute.to_s.titleize}#{message}."}enddeferror_message_could_not_find(obje

  2. ruby - 为什么 4.1%2 使用 Ruby 返回 0.0999999999999996?但是 4.2%2==0.2 - 2

    为什么4.1%2返回0.0999999999999996?但是4.2%2==0.2。 最佳答案 参见此处:WhatEveryProgrammerShouldKnowAboutFloating-PointArithmetic实数是无限的。计算机使用的位数有限(今天是32位、64位)。因此计算机进行的浮点运算不能代表所有的实数。0.1是这些数字之一。请注意,这不是与Ruby相关的问题,而是与所有编程语言相关的问题,因为它来自计算机表示实数的方式。 关于ruby-为什么4.1%2使用Ruby返

  3. ruby-on-rails - 迷你测试错误 : "NameError: uninitialized constant" - 2

    我遵循MichaelHartl的“RubyonRails教程:学习Web开发”,并创建了检查用户名和电子邮件长度有效性的测试(名称最多50个字符,电子邮件最多255个字符)。test/helpers/application_helper_test.rb的内容是:require'test_helper'classApplicationHelperTest在运行bundleexecraketest时,所有测试都通过了,但我看到以下消息在最后被标记为错误:ERROR["test_full_title_helper",ApplicationHelperTest,1.820016791]test

  4. ruby-on-rails - 在 Rails 和 ActiveRecord 中查询时忽略某些字段 - 2

    我知道我可以指定某些字段来使用pluck查询数据库。ids=Item.where('due_at但是我想知道,是否有一种方法可以指定我想避免从数据库查询的某些字段。某种反拔?posts=Post.where(published:true).do_not_lookup(:enormous_field) 最佳答案 Model#attribute_names应该返回列/属性数组。您可以排除其中一些并传递给pluck或select方法。像这样:posts=Post.where(published:true).select(Post.attr

  5. ruby - 检查字符串是否包含散列中的任何键并返回它包含的键的值 - 2

    我有一个包含多个键的散列和一个字符串,该字符串不包含散列中的任何键或包含一个键。h={"k1"=>"v1","k2"=>"v2","k3"=>"v3"}s="thisisanexamplestringthatmightoccurwithakeysomewhereinthestringk1(withspecialcharacterslike(^&*$#@!^&&*))"检查s是否包含h中的任何键的最佳方法是什么,如果包含,则返回它包含的键的值?例如,对于上面的h和s的例子,输出应该是v1。编辑:只有字符串是用户定义的。哈希将始终相同。 最佳答案

  6. ruby-on-rails - 如何在 Rails View 上显示错误消息? - 2

    我是rails的新手,想在form字段上应用验证。myviewsnew.html.erb.....模拟.rbclassSimulation{:in=>1..25,:message=>'Therowmustbebetween1and25'}end模拟Controller.rbclassSimulationsController我想检查模型类中row字段的整数范围,如果不在范围内则返回错误信息。我可以检查上面代码的范围,但无法返回错误消息提前致谢 最佳答案 关键是您使用的是模型表单,一种显示ActiveRecord模型实例属性的表单。c

  7. 使用 ACL 调用 upload_file 时出现 Ruby S3 "Access Denied"错误 - 2

    我正在尝试编写一个将文件上传到AWS并公开该文件的Ruby脚本。我做了以下事情:s3=Aws::S3::Resource.new(credentials:Aws::Credentials.new(KEY,SECRET),region:'us-west-2')obj=s3.bucket('stg-db').object('key')obj.upload_file(filename)这似乎工作正常,除了该文件不是公开可用的,而且我无法获得它的公共(public)URL。但是当我登录到S3时,我可以正常查看我的文件。为了使其公开可用,我将最后一行更改为obj.upload_file(file

  8. ruby-on-rails - 错误 : Error installing pg: ERROR: Failed to build gem native extension - 2

    我克隆了一个rails仓库,我现在正尝试捆绑安装背景:OSXElCapitanruby2.2.3p173(2015-08-18修订版51636)[x86_64-darwin15]rails-v在您的Gemfile中列出的或native可用的任何gem源中找不到gem'pg(>=0)ruby​​'。运行bundleinstall以安装缺少的gem。bundleinstallFetchinggemmetadatafromhttps://rubygems.org/............Fetchingversionmetadatafromhttps://rubygems.org/...Fe

  9. ruby - #之间? Cooper 的 *Beginning Ruby* 中的错误或异常 - 2

    在Cooper的书BeginningRuby中,第166页有一个我无法重现的示例。classSongincludeComparableattr_accessor:lengthdef(other)@lengthother.lengthenddefinitialize(song_name,length)@song_name=song_name@length=lengthendenda=Song.new('Rockaroundtheclock',143)b=Song.new('BohemianRhapsody',544)c=Song.new('MinuteWaltz',60)a.betwee

  10. ruby-on-rails - 每次我尝试部署时,我都会得到 - (gcloud.preview.app.deploy) 错误响应 : [4] DEADLINE_EXCEEDED - 2

    我是Google云的新手,我正在尝试对其进行首次部署。我的第一个部署是RubyonRails项目。我基本上是在关注thisguideinthegoogleclouddocumentation.唯一的区别是我使用的是我自己的项目,而不是他们提供的“helloworld”项目。这是我的app.yaml文件runtime:customvm:trueentrypoint:bundleexecrackup-p8080-Eproductionconfig.ruresources:cpu:0.5memory_gb:1.3disk_size_gb:10当我转到我的项目目录并运行gcloudprevie

随机推荐