www.localhost.com上的服务器响应时间太长

时间:2010-08-03 15:57:01

标签: php apache

一件非常奇怪的事情正在发生。我在新服务器上运行脚本(它可以在我当前的服务器和笔记本电脑上运行)。

奇怪的是,当我将内存限制增加到1024M(!)时,我只能将其用于(某种)工作。它正在提取一个大的zip文件并浏览文件,所以我认为这是正常的。而不是此脚本终止或以错误结束。我的浏览器收到错误消息:

  

www.localhost.com上的服务器是   花太长时间回应。

Localhost.com? Web服务器只是localhost:9090,我可以看到Apache仍在运行。也许Apache暂时崩溃,它找不到服务器?但是没有关于apache崩溃的日志文件。

这不是服务器问题,它更多地与我的PHP脚本和内存使用情况有关,所以不需要转移到服务器故障。

可能是什么问题?我怎么能缩小原因,我在这里迷失了!

服务器是运行带有PHP版本5.3.2的Apache 2.2的Windows服务器。可能笔记本电脑和其他工作服务器正在运行版本5.3.0和5.3.1 for PHP。

感谢大家的帮助

4 个答案:

答案 0 :(得分:1)

确保,

ini_set('display_errors','On');
ini_set('error_reporting',E_ALL);
ini_set('max_execution_time', 180);
ini_set('memory_limit','1024MB' );

我会在脚本的顶部弹出这个,看看会发生什么。它应该显示错误等。

另一件事,您检查了fopen以及它正在加载的文件的路径吗?

  

Abs 说,

     

检查正在压缩的文件可以通过PHP压缩(权限   尤其是在带有multi的Windows操作系统上   用户)

答案 1 :(得分:1)

我也一直遇到这个问题,直到我开始为使用Internet Explorer的人们开始寻找相同的东西时,这些网站都没有真正帮助。我修复它的方法是打开位于C:\Windows\System32\drivers\etc\hosts的系统主机文件,然后取消注释提及::1的行,这是IPv6所需的。之后它运作良好。

答案 2 :(得分:0)

不知何故,您的系统一直处于紧急状态,并未将localhost视为本地127.0.0.1地址。您的hosts文件是否已正确配置?这很可能是为什么你得到“太长时间无法响应”的错误:

marc@panic:~$ host www.localhost.com
www.localhost.com has address 64.99.64.32

marc@panic:~$ wget www.localhost.com
--2010-08-03 22:41:05--  http://www.localhost.com/
Resolving www.localhost.com... 64.99.64.32
Connecting to www.localhost.com|64.99.64.32|:80... connected.
HTTP request sent, awaiting response... Read error (Connection reset by peer) in headers.
Retrying.
就DNS系统而言,

www.localhost.com是完全有效的主机名。

答案 3 :(得分:0)

我不是任何方式的PHP大师,但您是否将提取的文件写入应用程序范围内的临时本地存储位置?因为如果你不是那么我认为发生的事情是应用程序将zip文件和提取的文件存储在内存中,然后尝试读取它们。因此,如果它是一个大型压缩文件和/或提取的文件很大,那么在读取和处理操作引入的开销之上会产生大量开销。

所以如果你还没有我将文件解压缩并将它们写入自己文件夹中的磁盘,此时处理zip文件,然后遍历新创建的目录中的文件并执行你需要的任何操作对他们来说。