Вопрос или проблема
Я пытаюсь загрузить свой локальный файл. Я виновен в изменении файла hosts и хотел бы узнать, может ли что-то из следующего быть причиной проблемы.
127.0.0.1 localhost
::1 localhost
127.0.0.1 localhost.localdomain localhost
У меня не установлены XAMPP или WAMP. Я пытаюсь использовать Visual Studio Code для загрузки простой веб-страницы (которая использует только js и html), поэтому я не хочу устанавливать больше программ, если это не обязательно.
Также, если кто-то может предложить другой способ выяснить, в чем причина, я буду признателен.
Другие детали:
- ОС: Windows 10: Версия 10.0.14393 Сборка 14393
- Браузеры: Chrome Версия 56.0.2924.87 (64-разрядная) и, возможно, Edge (я не пробовал другие)
Нижеуказанный вариант помог мне. Я не уверен, что он поможет вам.
Перейдите на chrome://flags и установите “Встроенный асинхронный DNS” в “Отключено”, затем перезапустите браузер.
Это позволяет получить доступ ко всем локальным доменам. Похоже, DNS просто вызывал проблему.
Обновление: В новых версиях Chrome воспользуйтесь кнопкой сброса всех настроек по умолчанию, так как опция, упомянутая выше, недоступна.
Ответ или решение
Ошибка ERR_CONNECTION_REFUSED на Localhost: Подробный Анализ
Когда вы сталкиваетесь с ошибкой ERR_CONNECTION_REFUSED
при попытке загрузить файл на localhost, это может быть результатом нескольких различных причин, особенно если вы модифицировали свой файл hosts. Давайте рассмотрим ваши настройки и предложим варианты решения этой проблемы.
Понимание Проблемы
Ошибка ERR_CONNECTION_REFUSED
обычно указывает на то, что ваш браузер не может установить соединение с сервером, работающим на вашем локальном компьютере. Это может происходить по разным причинам:
-
Отсутствие запущенного сервера: Чтобы локально обслуживать HTML и JavaScript файлы, вам нужно, чтобы на вашем компьютере работал сервер (например, Node.js, Python с локальным сервером или другой HTTP-сервер). Без него браузер не сможет обработать запрос.
-
Неверная настройка файла hosts: Файл hosts позволяет вашему компьютеру сопоставлять IP-адреса с доменными именами и если там прописаны неверные значения или дубликаты, это может привести к ошибкам. В вашем случае записи выглядят корректно:
127.0.0.1 localhost ::1 localhost 127.0.0.1 localhost.localdomain localhost
Эти записи соответствуют стандартной конфигурации для Windows и не должны вызывать проблем, если вы хотите получить доступ к
localhost
. -
Блокировка фаерволом или антивирусом: Иногда фаервол Windows или антивирусное программное обеспечение могут блокировать соединения на localhost, что также может вызывать эту ошибку.
-
Конфликты с другими программами: Если у вас есть другие приложения, которые могут использовать тот же порт (например, 80 или 8080), это также может вызвать конфликты и ошибки соединения.
Рекомендации по Поиску и Устранению Причин
Исходя из вышеизложенного, вот несколько шагов, которые вы можете предпринять для устранения проблемы:
-
Проверьте, запущен ли сервер:
- Если вы используете Node.js, можете запустить простой сервер с помощью команды
npx http-server
из командной строки. Убедитесь, что находитесь в папке с вашим проектом. - Если вы используете Python, выполните команду
python -m http.server
(Python 3) илиpython -m SimpleHTTPServer
(Python 2).
- Если вы используете Node.js, можете запустить простой сервер с помощью команды
-
Проверьте настройки фаервола:
- Войдите в параметры фаервола Windows и убедитесь, что нет блокировок для localhost. Возможно, вам необходимо добавить исключение для используемого вами серверного приложения.
-
Отключите антивирус:
- Попробуйте временно отключить ваш антивирус и проверьте, решит ли это проблему. Если это сработает, вам, возможно, придется внести изменения в настройки антивируса.
-
Используйте альтернативные браузеры:
- Попробуйте загрузить localhost в других браузерах (например, Firefox или Edge), чтобы убедиться, что проблема не связана с конкретным браузером.
Решение через Chrome
Как вы указали, изменение настроек Chrome через chrome://flags
может помочь. Вы можете сбросить настройки Chrome до значений по умолчанию:
- Откройте Chrome и перейдите в настройки.
- В разделе "Сброс и очистка" выберите "Восстановить настройки по умолчанию". Это может устранить проблемы с внутренними настройками DNS.
Заключение
Ошибка ERR_CONNECTION_REFUSED
может быть вызвана различными факторами, и важно поэтапно исключать каждую из возможных причин. Убедитесь, что сервер работает корректно, проверьте настройки вашего фаервола и антивируса, а также попробуйте другие браузеры и методы. Если проблема не устраняется, возможно, стоит обратиться к более комплексным решениям или переустановить программное обеспечение, которое вы используете для разработки.
Если у вас возникнут дополнительные вопросы, не стесняйтесь обращаться за поддержкой.