Thank you for the response. I
had expected horrible performance from an external filter, but it is surprisingly
fast. Fortunately, I don't have to scale up to more than a few users
for now. I'm all ready to start coding an output filter, but given
the investment in time and the little time remaining, I would like to get
this external filter working. All the same, I'll purchase the book
tonight.
Since the entity bodies are heavily
binary, my filter treats all responses as a byte array and does no text
or string operations. In case, anyone finds it useful, I've excerpted
the error.log showing the call to the external filter. The non-timestamped
log entries were written by the external filter.
In = 0 ------------
Read = 0 st_size
= 0
Out -------------------------------------------------
[Thu Apr 19 18:12:02 2007] [debug] mod_ext_filter.c(820):
[client 0.0.0.0] apr_file_read(child output), len 0
[Thu Apr 19 18:12:02 2007] [debug] mod_ext_filter.c(820):
[client 0.0.0.0] (70014)End of file found: apr_file_read(child output),
len -1
[Thu Apr 19 18:12:02 2007] [debug] mod_ext_filter.c(664):
[client 0.0.0.0] (70014)End of file found: apr_file_read(child output),
len -1
[Thu Apr 19 18:12:02 2007] [error] [client
0.0.0.0] (70014)End of file found: ef_unified_filter() failed
[Thu Apr 19 18:12:02 2007] [debug] mod_ext_filter.c(820):
[client 0.0.0.0] (70014)End of file found: apr_file_read(child output),
len -1
[Thu Apr 19 18:12:02 2007] [debug] mod_proxy_http.c(1537):
proxy: end body send
[Thu Apr 19 18:12:02 2007] [debug] proxy_util.c(1816):
proxy: HTTP: has released connection for (gis.orem.org)
[Thu Apr 19 18:12:02 2007] [debug] mod_ext_filter.c(820):
[client 0.0.0.0] (70014)End of file found: apr_file_read(child output),
len -1
"Joshua Slive"
<joshua@xxxxxxxx> Sent by: jslive@xxxxxxxxx
04/26/2007 01:35 PM
Please respond to
users@xxxxxxxxxxxxxxxx
To
users@xxxxxxxxxxxxxxxx
cc
Subject
Re: Reverse Proxy and
an External Filter
On 4/26/07, Mark Zetts <zetts@xxxxxxxxxx> wrote:
>
> Running Apache 2.2.4 on Windows 2003 server, I have two problems
with an
> external filter written in C. The Apache server is running as
a reverse
> proxy.
Dicey situation, that. I doubt that mod_external_filter is very well
tested under windows. And even if it was, the fork overhead under
windows is high enough to make performance a real issue. If this is
anything more than a toy, you'd probably be much better off writing a
real output filter. (Check out Nick Kew's new book if you need help
with that.)
Other than that, I've never tried mod_ext_filter on windows. But I'd
start by looking at the standard windows cgi stuff. For example, make
sure your stdin and stdout are both in binary mode.
Joshua.
---------------------------------------------------------------------
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