В течение последних 24 часов два независимых сервера не могут подключиться к нашему веб-серверу. Они пытаются открыть соединение через порт 80.
Оба они получают ошибки "время ожидания соединения истекло". Эти серверы находятся в двух разных странах. Жду tracert с этих серверов.
Но в то же время, я думаю, причина кроется в нашем собственном сервере или перед ним. Хостинговая компания утверждает, что с netscaler нет проблем.
Где я могу проверить наш ящик centos, чтобы отследить отклоненные соединения? Можно ли посмотреть какие-нибудь журналы?
ОБНОВИТЬ:
Сделайте три независимых сервера. Оказывается, Paypal также не может отправлять уведомления о мгновенных платежах. Все три сервиса пытаются вызывать отдельные страницы на нашем сервере.
Мы использовали Paypal Sandbox, чтобы повторить ошибку, и теперь мы можем постоянно ее тестировать. Мы тестировали это на других сайтах. Paypal отправляет http-запрос следующим образом:
Content-Type: application/x-www-form-urlencoded
Content-Length: 699
К сожалению, наш сервер не получает этот HTTP-запрос. Мы пробовали это на другом сервере за тем же netscaler. Он также не получает HTTP-запрос.
Я думаю, что netscaler по какой-то причине блокирует соединение.
Почему netscaler блокирует это соединение? На что мне обратить внимание?
ОБНОВЛЕНИЕ-2:
Кажется, что любой HTTP-запрос без информации "user-agent" блокируется на уровне netscaler.
Вместо того, чтобы просматривать журналы сервера, сначала убедитесь, что HTTP-запрос поступает на ваш сервер или нет через;
tcpdump -nni any host 111.111.111.111 and port 80
Поскольку 111.111.111.111 - это удаленный IP-адрес. Если вы ничего не видите после того, как они инициируют соединение, проблема в другом месте. Вы можете не увидеть отклоненные соединения в файле журнала веб-сервера, если он каким-то образом заблокирован на более низком уровне.