Tomcatdan statik kontentni etkazib berish vaqti-vaqti bilan noto'g'ri

200 ta javobga qaramay, ba'zan tomcat tomonidan to'g'ri etkazib berilmagan JavaScript fayli bor (va buni boshqa statik tarkib bilan ko'rganman). Xuddi shu natijaga ega server versiyalari 6.0.18 va 6.0.33 ni sinab ko'rdim. Quyida bir xil elementni bir necha marta so'rash uchun wget yordamida ko'rgan natijaning misoli quyida keltirilgan bo'lsa, o'zingizni sinab ko'ring.

--20:00:46-- http://t-pen.org/TPEN/transcription.js => `transcription.js.28' Resolving t-pen.org... 165.134.241.71 Connecting to t-pen.org|165.134.241.71|:80... connected. HTTP request sent, awaiting response... 200 OK Length: unspecified

(Mim turiga qarang)

--20:01:06-- http://t-pen.org/TPEN/transcription.js => `transcription.js.29' Resolving t-pen.org... 165.134.241.71 Connecting to t-pen.org|165.134.241.71|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 97,373 (95K) [text/javascript]

Brauzerdagi muammo JavaScript uchun mim turining noto'g'ri ekanligini bildirgan xabar. Tomcat'dagi mim tipi konfiguratsiyasi bilan bemavrid qildim va u ko'p marta to'g'ri keladi, shuning uchun men buni qaerga bartaraf etishga qodir ekanimni bilmayman. Har qanday yordam juda qadrlanadi.

curl output for problematic 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

va oddiy:

$ 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
Filtratingiz bormi? Sizning servlet-tasvirlaringiz qanday ko'rinishda?
qo'shib qo'ydi muallif palacsint, manba
curl bilan bir oz tajriba qildim va soxta GETlar uchun bir nechta boshqa sarlavhalar yuborilmasligini bilib oldim. Bu javob emas ekan, lekin u ham o'z fikringizni o'zgartirishi mumkin, men sizning savolingizni o'zgartirayapman, umid qilmaysiz deb umid qilaman va bu yordam beradi.
qo'shib qo'ydi muallif Tomasz Nurkiewicz, manba
Siz ko'rgan chunked transfer asosida ba'zi o'qishlarni qildim va men http/1.1 konnektiga noyob bo'lish uchun pastga tushib qolgan deb o'ylayman. Agar men AJP dan foydalansam, xatoni topolmayman. kasallarni sinovdan o'tkazishi va agar shunday bo'lsa, javob berish. Rahmat!
qo'shib qo'ydi muallif jdeerin1, manba
Palacsint 1 filtri bor, lekin uni olib tashlashga harakat qildim. My servlet xaritasi servlet nomlari va URL-larning javascriptga ta'sir qiladigan servletlar ro'yxati va servletlar ro'yxati, masalan: processImage /processImage
qo'shib qo'ydi muallif jdeerin1, manba
Dastlabki postdagi url biz ishlatadigan ish tufayli ishlamaydi.
qo'shib qo'ydi muallif jdeerin1, manba

1 javoblar

Muammoni hal qilishimiz statik kontentni apache tomonidan taqdim etilgan joyga ko'chirish va undan keyin AJP so'rovlarini HTTP/1.1 ulagichi o'rniga AJP ulagichi bilan emas, balki AJP so'rovlarini bizning xizmatimizga to'g'ridan-to'g'ri talablar bilan emas, balki apache orqali to'g'ridan-to'g'ri apache orqali amalga oshirishdan iborat. muammolar. Bu masalaning sababini to'liq tushuntirib bermaydi, lekin biz bu bilan shug'ullanamiz.

1
qo'shib qo'ydi