После настройки моей среды разработки на Mac OS X Lion (новый macbook air, приобретенный в январе 2012 года), я заметил, что разрешение на виртуальный хост в первый раз происходит очень медленно (около 3 секунд), но после этого происходит быстро, пока Продолжаю регулярно загружать.
Если я оставлю его нетронутым на пару минут, а затем перезагрузлю снова, первая перезагрузка будет (снова) мучительно медленной; похоже, что что-то кешируется.
Как видно ниже, я не использую TLD .local.
Моя установка: Apache 2 - MySQL - PHP установлен и включен - добавлена пара виртуальных хостов, один из которых я создал для localhost
Мои / etc / hosts:
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost
127.0.0.1 myproject.dev
::1 myproject.dev
fe80::1%lo0 myproject.dev
Настройка моего виртуального хоста в username.conf:
NameVirtualHost *:80
<Directory "/Users/myusername/Sites/">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<VirtualHost *:80>
ServerName localhost
DocumentRoot /Users/myusername/Dropbox/dev_envs/
</VirtualHost>
<VirtualHost *:80>
ServerName myproject.dev
DocumentRoot /Users/myusername/Dropbox/dev_envs/myprojectname
</VirtualHost>
Ответы:
У меня была точно такая же проблема, и это сводило меня с ума!
Поместите все записи файла hosts для localhost в одну строку, например:
Сработало для меня как шарм. Похоже на ошибку в Lion.
источник
Есть еще одна проблема с 10.7. * По 10.8.4 для сайтов, заканчивающихся на ".local", которая вызывает пятисекундный поиск. Детали и решение любезно предоставлены Брэмом (США) Ван Даммом по следующей ссылке:
http://www.bram.us/2011/12/12/mamp-pro-slow-name-resolving-with-local-vhosts-in-lion-fix/
"По умолчанию любое имя хоста, заканчивающееся на .local, рассматривается как хост Bonjour, а не путем запроса записей DNS-сервера в настройках сети.
Чтобы решить эту проблему (без необходимости переименовывать каждый виртуальный хост), вам необходимо добавить записи IPv6 для каждого из ваших виртуальных хостов в файл / etc / hosts: "
источник
.local
, и добавление обеих записей IPV4 / 6 исправило для меня все (OS X 10.9)::1
это сокращение от IPv6127.0.0.1
. Но чтоfe80::1%lo0
значит? - а, ответил на superuser.com/questions/241642/…У меня была такая же проблема, также на Lion.
Как ни странно, мое решение было противоположным Джереми. У меня была целая куча записей someproject.dev в одной строке в / etc / hosts. Загрузка сайта на любой из них в первый раз заняла целую вечность, около минуты. Если бы я использовал его снова в течение 5 секунд или около того, это было бы очень быстро, но намного дольше, и это снова заняло бы минуту. Я подозревал всякие вещи, соединения mysql, версии Ruby, ошибки Rails, Apache, Phusion Passenger. Пока я, наконец, не посмотрел на консоль и не понял, что предпринимались попытки поиска DNS.
Итак, я поместил их все в отдельные строки:
И вдруг все снова стало круто. То же самое на обеих моих машинах.
источник
Мне помогло указание того же хоста для IPv6 :: 1.
источник
Убедитесь, что записи IP v6 не находятся в строке с localhost
записи IP v6 идут в отдельной строке
Иногда это происходит очень быстро, но есть редкие исключения, когда старые лаги возвращаются. Однако они могут быть основаны на других причинах.
источник
В OSX El Capitan у меня сработало создание дублирующей записи IPv6 прямо над записью IPv4, вот так
источник
Для меня важно обеспечить определение имен хостов в начале файла. По умолчанию строка 127.0.0.1 localhost уже находится в начале, просто добавьте свои записи в ту же строку.
источник
У меня была такая же проблема, и я обнаружил, что она вызвана включением IPv6 в моей локальной сети, но неправильная настройка IPv6 между моей сетью и моим интернет-провайдером. Судя по всему, DNS-сервер IPv6 имеет приоритет над DNS IPv4, когда клиенту даны оба. Клиенту требовалось несколько секунд (при каждой попытке), чтобы обнаружить, что DNS IPv6 недоступен или отсутствует, а затем вернуться к IPv4 DNS.
источник
Примечание. Я использую Windows и XAMPP, однако при исследовании проблемы многие люди сталкивались с той же проблемой в Windows и Mac. Ответьте для справки для тех, кто найдет этот вопрос, поскольку я потратил часы, пытаясь найти решение, которое подойдет мне:
Я пробовал много решений для той же проблемы, включая размещение всех хостов на одной линии, удаление избыточных хостов и виртуальных хостов, а также включение линий IPv6 - ни одно из них в одиночку не увенчались успехом.
Единственное решение, которое до сих пор работало для меня, - это комбинация всех решений:
В моем файле hosts мои хосты в настоящее время находятся на отдельных строках, и пока проблема, похоже, исправлена.
Удачи всем, кто пытается решить эту проблему, и если у кого-то есть какая-либо информация, которую можно добавить, сделайте это - похоже, это проблема, затронувшая множество людей, без единой известной причины или решения.
источник
У меня была такая же проблема, и я наконец понял, что у меня одна и та же запись хоста дважды в одной строке:
например
Я удалил второй экземпляр того же хоста (в приведенном выше примере - host1) - и все сразу ускорилось.
Я почувствовал себя немного глупо, когда обнаружил это, но когда у вас есть 10 длинных имен хостов в одной строке и вы часто добавляете / удаляете, это можно легко упустить.
источник
Уловка, которая сделала это для меня, заключалась в добавлении
в первой строке хост-файла.
Из всех моих виртуальных хостов только те, которые использовали базу данных, работали медленно. Я считаю, что это потому, что процесс поиска «localhost» для подключения к базе данных замедлил работу, поскольку я добавил только адреса своих виртуальных хостов, а не «localhost». Теперь все снова быстро. :)
источник
Я тоже с этим сталкивался. У меня есть набор vhosts, определенных в двух строках, одна для IPv4 и одна для IPv6. Перемещение хоста, который я пытался решить, чтобы быть первым в списке, ускорило его.
источник
Глупая проблема, из-за которой я потратил много времени: после применения ответа @ Cleverlemming я выяснил, что в файле hosts есть повторяющиеся записи. Что-то вроде:
Тогда разрешение IP для site3.local и site4.local занимает эти 5 секунд смерти.
источник