Периодическая ошибка доставки статического контента от tomcat - PullRequest
1 голос
/ 28 октября 2011

У меня есть файл javascript (и я видел это с другим статическим содержимым), который иногда неправильно доставляется tomcat, несмотря на ответ 200. Я пробовал версии сервера 6.0.18 и 6.0.33 с тем же результатом. Ниже приведен пример результата, который я вижу при использовании wget для запроса одного и того же элемента несколько раз, не стесняйтесь попробовать себя, если это поможет:

- 20: 00: 46-- http://t -pen.org / TPEN / transcription.js => `transcription.js.28 ' Разрешение t-pen.org ... 165.134.241.71 Подключение к t-pen.org | 165.134.241.71 |: 80 ... подключено. HTTP-запрос отправлен, ожидание ответа ... 200 OK Длина: не указано

(см. Тип MIME)

- 20: 01: 06-- http://t -pen.org / TPEN / transcription.js => `transcription.js.29 ' Разрешение t-pen.org ... 165.134.241.71 Подключение к t-pen.org | 165.134.241.71 |: 80 ... подключено. HTTP-запрос отправлен, ожидание ответа ... 200 OK Длина: 97 373 (95 КБ) [текст / javascript]

Проблема в браузере - сообщение о том, что тип mime для javascript неверен. Я не испортил конфигурацию MIME-типа в tomcat, и в большинстве случаев она проходит правильно, поэтому я действительно не знаю, где я могу попытаться решить эту проблему. Любая помощь очень ценится.

curl вывод для проблемного GET:

$ curl -v http://t-pen.org/TPEN/transcription.js > /dev/null
> GET /TPEN/transcription.js HTTP/1.1
> User-Agent: curl/7.21.6 (i686-pc-linux-gnu) libcurl/7.21.6 OpenSSL/1.0.0e zlib/1.2.3.4 libidn/1.22 librtmp/2.3
> Host: t-pen.org
> Accept: */*
> 
< HTTP/1.1 200 OK
< Server: Apache-Coyote/1.1
< Transfer-Encoding: chunked
< Date: Thu, 27 Oct 2011 20:43:55 GMT
< 
{ [data not shown]
100 97373    0 97373    0     0  86338      0 --:--:--  0:00:01 --:--:--  112k

и нормальный:

$ curl -v http://t-pen.org/TPEN/transcription.js > /dev/null
> GET /TPEN/transcription.js HTTP/1.1
> User-Agent: curl/7.21.6 (i686-pc-linux-gnu) libcurl/7.21.6 OpenSSL/1.0.0e zlib/1.2.3.4 libidn/1.22 librtmp/2.3
> Host: t-pen.org
> Accept: */*
> 
< HTTP/1.1 200 OK
< Server: Apache-Coyote/1.1
< ETag: W/"97373-1319761050000"
< Last-Modified: Fri, 28 Oct 2011 00:17:30 GMT
< Content-Type: text/javascript
< Content-Length: 97373
< Date: Thu, 27 Oct 2011 20:45:21 GMT
< 
{ [data not shown]
100 97373  100 97373    0     0  86196      0  0:00:01  0:00:01 --:--:--  112k

1 Ответ

1 голос
/ 28 октября 2011

Наше решение проблемы состоит в том, чтобы переместить статический контент в расположение, обслуживаемое Apache, а затем использовать AJP через Apache, а не прямые запросы к Tomcat, поскольку запросы AJP обслуживаются соединителем AJP, а не соединителем HTTP / 1.1,вызывает наши проблемы.Это не в полной мере объясняет причину проблемы, но именно так мы ее обходим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...