note
Jaap
Unfortunately it doesn't work for me.<br/>
My mod_perl/startup.pl looks like this:
<code>
use strict;
use Apache::DBI;
use Apache2::Request;
use File::Slurp;
use Net::SMTP;
#use CGI;
#CGI->compile(':all');
Apache::DBI->connect_on_init('DBI:mysql:dbname::localhost', "user", "******",
{
PrintError => 1, # warn() on errors
RaiseError => 0, # don't die on error
AutoCommit => 1, # commit executes
mysql_enable_utf8 => 1,
# immediately
}
) or die "Cannot connect to database: $DBI::errstr";
</code>
And then there's a myscript.pl in the mode_perl dir that looks like this:
<code>
#!/usr/bin/perl
use strict;
use warnings;
my $r = shift;
my $cgi = Apache2::Request->new($r);
my $QUERY;
if ($cgi->param('q') =~ /^([a-zA-Z0-9\ \.\,\-_\:\;]+)$/)
{
$QUERY = $1;
}
my $ruri = $ENV{'REQUEST_URI'};
$ruri =~ s/%([0-9A-Fa-f]{2})/chr(hex($1))/eg;
...
...
if ($sth->rows == 0)
{
#$r->err_headers_out->set(Location => "$ruri/");
$r->status(404);
#$r->status(Apache2::Const::NOT_FOUND);
$r->content_type('text/html');
$r->print(<<"END");
<html>
<head><title>handler</title></head>
<body>
Hello from ME.<br />
</body>
</html>
END
ModPerl::Util::exit(0);
}
...
...
</code>
897899
898038