-
Data: 2009-10-02 19:29:31
Temat: Re: Problem z nagłówkami HTTP 1.1
Od: "Marek" <m...@s...interia.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> Content-Length jest wielkością *po* kompresji.
Po kompresji? :-0
To mi szczęka opadła. Czy to oznacza, że albo stosujemy w PHP
zlib.output_compression=ON albo nagłówek Content-Length ?
Nie da się przewidzieć jakiej wielkości będzie plik po kompresji. W końcu
najpierw posługujemy się header() a na końcu robimy print() i sam print
kompresuje dane. Tak więc nie wiem ile danych opuści printa, a już w
szczególności nie będę tego wiedział w chcwili gdy nagłówek wysyłam (czyli
przed użyciuem printa).
Ponadto zauważyłem, że chyba tak nie do końca jest jak napisałeś, albo źle
interpretuję obserwacje. Otóż gdy nawet o 1 bajt źle wpiszę długość
wiadomości to efekty tego doskonale widać w Fierbugu. Dzieją się cuda.
GdyC-L jest za duży to przeglądarka długo wyczekuje reszty pliku, a gdt C-L
jest za krótki - pliki graficzne są uszkodzone i nie wyświetlają się
poprawnie. Tymczasem gdy ustawiam C-L na wartość przed kompresją, to
wszystko działa ok. Może PHP modyfikuje ten nagłówek w tle?
> Zapewne nie wysyła Accept-Encoding:gzip
Tak, o to chodzi. Stąd diagnoza o tym, że FF oraz IE nie radzą sobie z tym w
przypadku SWFów albo PHP uzależnia wielkość transmiscji od nagłówka C-L...
>> A co do podawania Content-Length to raczej jest konieczność używania z
>> uwagi na cache'owanie plików przez przeglądarkę.
>
> AFAIR wg RFC nie ma takiej konieczności.
Wprost nie piszą ale "Applications SHOULD use this field to indicate the
transfer-length of the message-body" a w domyśle (jako konsekwencja moich
obserwacji) "bo w przeciwnym razie przeglądarki nie będą keszowały
poprawnie".
> Dorzuć Last-Modified, Cache-Control: max-age= albo Expires, obsługuj 304.
> Poczytaj RFC 2616.
Oczywiście bez wysyłania 304 nie pisałbym o cache'owaniu przecież :-) W/w
nagłówki niczego nie dawały. Sęk w tym, że brak cacheowania polega na tym,
że przeglądarka zaprzestaje wysyłania do serwera nagłówków, które pozwalają
określić czy należy wysłać 304 czy 200. A tak się dzieje gdy wcześniej
wysłany plik do przeglądarki jest ogołocony z nagłówka C-L i/lub Date. Wtedy
np. Etag wysłany wraz z obrazkiem nie wraca do serwera przy odświeżaniu
strony albo raz jest wysyłany a w przypadku innego pliku - nie jest. Jakaś
losowość następuje - to również przyuważyłem.
Następne wpisy z tego wątku
- 03.10.09 10:06 Paweł Piskorz
- 03.10.09 18:01 porneL
- 04.10.09 12:40 Marek
- 04.10.09 12:49 Marek
Najnowsze wątki z tej grupy
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Do sądu trafił pozew zbiorowy przeciw Google'owi - oskarżenie o praktyki monopolistyczne na rynku reklamy internetowej
- Jakie znacie działające serwery grup dyskusyjnych?
- is it live this group at news.icm.edu.pl
- php, linki z nazwami a $_GET, SEO
- www polityka pl captcha
- dyktatura brudnego palucha
- www.znanylekarz.pl
- Czy pytanie o sczytywanie stron programami/skryptami to tu?
- Grupy webdevowe
- Jak wydrukować stronę?
- IIS, kilka witryn
- linki <a href="/strona.php"> (ze slashami)
- co rozszerza stronę??
- responsywny akapit <p>
Najnowsze wątki
- 2025-05-06 Agregat z lodówki olej
- 2025-05-06 Wrocław => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-05-06 Warszawa => Senior Node.js Developer (doświadczenie z framework Nest.
- 2025-05-06 Dęblin => Node.js / Fullstack Developer <=
- 2025-05-06 Warszawa => IT Business Analyst (projects in the telco sector) <=
- 2025-05-06 Title: The Economics and Systemic Implications of Bitcoin: Cost, Scarcity, and the Institutional Race for Dominance .
- 2025-05-06 SMSy
- 2025-05-06 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-05-06 Warszawa => Strategic Account Manager <=
- 2025-05-06 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-05-06 Gdynia => ML Ops Engineer <=
- 2025-05-06 Drobne umowy o dzielo z przeniesieniem praw autorskich
- 2025-05-06 wydobywanie Bitcoinów jest aktualnie zajęciem po prostu nieopłacalnym. Jak wynika z opublikowanych danych, średni koszt wygenerowania jednego Bitcoina wynosi ok. 137 tysięcy dolarów.
- 2025-05-06 Join Bitcoin Blockchain Nonce Global University
- 2025-05-06 Gdynia => ML Ops Engineer <=