Я столкнулся с очень странной проблемой на Mac: Safari не может подключиться к localhost, тогда как все другие приложения подключаются нормально (Firefox, Chrome, ping и т. д.).
Мой /etc/hosts — это стандартная настройка:
$ egrep localhost /etc/hosts
# localhost is used to configure the loopback interface
127.0.0.1 localhost
::1 localhost
fe80::1%lo0 localhost
127.0.0.1 testing.localhost
Вопрос:Кто-нибудь еще сталкивался с этим? В чем может быть проблема?
Обновление №1: У меня есть сервер, работающий на localhost:8080. При доступе из Safari я получаю сообщение об ошибке «Safari не удалось подключиться к серверу».http://localhost:8080/" работает безупречно в Firefox и Chrome.
Обновление №2: Та же проблема с "http://127.0.0.1:8080/" - так что, похоже, это не связано с преобразованием localhost в 127.0.0.1.
решение1
Думаю, нам нужно немного больше информации по вашему вопросу.
Я предполагаю, что у вас запущен веб-сервер для приема запросов? У меня его сейчас нет, и Safari не подключается к 127.0.0.1, потому что он "Не удалось найти 127.0.0.1" - хотя я могу нормально его пинговать.
Итак, во-первых, вам нужно, чтобы что-то работало. Во-вторых, вы пробовали подключиться к testing.localhost с помощью Safari, просто на всякий случай, если эти две записи сбивают Safari с толку (это вполне возможно).
Когда вы говорите "приложения могут подключаться как обычно" в Chrome и Firefox, что вы видите? Веб-страницу, которую вы ожидаете увидеть? Другую ошибку?
Редактировать
Я скачал и установил MAMP, но не смог воспроизвести эту ошибку.
Некоторые темы форума предполагают, что разрешение IPv6 вызывает эту проблему. Я бы склонился к отключению IPv6 и удалению записи из файла hosts (временно, просто для тестирования)
- Меню Apple > Системные настройки
- Сеть
- Выберите сетевое подключение > Дополнительно
- Настроить IPv6 > Выкл.
Подайте заявку, перезапустите и посмотрите, что получится.
решение2
У меня такое уже случалось — при использованииhttp://имя_компьютера.local/У меня это сработало, но я не уверен, чем это будет отличаться от простого использования имени в файле хоста.
решение3
Закомментируйте строку:
::1 localhost
из вашего файла /etc/hosts. По-видимому, это вызвано поддержкой IPv6 в Safari.
решение4
Я не буду отвечать на ваш вопрос напрямую, но предложу альтернативное решение: используйтевиртуальныйхостxдля управления локальным DNS. Смотрите также, еслиМАМПне является хорошим решением для нужд вашего местного развития (если это то, что вам нужно).