AWS 托管的应用程序上的错误 324 空响应


Error 324 empty response on Application hosted by AWS

Error 324 (net::ERR_EMPTY_RESPONSE): The server closed the connection without sending any data.

我在 Amazon EC2 服务器上收到此错误。这不会发生在我网站上的特定页面上。我也不认为这是Chrome浏览器错误,因为当我打开safari时,我没有收到错误,我得到了一个白页。不知道发生了什么或为什么。基本上,我正在寻找此服务器错误的根本原因。任何想法将不胜感激。如果您需要我提供任何具体信息,请告诉我。

想想看,当我们升级到 mongo php 驱动程序 1.2.7 时,此错误开始发生。思潮?

从命令行使用curl进行故障排除。例如,http://aws.amazon.com/

$ curl -i http://aws.amazon.com/
HTTP/1.1 200 OK
Date: Tue, 08 May 2012 19:55:14 GMT
Server: Server
x-amz-id-1: 0C8YK9MYJMCCSE8R09E5
x-amz-id-2: zx0HtU9Ub39tobXNBiMRLuE2mvnhQo4Kh1fyj0MdJcg=
Cache-Control: max-age=0
Expires: Tue, 08 May 2012 19:55:14 GMT
Content-Type: text/html; charset=UTF-8
Set-cookie: aws-session-id-time=2082758401l; path=/; domain=.amazon.com; expires=Tue, 01-Jan-2036 00:00:01 GMT
Set-cookie: aws-session-id=000-0000000-0000000; path=/; domain=.amazon.com; expires=Tue, 01-Jan-2036 00:00:01 GMT
Vary: User-Agent
Transfer-Encoding: chunked
...

-i包括标头。您应该会看到实际的状态代码,然后与您的access_logerror_log相关联。:)

让我知道这是否有帮助!

只是想记录我对这个绝对耗时的问题的回答。对我来说,curl显示了正确的HTML,但我的浏览器没有。

我立即从 AWS 控制台为我的负载均衡器禁用了Session Stickiness,现在它工作正常。

@Till curl建议是绝妙的:)

编辑:当您需要会话粘性时,您将来如何管理此问题?我不知道。但是应该有答案!

以防

万一其他人看到这个问题,而@Till的回答没有帮助。 我想指出的是,亚马逊的弹性负载均衡器有一个硬编码的 60 秒超时。 没有办法禁用它。

https://forums.aws.amazon.com/thread.jspa?threadID=33427&start=0&tstart=50

您需要在页面中添加"心跳",以通过HTTP连接返回数据。 ELB 监控活动并使您的会话保持活动状态。

对于某些应用程序来说,这可能是过分的,它完全删除了任何已启动的 php 缓冲并将数据刷新到 Web 服务器。 除此之外,GZIP需要在Web服务器(apache或其他(上禁用。

该脚本返回相当大量的数据,大约 64,000 个单个空格。 浏览器会忽略连续的单个空格,因此通常很容易将页面配置为使用此功能,而无需担心任何显示问题。

您也不需要经常调用此函数。 你有 60 秒,我通常会尝试让我的每 10 到 15 秒运行一次,但由于它确实休眠了一秒钟,所以不要太频繁地调用它,否则你会看到你的页面明显变慢。

函数如下:

function ELB_HeartBeat(){
echo str_repeat(' ',1024*64);
ob_implicit_flush(true);
while ( @ob_end_flush() );
@flush();
@ob_flush();
sleep(1); }