Hi All.

I'm setting up a new server and wish to run two Apache configurations,
one vanilla and one mod_perl. I've configured pretty much according to
Stas' excellent guide, using the rewrite module to push the perl
requests to the second (ie mod_perl) server.

Versions; HP-UX 10.20, Apache 1.3.24, mod_perl 1.26.

It's _nearly_ working, but I'm getting one weird piece of behaviour
which looks to me like the sort of problem someone with more experience
will recognise very swiftly; when I request a perl script via the
mod_perl-enabled locations, the content is preceded by a hex number,
which corresponds very closely to the size of the content, and then a
blank line, as shown below:

4e9

PID = 3282
DOCUMENT_ROOT="/opt/web_root/html"
GATEWAY_INTERFACE="CGI-Perl/1.1"
etc.

The browser displays the wait cursor for about 15 seconds and then
follows the content (which is correct) with another blank line and then
a zero:

...
SERVER_SOFTWARE="Apache/1.3.24 (Unix) mod_perl/1.26"
TZ="EST-10EDT"

0

The script works correctly from the command line, or if the mod_perl
server port is accessed directly from the browser, or if the mod_perl
server is started without proxying enabled.

This looks to me as if two parts of the system are contributing the same
header information, or if two protocol layers are being added in the
wrong order, or something like that.

Thanks for any tips.
Ian Macdonald
[EMAIL PROTECTED]

Here's the rewrite config chunk from the main apache:

 RewriteEngine      On
 RewriteLogLevel    0
 RewriteRule ^proxy:.*  -  [F]
 RewriteRule ^/perl/(.*)  http://%{HTTP_HOST}:8200/perl/$1 [P,L]
 RewriteRule ^/cgi-perl/(.*)  http://%{HTTP_HOST}:8200/cgi-perl/$1 [P,L]

 ProxyPassReverse / http://%{HTTP_HOST}/

Here's the /perl/ location config from the mod_perl apache

    <Location /perl/*.pl>
        SetHandler perl-script
        PerlHandler Apache::Registry
        Options -Indexes ExecCGI
        PerlSendHeader On
    </Location>




Reply via email to