Apache VirtualHost慢查找

Leo*_*ssi 33 apache virtualhost httpd.conf

我终于管理了如何为我的虚拟主机需要正确配置httpd.conf.这是httpd.conf文件的相关部分

NameVirtualHost *:80

<VirtualHost *:80>
  ServerName localhost
  DocumentRoot /Applications/XAMPP/htdocs/
</VirtualHost>

<VirtualHost *:80>
  ServerName test.local
  DocumentRoot /Applications/XAMPP/htdocs/test/
</VirtualHost>

<VirtualHost *:80>
  ServerName work.local
  DocumentRoot /Applications/XAMPP/htdocs/work/
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

当我访问localhost上的任何内容(即http:// localhost/phpmyadmin)时,一切都非常快.每当我访问test.local或work.local(或我配置的其他人)时,它会在查找上花费10-15秒.以下请求被正确处理并且速度非常快但是在一分钟左右不活动之后,它必须再次查找.

这是我的/ etc/hosts文件

127.0.0.1       localhost
255.255.255.255 broadcasthost
#::1             localhost
fe80::1%lo0     localhost

# Virtualhosts
127.0.0.1       test.local     work.local    yii.local
Run Code Online (Sandbox Code Playgroud)

我怎么能解决这个恼人的问题?

Ale*_*sen 72

将您的虚拟主机添加到第一行:

127.0.0.1       localhost test.local work.local yii.local
Run Code Online (Sandbox Code Playgroud)

并删除最后一行.

这应该够了吧.您的vhost现在是localhost的别名.在多行中拥有相同的IP地址并不是一个好主意.这只会混淆DNS缓存.

  • 神圣****这如此丰富,拯救了我的生命!毫无疑问,我花了三分之一的时间在本地开发,等待本地虚拟主机的缓慢加载!谢谢! (3认同)

xdi*_*222 5

对于使用Chrome且虚拟主机查找速度仍然很慢的任何人,您需要将虚拟主机名更改为,而不是.local。更改test.localtest.dev

此处的说明和来源:http : //bencrowder.net/blog/2012/10/slow-localhost-in-chrome/


Jus*_*tin 5

为我修复的是编辑httpd-vhosts.conf并更改以下所有实例:

<VirtualHost *:80>
Run Code Online (Sandbox Code Playgroud)

到:

<VirtualHost 0.0.0.0:80>
Run Code Online (Sandbox Code Playgroud)

解决主机需要大约 2-5 秒,现在它是即时的。我不必在我的主机文件中修改我的站点的顺序。这只是让它使用 ipv4 而不是 ipv6,我敢打赌你无论如何都不会使用。