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

Как отладить проблему POST, связанную с Squid / Tomcat в Ubuntu / EC2?

Я запускаю сервер Tomcat (6.0.28) на Ubuntu (10.10) с включенным APR (напрямую на порт 80 без какого-либо внешнего доступа к веб-серверу).

Когда я отправляю страницу из браузера и данные POST имеют большой размер (> 1444 байта), запрос не выполняется, и я получаю ошибку «504». Если данных меньше, запрос выполняется.

Это проблема только тогда, когда доступ к сайту осуществляется через прокси-сервер Squid и / или с низкой пропускной способностью. Нет проблем, если доступ к сайту осуществляется через быстрое Интернет-соединение.

Я включил RequestDumperValve, и он постоянно показывает усеченный запрос POST, а затем прерывается, ничего не регистрируя в журнале доступа tomcat.

Чтобы запутать вещи, у меня есть это:

Я сравнил файлы конфигурации apache2 и файлы конфигурации tomcat и не нашел никакой разницы.

Мои наблюдения на данный момент:

На стороне конфигурации Tomcat APR включен и disableUploadTimeout = "false". Все остальное по умолчанию.

Или это все-таки проблема Squid? Или что-то на уровне сети / TCP?

Есть подсказки, что еще я могу попробовать?

Это была проблема, связанная с размером MTU. Когда клиенты использовали модемы ADSL, а маршрутизаторы имели проблему «черной дыры» PMTU, возникала эта странная проблема.

Мы снизили MTU на наших серверах до 4192, и все было хорошо. (Это лучшая практика или что?)