a little better.... added $r->url->path =~ s!../!!g;
#!/usr/bin/perl
use strict;
use warnings;
use HTTP::Daemon;
use HTTP::Status;
my $perldocs = 'c:/Perl/html/';
my $n = "\n";
my $d = HTTP::Daemon->new(LocalAddr=>'localhost',LocalPort=>83) || die
+;
print "Listening on: <URL:", $d->url, ">\n";
while (my $c = $d->accept) {
while (my $r = $c->get_request) {
$r->url->path =~ s!../!!g;
print $r->method." ".$r->url->path.$n;
if ($r->method eq 'GET') {
-e $perldocs.$r->url->path
? $c->send_file_response($perldocs.$r->url->path)
: $c->send_error(RC_NOT_FOUND);
} else {
$c->send_error(RC_FORBIDDEN)
}
}
$c->close;
undef($c);
}
No one has seen what you have seen, and until that happens, we're all going to think that you're nuts. - Jack O'Neil, Stargate SG-1