最简单的脚本:
<?php echo 'hello';
大约需要3秒钟才能执行。在Apache服务于网页之前,似乎有很长的时间间隔。
我尝试关闭防病毒软件,禁用ipv6等等,但Apache仍然很慢。我该怎么办?
编辑:
其他信息:
Apache错误日志中几乎没有PHP通知:
[Thu Jul 01 08:37:21 2010] [error] [client 127.0.0.1] PHP Notice: Undefined variable: ref in D:\\data\\o\\WebProjects\\elearning\\application\\modules\\clientarea\\controllers\\ViewController.php on line 578, referer: http://elearning/clientarea/view/course/teid/1/cid/1
答案 0 :(得分:13)
通常建议此问题是由您的防火墙干扰或在您的网络接口上启用IPv6引起的,但这些解决方案并未解决我的问题。事实证明,默认情况下Windows 7主机文件“C:\ Windows \ System32 \ drivers \ etc \ hosts”已将此行注释掉:
# 127.0.0.1 localhost
在我的情况下,简单地取消注释这一行就将localhost性能改回原来的状态,而不是每次加载页面时令人讨厌的3-5秒等待。请记住,您需要运行具有管理员权限的文本编辑器来编辑hosts文件。
答案 1 :(得分:5)
我有同样的问题。修改主机文件并没有提高页面加载速度。经过几个小时的搜索,我终于找到了解决方案。
我更改了我的httpd.conf文件,以便将监听地址绑定到一个IP地址而不是所有可用接口:
#Listen 80
Listen 127.0.0.1:80
现在所有的网页都是即时加载而不是~10秒。
希望得到这个帮助。
编辑:实际上它没有解决问题,它仍然是随机慢。 我不得不承认,我最终将我的网络服务器移到了一个Linux虚拟机上,我再也没有观察到任何响应时间慢。
答案 2 :(得分:3)
我正在使用Laravel Framework,对我有用的是在php.ini中更改指令realpath_cache_size = 1M。它将加载时间从3秒改为半秒!
realpath_cache_size = 1M
答案 3 :(得分:0)
在我的情况下,默认情况下,标准文档root C:\PathToApache\htdocs
与本地网络上的其他用户共享。通过禁用共享该目录,我提高了很多Apache的性能。现在每个请求都需要不到一眨眼。
我希望这将有助于所有未来的读者
答案 4 :(得分:0)
纯粹是为了帮助那些遇到Apache在Windows上遇到这种困境的人,我通过在::1 localhost
中评论C:\Windows\System32\drivers\etc\hosts
并添加127.0.0.1 127.0.0.1
来解决这个问题。
我发现我不得不在Windows服务中重新加载Apache,因为我的网站会逐渐响应越来越慢。
未共享Apache htdocs
文件夹,更改Listen ...
中的httpd.conf
行似乎无法正常工作,我已经拥有了127.0.0.1 localhost
行我的C:\Windows\System32\drivers\etc\hosts
文件,但::1 localhost
行直接位于其下方。
正如@Erwinus在对帖子的评论中所建议的那样,我注释掉了这一行,并从this post添加了行127.0.0.1 127.0.0.1
。服务器响应时间似乎已大幅改善。
答案 5 :(得分:0)
唯一帮助我的是取消勾选框'在网络适配器的ipv4参数中注册dns'中的此连接地址,DNS设置下的按钮 - &gt;降低两个复选框。
答案 6 :(得分:-9)
使用任务管理器杀死不必要的进程。
顺便说一句,您应该使用?>
结束脚本。