Как отладить веб-сайт, который не загружается

Аппаратные брандмауэры как правило имеют тенденцию быть более надежными и быстрее. Так как производитель может выбрать/создать OS, они могут сделать его очень характерным для поддержки брандмауэра. Программные брандмауэры не имеют этой роскоши. Они зависят от ОС, на которой они установлены.
Однако существует много хороших программных брандмауэров. Некоторые, как iptables, даже свободны. Если Вы надеетесь защищать среднюю и крупную бизнес-сеть, то IMO необходимо выбрать аппаратный брандмауэр.
Я думаю, что Вы попадаете в точку со своим вопросом, это - действительно тот же вопрос: Вы получаете то, за что Вы платите.

Править: Другой вещью, которая должна иметь значение для Вас, является сертификация ICSA. Существует приблизительно 20-25 аппаратных брандмауэров в этом списке и приблизительно 50 программных брандмауэров, включая персональные брандмауэры.

1
задан 9 February 2011 в 17:29
3 ответа

Первый шаг должен был бы изолировать, где отказ происходит. Это кажется, что Вы смогли соединиться с сервером во время отключения электричества, таким образом, кажется маловероятным мне, что был общий отказ сервера или проблема локальной сети сервера.

Первая вещь, которую я сделал бы, если бы мой веб-браузер не мог поднять страницу, состояла бы в том, чтобы установить, если порт 80 отвечает на попытки подключения. Самый легкий способ сделать, который должен использовать telnet, например, (принятие Вы используете что-то подобное Unix):

$ telnet your.server.name 80

Испытайте его с серверами, которые Вы знаете, работают для наблюдения то, на что похоже успешное сообщение. Для www.google.com, например, я добираюсь:

 $ telnet www.google.com 80
 Trying 74.125.95.103...
 Connected to www.l.google.com.
 Escape character is '^]'.

(Для выхода из telnet в этом состоянии необходимо поразить Ctrl-], затем Войти, затем Ctrl-D.)

Отказы, которые Вы могли бы видеть, включают отказ DNS:

$ telnet fake.dns.entry 80
telnet: could not resolve fake.dns.entry/80: Name or service not known

В этом случае Вы продолжили бы путем попытки соединиться с IP-адресом.

Другая возможность отказа является отказанным или синхронизированным соединением:

$ telnet serverfault.com 99
Trying 64.34.119.12...
telnet: Unable to connect to remote host: Connection timed out

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

$ telnet 192.168.0.237
Trying 192.168.0.237...
telnet: Unable to connect to remote host: No route to host

Что означает, что сервер не существует в адресе, Вы думали, что он сделал, или существует промежуточная проблема сетевой маршрутизации.

Необходимо сначала протестировать это из внешней стороны сеть, сервер работает, предпочтительно где-нибудь несколько разъединенные ISPs. Затем попробуйте его от локальной сети. Затем попробуйте его от локальной машины, с помощью "localhost" вместо имени хоста, предположив, что веб-сервер установлен слушать закольцованные соединения.

После того как Вы знаете шаблон отказов, затем можно начать пытаться выяснить, где отказ происходит. Мой инстинкт пищеварительного тракта - то, что Ваш nginx или FastCGI являются корнем проблемы, а не некоторой неустойчивой сетевой проблемы, которая не влияет на трафик SSH, но не действительно возможно диагностировать далее, сначала не рассматривая сетевой вопрос.

Надежда это дает Вам некоторое представление о том, что запустить со следующего раза.Удачи.

Обновление

Я просто заметил Ваше ре вопроса о стороне лучший способ "использовать" файлы журнала. Если Вы посреди поиска и устранения неисправностей проблемы, я рекомендую использовать tail. Откройте две ssh сессии на сервере, и в одном tail -f /var/log/nginx/access_log и в другом tail -f /var/log/nginx/error_log (или независимо от того, что пути находятся в Вашей системе).

Если необходимо вырыть через плотный файл журнала после того, как факт, хороший инструмент для запуска с будет less. Просто выполненный less /var/log/nginx/error_log, и затем нажмите пространство к странице вниз, b к странице, / инициировать поиск, после который n найдет следующий результат поиска и N найдет предыдущий результат и использование q выходить назад к оболочке.

Я предположил бы, что существуют лучшие инструменты, характерные для конкретных типов журналов, но tail и less обычно получайте меня приблизительно 90% того, в чем я нуждаюсь при поиске и устранении неисправностей моих журналов.

4
ответ дан 3 December 2019 в 18:06

Необходимо использовать IP-адреса, внешние для местоположения, как прокси или что-то. Можно попытаться использовать сеть Tor для этого вида тестирования. Первая вещь состоит в том, чтобы проверить, доступен ли сайт от различных мест в Интернете. Вероятно, записи DNS были изменены недавно и еще не распространили.

0
ответ дан 3 December 2019 в 18:06

Вы не предоставили информации о, как сервер настроен / где его размещенный. Существуют все виды вещей, которые могли бы влиять на это - например, проблемы сетевого соединения, проблемы конкуренции CPU о виртуальной машине.

Я предполагаю, что Вам настроили регистрацию ошибок правильно и проверили, что не было никакого изменения в шаблоне ошибок во время этих отключений электричества.

Существует, вероятно, не много, можно сделать для анализа то, что произошло в предыдущем событии - но действительно надейтесь видеть, было ли изменение в ответ времена.

Продвигаясь Вы могли бы полагать, что установка iptables зарегистрировала запуск каждого квитирования tcp на порте 80 и начала писать %D в файлы журнала. Затем надейтесь видеть, существуют ли медленные ответы / разрывы между syn пакетами и завершенными ответами.

Если система дает последовательную задержку между syn cookie и ответом, то проблема не с программным обеспечением, работающим на машине.

При выполнении внешний (http) и внутренний (просто демон, который пишет что-то в файл журнала затем, спит для интервала кузнеца) heartbeat против сервера могли бы быть хорошей идеей также. Снова, если Вы видите проблемы о внешнем heartbeat, но не внутреннем, он указывает на сетевую проблему, если Вы видите разрывы в обоих, затем существует проблема с аппаратными средствами самого сервера.

Рассмотрите добавление клиентского агента производительности, такого как бумеранг ко времени отклика страницы журнала также.

0
ответ дан 3 December 2019 в 18:06

Теги

Похожие вопросы