| POE-Component-Server-HTTPServer documentation | Contained in the POE-Component-Server-HTTPServer distribution. |
POE::Component::Server::HTTPServer::NotFoundHandler - Generate 404 Responses
use POE::Component::Server::HTTPServer;
my $server = POE::Component::Server::HTTPServer->new();
$server->handlers( [
'/reallyprivate' => new_handler( 'NotFoundHandler' ),
] );
NotFoundHandler generates and returns 404 Not Found responses.
This handler is, by default, set as the backstop handler that
HTTPServer will invoke on a request if none of the other handlers have
returned H_FINAL.
If the error_message context attribute is defined, it will be
included in the content of the reponse (use with caution).
NotFoundHandler is implemented as a singleton.
Greg Fast <gdf@speakeasy.net>
Copyright 2003 Greg Fast.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
| POE-Component-Server-HTTPServer documentation | Contained in the POE-Component-Server-HTTPServer distribution. |
package POE::Component::Server::HTTPServer::NotFoundHandler; use strict; use HTTP::Status; use POE::Component::Server::HTTPServer::Handler qw( H_CONT H_FINAL ); use base 'POE::Component::Server::HTTPServer::Handler'; our $Instance; sub new { my $class = shift; $Instance = bless {}, $class unless defined($Instance); return $Instance; } sub handle { my $self = shift; my $context = shift; $context->{response}->code( RC_NOT_FOUND ); my $message = ""; if ( defined($context->{error_message}) ) { $message = ":<BR>$context->{error_message}\n"; } $context->{response}->content("<HTML><BODY>Not Found$message</BODY></HTML>"); return H_FINAL; } 1; __END__