Ошибки

ERR_CONNECTION_REFUSED: что значит и как исправить

ERR_CONNECTION_REFUSED — браузеру отказали в соединении. Обычно это значит, что на нужном порту сервера никто не принимает запросы: веб-сервер остановлен, работает на другом порту или слушает другой адрес. Реже соединение отклоняет брандмауэр.

Обновлено 08.10.2026≈ 5 мин чтения
Содержание 10

Что сделать прямо сейчас

Если вы просто открываете сайт:

  1. Посмотрите на адрес. Если после имени сайта стоит двоеточие и число — например, example.com:8080, — возможно, порт указан по ошибке: попробуйте открыть адрес без него.
  2. Обновите страницу через пару минут: сервер могли перезапускать.
  3. Откройте другой сайт. Если другие сайты открываются, проблема, скорее всего, на стороне этого сайта — сообщите владельцу.
  4. Если вы открываете localhost или 127.0.0.1, это адрес вашего же компьютера. Проверьте, запущена ли программа, которая должна там отвечать, и на каком порту она работает.

Если сайт ваш, переходите к разделам «Как проверить» и «Как исправить» ниже: там все команды по шагам.

Что значит ошибка

Чтобы открыть сайт, браузер сначала устанавливает с сервером TCP-соединение: для адресов https:// — на порт 443, для http:// — на порт 80. Если на этом порту никакая программа не принимает соединения, система сервера отвечает на попытку сигналом сброса — так устроен протокол TCP. Chrome понимает это как отказ и показывает ERR_CONNECTION_REFUSED, в исходном коде Chrome это ошибка -102.

Отказ приходит быстро, страница ошибки появляется почти сразу. Этим ошибка отличается от ERR_CONNECTION_TIMED_OUT: там браузер долго ждёт и не получает никакого ответа.

Как выглядит в Chrome

Заголовок — «Не удается получить доступ к сайту», под ним — «Сайт example.com не позволяет установить соединение.» Chrome советует проверить подключение к интернету, а также настройки прокси-сервера и брандмауэра. Внизу — код ERR_CONNECTION_REFUSED и кнопки «Перезагрузить» и «Сведения».

Причины

ПричинаКак проявляется
Веб-сервер остановлен или не запустился после ошибки в настройкахНе открываются ни http://, ни https://
HTTPS не настроен, и порт 443 никто не слушаетhttp:// открывается, https:// — нет
Программа слушает только адрес 127.0.0.1На самом сервере сайт открывается, снаружи — нет
Сайт работает на другом портуОткрывается только с портом в адресе, например :8080
Брандмауэр отклоняет соединенияПрограмма слушает порт, но снаружи приходит отказ

Как проверить

Команды из шагов 1–3 вводятся в терминале сервера. Если вы ещё не подключались к нему, начните с инструкции Как подключиться к VPS по SSH. Скопируйте команду целиком, замените example.com на адрес своего сайта и нажмите Enter.

Шаг 1. Проверьте, работает ли nginx

sudo systemctl status nginx

В выводе должна быть строка Active: active (running). Если ответ не помещается на экран, листайте его стрелками, а чтобы вернуться к вводу команд, нажмите Q. Если в строке Active стоит failed, nginx не запустился — перейдите к шагу 2.

Шаг 2. Проверьте настройки nginx

sudo nginx -t

Если всё в порядке, в ответе будут слова syntax is ok и test is successful. Если есть ошибка, команда покажет файл и номер строки с ней.

Шаг 3. Посмотрите, какие порты слушает сервер

sudo ss -tlnp

В колонке Local Address:Port у nginx должны быть порты 80 и 443. Адрес 0.0.0.0 или [::] перед портом значит, что соединения принимаются на всех адресах сервера, а 127.0.0.1 — только с самого сервера.

Шаг 4. Проверьте сайт с другого компьютера

Эту команду выполните не на сервере, а на другом компьютере: так вы увидите сайт так же, как посетители.

curl -I https://example.com/

При отказе curl завершится с ошибкой 7 — не удалось подключиться.

Как исправить

nginx остановлен. Проверьте настройки, запустите nginx и включите его автозапуск при загрузке сервера:

sudo nginx -t
sudo systemctl start nginx
sudo systemctl enable nginx

Не открывается только https://. Значит, HTTPS не настроен: нужны сертификат и блок server для порта 443. Как это сделать — в инструкции Бесплатный SSL-сертификат.

Приложение слушает только 127.0.0.1. Для приложения на Node.js или Python так и должно быть, если перед ним стоит nginx: посетители подключаются к nginx, а он передаёт запросы приложению через proxy_pass. Как это настроить — в инструкции Как разместить сайт на VPS.

Брандмауэр. Если правило брандмауэра отклоняет соединения, браузер получит отказ, а если молча отбрасывает пакеты — ERR_CONNECTION_TIMED_OUT. Правила брандмауэра ufw в Ubuntu покажет команда:

sudo ufw status

Порты 80 и 443 должны быть разрешены. Если у хостинга есть брандмауэр в панели управления, проверьте и его.

На обычном хостинге

На виртуальном хостинге веб-сервером управляет хостинг. Если ошибку видят все посетители, напишите в поддержку адрес сайта, время и код ошибки.

Если сайт недавно переехал, проверьте, куда указывает домен:

dig example.com +short

Команда выведет IP-адрес. Если это адрес старого сервера, исправьте A-запись там, где находится DNS-зона домена, — подробнее в инструкции Как перенести сайт на другой хостинг.

Соседние ошибки

ОшибкаЧем отличается
ERR_CONNECTION_TIMED_OUTОтвета нет вовсе: пакеты теряются или их молча отбрасывает брандмауэр
ERR_CONNECTION_RESETСоединение установилось, а потом его оборвали
ERR_EMPTY_RESPONSEСоединение приняли, но закрыли, ничего не ответив
ERR_UNSAFE_PORTChrome сам не стал подключаться к этому порту

Источники

Проверено в Chrome 155 на локальном тестовом сервере 7 октября 2026 года.

Сверено 7 октября 2026 года.

Что почитать дальше

Проверено и обновлено: 08.10.2026