using ProxyHTMLEnable On, mod_proxy_html or xml2enc segfaults

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

 




2009/10/29 Nick Kew <nick@xxxxxxxxxxxx>

2009/10/28 Martin Gerdes <martingrds@xxxxxxxxxxxxxx>
Background:
I am running Apache as provided for Debian Lenny (2.2.9-10+lenny4) as
a reverse proxy. To that end, I installed libapache2-mod-proxy-html
(3.0.0-1) for URL rewriting.
As the original content is in charset ISO-8859-1, I set the option
"ProxyHTMLCharsetOut *" to get the webpage output as ISO-8859 instead
of UTF-8.

Everything worked just fine, except that a certain packet crashed the
proxy-html module (Paket went into the proxy, no paket came out;
according to the log, a process crashed at precisely that time...)

I emailed the developer, who advised me to try the most recent version
(3.1.2) for which unfortunately no debian package exists. So I spent
half a day figuring out how to update the source debian archive with
the most recent source code. I managed it, installed it, and it
worked, and the module did not crash anymore. :-)

Hmmm,  I thought I advised getting me a test case that could reproduce
the crash, and your email on Oct 26th said the problem had gone.

Alright, so I simplified a bit :-)
The problem IS gone with the new version. I just failed to check whether the conversion was still happening - which it turns out it wasn't. That should have no bearing on the crash though, as the conversion back to ISO-8859-1 happens after the links are replaced.


However, after continuing to play around with mod-proxy-html I noticed
that the output stays as utf-8 (having been converted from ISO-8859-1)
instead of being converted back to ISO-8859-1.
Note that 3.0.0 worked with precisely the same configuration (except
that it did not need xml2enc).

Precisely the same configuration would be incorrect.  You need to switch
from using apache's generic filter configuration to the new
ProxyHTMLEnable directive.  Hence the bold
Important Note: Configuration has changed:
on its front page.

But maybe you've found a docs bug, and I need to add the note
in more places, for existing users who don't check what you
already know about!  Where did you check?

I just went to http://apache.webthing.com/mod_proxy_html/ to get the source code. But I did not reread the page, but just fetched the archive file.
I did look within the archive for any kind of info, like build instructions, a readme or changelog, but there wasn't any.
I also distinctly remember looking on the website for a changelog, so an entry there would have reached me. Other than than: Mea Culpa.

However, I still do not have it working:

Relevant configuration in /etc/apache/apache2.conf:
ProxyHTMLEnable On
ProxyHTMLCharsetOut *
ProxyHTMLExtended On
ProxyHTMLMeta On
ProxyHTMLLogVerbose On
LogLevel info

(the line "SetOutputFilter proxy-html" has been commented out)

>grep -i charset /var/log/apache2/error.log
[Thu Oct 29 13:52:34 2009] [info] [client 192.168.0.9] Got charset ISO-8859-1 from HTTP headers
multiple times, no other charset is recognized, so that is fine

I can load the login page of the webapp, though it is returned in utf8.
Once I send of the login data, it segfaults. It did NOT do that when I used SetOutputFilter instead of ProxyHTMLEnable, so I assume that xml2enc crashes, though that is only conjecture.

Line in apache error log:
"[Thu Oct 29 14:18:22 2009] [notice] child pid 29443 exit signal Segmentation fault (11)"

It makes me cry, it really does :-(


[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