使用Ubuntu + Apache + PHP5缓慢执行PHP文件

时间:2012-02-21 20:45:14

标签: php apache

名为test.html的文件包含:

hello

需要几毫秒来回复。

名为test.php的文件包含:

hello

这个需要几秒才能回复。它们都是相同的代码,并且不包含实际的PHP代码。文件扩展名是唯一的区别!

我通过http://localhost/test.html或php

加载

我错过了服务器设置中的常见问题吗?我正在使用标准的Ubuntu 11.04,Apache2,PHP5配置。

感谢您的帮助...让我知道您需要的其他详细信息。

3 个答案:

答案 0 :(得分:1)

即使你的php文件中没有实际的php代码,它也会因为它的扩展而被apache发送到php解析器。 这可能会使它减慢几毫秒,而你的系统可能会更多。

就像其他人指出的那样,你可能有一些模块需要花费太多时间。但关于你原来的问题我的回答是站立的。即使没有代码,你的php文件也会被php解析。

答案 1 :(得分:1)

如果您想了解发生了什么,请尝试以下方法:

sudo -i
stop apache2
. /etc/apache2/envvars
apache2 -k start -X &
strace  -u www-data -tt -ff -o /tmp/strace $(ps -o "-p %p" h -u www-data) &

man strace了解它的作用,并且在完成后不要忘记apache2 -k stopstart apache2 :)记住你作为root是全能的,所以尽快出来。

尝试添加.htaccess文件并执行sudo apt-get install php-apc以查看操作码缓存的工作原理。下一步是直接下载源并将其与系统跟踪中发生的情况相匹配。享受。

答案 2 :(得分:0)

即使没有PHP代码,它也被解析为PHP。 Apache的配置/安装模块可能存在这个问题,或者如果你在PHP中有一堆(或任何一个有问题的)模块,可能会存在这个问题。