From a previous message by Adam Prime in this same list :
[...]
SetHandler modperl doesn't bind 'print' to '$r->print'. Try SetHandler
perl-script, or change your code to pass in the request object and use
$r->print instead of print.
[...]
or, more verbously and explicitly :
if in your Apache configuration for this "location", you used
SetHandler modperl
then, you should not assume that print() sends its output to the
browser. But if you did (like you did)
$r = shift; # get the Apache::RequestRec object
then $r->print() does go back as a response to the browser.
You should probably at least set a content-type header though,
like
$r->content_type('text/plain');
$r->print $apr->param('id');
and, in your case, it might also be a good idea to send back a header
indicating which is the character set used (presumably UTF-8), since the
default HTTP character set is iso-8859-1, and the string you send back
doesn't look as being printable in that charset.
But I don't know exactly how to do that best in mod_perl.
Would the following work ?
$r->content_type('text/plain; charset="UTF-8"');
Also, the previous message talking about how to handle your (apparently)
UTF-8 request should be taken into account.
André
Eli Shemer wrote:
Hey there
For some reason the following test doesn’t print anything out to the screen
Do I need to change something in the apache configuration, or mod_perl’s ?
/articles_read.pl?id=חוזרת
## get http parameters
$r = shift;
$apr = Apache2::Request->new($r);
print $apr->param('id');
thanks in advance.
Internal Virus Database is out-of-date.
Checked by AVG Free Edition.
Version: 7.5.503 / Virus Database: 269.16.4/1146 - Release Date: 22/11/2007
18:55