[users@httpd] Can't serve pre-compressed (gzip) html on Apache 2.0.55

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Guys!

I'm having trouble configuring an Apache 2.0.55 (32-bit; linux;) to
serve pre-compressed (gzip 1.3.5) html files (for inline browser
rendering) using AddHandler type-map.

Using the type-map, Firefox (1.5) and Safari (2.0.3) are not
displaying the content inline, they both want to download the
'application/x-gzip' instead. Both browsers behave properly when
un-compressed files are dynamically compressed via mod_deflate
(verified with ethereal included bellow).

I've included Ethereal summaries of the http for each of the tests
bellow..  I'm confused at the inconsistancies, and could not find a
combination of setting that would yeild inline viewable content from
pre-compressed html files

First I used the first index.var, see bellow, and tried all four
combinations of "AddType application/x-gzip .gz .tgz", "AddEncoding
x-gzip .gz .tgz" (enabled and disabled) in the httpd.conf.  All combos
yeilded the same result; the browser wishes to download the file
instead of inline displaying it.  The second encolsed Ethereal dump is
the same (excpet for time, tag...) for all four of the above trials..
'Content-Type: application/x-gzip' and no Content-Encoding despite the
directive in the index.var

Now when I change the file extention from index.xml.gz to index.xml.1
(updating index.var too), apache sends the file as the 'Content-Type:
application/xml',  and no 'Content-encoding: gzip' as the index.var
specified.  The browsers don't like the 'gibberish' and fail to
render.

I then tried added 'AddEncoding x-gzip .gz .tgz' to httpd.conf, change
the .var to 'Content-Eocoding: x-gzip', and changed the filename back
to index.xml.gz.  I observed 'Content-encoding: gzip' but now the
'Content-Type: application/x-gzip'.

Serving precompressed content appears to be possible, but remains out
of my grasp.  'http://artific.com/articles/2005/03/01/2.php'; The
manual also indicates it is workable
'http://httpd.apache.org/docs/2.0/mod/mod_mime.html#addencoding'

I'm not able to downgrade apache to 1.3.x so mod_gzip is not feasible.
 I'm not able to upgrade to apache 2.2.x to use the mod_filter tweak
for mod_deflate as
'http://httpd.apache.org/docs/2.1/mod/mod_filter.html' and
'http://issues.apache.org/bugzilla/show_bug.cgi?id=31145' illustrate.

I _really_ would appreciate any help folks can offer here...

Thanks in advance,
Vizzini


# Ethereal summary of the 'correct' output when using mod_deflate
instead of a pre-compressed file
---mod_deflate---
Hypertext Transfer Protocol
   HTTP/1.1 200 OK\r\n
       Request Version: HTTP/1.1
       Response Code: 200
   Date: Thu, 02 Feb 2006 10:47:02 GMT\r\n
   Server: Apache\r\n
   Content-Location: index.xml\r\n
   Vary: negotiate,accept,Accept-Encoding\r\n
   TCN: choice\r\n
   Last-Modified: Wed, 01 Feb 2006 13:21:08 GMT\r\n
   ETag: "79c-27e-8d85f900"\r\n
   Accept-Ranges: bytes\r\n
   Content-Encoding: gzip\r\n
   Content-Length: 428\r\n
   Keep-Alive: timeout=15, max=100\r\n
   Connection: Keep-Alive\r\n
   Content-Type: application/xml\r\n
   \r\n
   Content-encoded entity body (gzip): 428 bytes -> 638 bytes
eXtensible Markup Language
   <?xml
   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd";>
---End-mod_deflate---


# index.var
---START-OF-FILE---
URI: index.xml
Content-type: application/xml

URI: index.html
Content-type: text/html

URI: index.xml.gz
Content-encoding: gzip
Content-type: application/xml
---END-OF-FILE---


# Ethereal summary of the 'incorrect' output when using index.var above
---Failed-Attempt-1---
Hypertext Transfer Protocol
   HTTP/1.1 200 OK\r\n
       Request Version: HTTP/1.1
       Response Code: 200
   Date: Thu, 02 Feb 2006 10:54:18 GMT\r\n
   Server: Apache\r\n
   Content-Location: index.xml.gz\r\n
   Vary: negotiate,accept,accept-encoding\r\n
   TCN: choice\r\n
   Last-Modified: Thu, 02 Feb 2006 08:52:50 GMT\r\n
   ETag: "39ca-1b6-ebd95c80;39cc-e6-a72fbc40"\r\n
   Accept-Ranges: bytes\r\n
   Content-Length: 438\r\n
   Keep-Alive: timeout=15, max=100\r\n
   Connection: Keep-Alive\r\n
   Content-Type: application/x-gzip\r\n
   \r\n
Media Type: application/x-gzip (438 bytes)
---End-Failed-Attempt---

# index.var with changed name
---START-OF-FILE---
URI: index.xml
Content-type: application/xml

URI: index.html
Content-type: text/html

URI: index.xml.1
Content-Encoding: x-gzip
Content-Type: application/xml
---END-OF-FILE---

# Ethereal summary of the 'incorrect' output when using new index.var
and http.conf with 'AddEncoding x-gzip .gz .tgz'
---Failed-Attempt-3--
Hypertext Transfer Protocol
   HTTP/1.1 200 OK\r\n
       Request Version: HTTP/1.1
       Response Code: 200
   Date: Thu, 02 Feb 2006 11:17:24 GMT\r\n
   Server: Apache\r\n
   Content-Location: index.xml.1\r\n
   Vary: negotiate,accept,accept-encoding\r\n
   TCN: choice\r\n
   Last-Modified: Thu, 02 Feb 2006 08:52:50 GMT\r\n
   ETag: "39ca-1b6-ebd95c80;39cc-e7-da914f80"\r\n
   Accept-Ranges: bytes\r\n
   Content-Length: 438\r\n
   Keep-Alive: timeout=15, max=100\r\n
   Connection: Keep-Alive\r\n
   Content-Type: application/xml\r\n
   \r\n
eXtensible Markup Language
---End-Failed-Attempt-3---


# index.var with changed name back
---START-OF-FILE---
URI: index.xml
Content-type: application/xml

URI: index.html
Content-type: text/html

URI: index.xml.gz
Content-Encoding: x-gzip
Content-Type: application/xml
---END-OF-FILE---


# Ethereal summary of the 'incorrect' output when using the above
index.var and http.conf with 'AddEncoding x-gzip .gz .tgz'
# note this is the first of the index.vars that successfully injects
'Content-Encoding: gzip' into the output...  if I can only get
# the 'Content-Type: application/xml', I think I would be golden
---START-Failed-Attempt-4---
Hypertext Transfer Protocol
   HTTP/1.1 200 OK\r\n
       Request Version: HTTP/1.1
       Response Code: 200
   Date: Thu, 02 Feb 2006 11:37:10 GMT\r\n
   Server: Apache\r\n
   Content-Location: index.xml.gz\r\n
   Vary: negotiate,accept,accept-encoding\r\n
   TCN: choice\r\n
   Last-Modified: Thu, 02 Feb 2006 08:52:50 GMT\r\n
   ETag: "39ca-1b6-ebd95c80;39cc-e8-2e12dfc0"\r\n
   Accept-Ranges: bytes\r\n
   Content-Length: 438\r\n
   Keep-Alive: timeout=15, max=100\r\n
   Connection: Keep-Alive\r\n
   Content-Type: application/x-gzip\r\n
   Content-Encoding: gzip\r\n
   \r\n
   Content-encoded entity body (gzip): 438 bytes -> 638 bytes
Media Type: application/x-gzip (638 bytes)
---End-Failed-Attempt-4---

http://artific.com/articles/2005/03/01/2.php

http://72.14.203.104/search?q=cache:p5KxL5AtaqcJ:www.linuxjournal.com/article.php%3Fsid%3D6802+caching+mod_deflate&hl=en&gl=us&ct=clnk&cd=2&client=firefox-a

---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx
   "   from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx
For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx



[Index of Archives]     [Open SSH Users]     [Linux ACPI]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Squid]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux