Назад | Перейти на главную страницу

Как возможно, что веб-сайт не работает, но трассировка в порядке?

У меня есть веб-сайт BlueHost (тарифный план «Pro»), который часто не работает. Firefox говорит:

The connection has timed out

The server is taking too long to respond.
    The site could be temporarily unavailable or too busy. Try again in a few moments.
    If you are unable to load any pages, check your computer's network connection.
    If your computer or network is protected by a firewall or proxy, make sure that Firefox is permitted to access the Web.

Однако с трассировкой все в порядке:

  1    <1 ms    <1 ms    <1 ms  speedport.ip [192.168.2.1]
  2    39 ms    40 ms    40 ms  217.0.112.281
  3    42 ms    41 ms    43 ms  87.186.228.226
  4    49 ms    50 ms    48 ms  217.231.42.245
  5    48 ms    49 ms    49 ms  62.157.251.154
  6   184 ms   184 ms   183 ms  xe-0-3-0.slc10.ip4.gtt.net [89.149.187.137]
  7   188 ms   185 ms   196 ms  ve61.ar05.prov.acedc.net [69.31.64.6]
  8   186 ms   185 ms   185 ms  prv-212-1-0-1.unifiedlayer.com [69.27.175.151]
  9   186 ms   185 ms   185 ms  69-195-64-129.unifiedlayer.com [69.195.64.129]
 10   186 ms   185 ms   185 ms  162-144-240-157.unifiedlayer.com [162.144.240.157]
 11   186 ms   186 ms   186 ms  162-144-240-111.unifiedlayer.com [162.144.240.111]
 12   185 ms   185 ms   186 ms  box950.bluehost.com [69.195.124.150]

Мне нужно иметь возможность отслеживать, находится ли мой сайт в сети или офлайн, и я подумал, что трассировка маршрута - подходящий инструмент для этого.

Сайт работает на сервере. Когда вы завершаете серверный процесс, сервер не выключается волшебным образом. Также не при неправильной настройке брандмауэра (и блокировке порта 80) ни сервер не отключается, ни правило ICMP в брандмауэре не удаляется.

Traceroute использует протокол ICMP для достижения адреса, а HTTP-сервер использует протокол HTTP, разные порты и разные подходы. Я могу связаться с адресом с помощью эхо-запроса ICMP, но если порт, с которым я пытаюсь связаться, каким-то образом закрыт или завис, я получу ошибку тайм-аута. И если вы уверены, что сервер включен, а порт работает (прослушивает), тогда лучше проверить правила брандмауэра.

Что такое Виртуальный хост?

Некоторые веб-серверы, такие как Apache, можно настроить для использования так называемого виртуальный хостинг; по сути, это локальная служба перенаправления. По сути, это работает так: веб-сервер (в данном случае мы предполагаем, что это Apache2) будет выбирать, какие документы обслуживать, в зависимости от того, с какого домена и / или IP-адреса был отправлен запрос. Например: если вы должны были перейти на веб-сайт по адресу example.com, сервер может предоставить вам веб-файлы, хранящиеся в /var/www/com.example, но если вы перейдете на другой сайт по адресу example-2.com он может предоставить вам файлы по адресу /var/www/com.example-2. Все, что здесь делает сервер, - это изменение того, что называется корень документа, который по сути является каталогом домена "root" (например, google.com = корневой каталог, google.com/file/ = не корневой каталог, а папка, в которой хранится в корневой каталог).

Почему это актуально

Какое это имеет отношение к вашей ситуации: ваш домен в http://xxx.bluehost.com может на самом деле указывать на точный тот же сервер, что и другой веб-сайт, но сервер будет по-другому отвечать из-за вашего доменного имени; Поэтому, когда вы выполняете трассировку на этот сервер, он все равно может успешно ответить, потому что Bluehost, возможно, отключил только ваш веб-сайт. И справедливое предупреждение: я всегда подозревал, что хосты, предлагающие дешевый тарифный план для веб-серверов, будут иногда закрывать веб-сайты своих более мелких клиентов, чтобы освободить место для более крупных клиентов (пропускная способность, вычислительная мощность и т. Д.). Если вы читаете свои соглашения и контракты, вероятно, есть пункт, который дает им право это делать.

НОТА: Не путайте виртуальный сервер - или виртуальный компьютер - с виртуальный хост. Они очень разные, хотя и имеют схожие цели. Кроме того, приношу свои извинения, если это звучит так, как будто я предполагаю, что вы ничего не знаете о веб-хостинге и тому подобном, просто проще предположить, что кто-то не знает, чем объяснять это позже; и это дает информацию людям, которые могут прочитать этот вопрос позже!