I'm not familiar with EBCDIC, but in Perl \r and \n are platform
dependent, you migh want to try the platform independent \015 (cr)
and \012 (lf).
[EMAIL PROTECTED] wrote:
>
> Dear list readers -
>
> I'm working with the following environment:
>
> BS2000-Posix as O.S.
> Perl-5.005_54
> Apache-1.3.9
> Mod_perl-1.21
>
> BS2000-Posix has the EBCDIC as character set, both Apache-1.3.9 and
> perl-5.005_54 are ported to support EBCDIC code.
>
> I installed Apache with mod_perl and tried the counter example of the
> mod_perl guide:
>
> #!/usr/local/bin/perl -w
> use strict;
>
> print "Content-type: text/html\r\n\r\n";
>
> my $counter = 0;
>
> for (1..5) {
> increment_counter();
> }
>
> sub increment_counter{
> $counter++;
> print "Counter is equal to ..... $counter !<BR>\n";
> }
>
> The result that I have is:
>
> HTTP/1.1 200 OK
> Date: Mon, 15 Nov 1999 09:36:57 GMT
> Server: Apache/1.3.9 (BS2000) mod_perl/1.21 ApacheJServ/1.0
> Connection: close
> Content-Type: text/plain
>
> Counter is equal to ..... 1 !<BR>
> Counter is equal to ..... 2 !<BR>
> Counter is equal to ..... 3 !<BR>
> Counter is equal to ..... 4 !<BR>
> Counter is equal to ..... 5 !<BR>
> Connection closed by foreign host.
>
> The content-type is text/plain instead text/html, mod_perl loses this header
> probably due to EBCDIC conversion of the "\n" character. Trying with
> print "Content-type: text/html\r\n";
> or with
> print "Content-type: text/html\r\r\n";
> the content-type is text/html, as it should be.
>
> I looked the sources of mod_perl for some part where the mod_perl is
> preparing the headers from the output of perl5 and to pass them to the
> apache. I don't understand who is doing that. Can someone help me to find
> where the content-type header is lost.
>
> -- Ignasi Roca