Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
HTTP::Server::Simple::UseriContributed Perl DocHTTP::Server::Simple::Static(3)

NAME
       HTTP::Server::Simple::Static - Serve static files with
       HTTP::Server::Simple

VERSION
       This documentation refers to HTTP::Server::Simple::Static version 0.07

SYNOPSIS
	   package MyServer;

	   use base qw(HTTP::Server::Simple::CGI);
	   use HTTP::Server::Simple::Static;

	   my $webroot = '/var/www';

	   sub handle_request {
	       my ( $self, $cgi	) = @_;

	       if ( !$self->serve_static( $cgi,	$webroot ) ) {
		   print "HTTP/1.0 404 Not found\r\n";
		   print $cgi->header,
			 $cgi->start_html('Not found'),
			 $cgi->h1('Not found'),
			 $cgi->end_html;
	       }
	   }

	   package main;

	   my $server =	MyServer->new();
	   $server->run();

DESCRIPTION
       this mixin adds a method	to serve static	files from your
       HTTP::Server::Simple subclass.

SUBROUTINES/METHODS
       serve_static( $cgi, $base )
	   Takes a reference to	the CGI	object and a document root path, and
	   tries to serve a static file. Returns 0 if the file does not	exist,
	   returns 1 on	success.

	   This	method sets the	"Date" and "Last-Modified" HTTP	headers	when
	   sending a response for a valid file.	Further	to this, the method
	   supports clients which send an "If-Modified-Since" HTTP header in
	   the request,	it will	return a 304 "Not Modified" response if	the
	   file	is unchanged. See RFC-2616 for full details.

	   If the client makes a "HEAD"	request	then no	message	body will be
	   returned in the response.

BUGS AND LIMITATIONS
       Bugs or wishlist	requests should	be submitted via http://rt.cpan.org/

DEPENDENCIES
       The File::LibMagic module is used to detect the MIME-type of a file.
       The URI::Escape module is used for URI handling.	The HTTP::Date module
       is used to format the timestamp in the Last-Modified HTTP header.

SEE ALSO
       HTTP::Server::Simple, HTTP::Server::Simple::CGI

AUTHOR
       Stephen Quinney "sjq-perl@jadevine.org.uk"

       Thanks to Marcus	Ramberg	"marcus@thefeed.no" and	Simon Cozens for
       initial implementation.

LICENSE	AND COPYRIGHT
       Copyright 2006 -	2013. Stephen Quinney "sjq-perl@jadevine.org.uk"

       You may distribute this code under the same terms as Perl itself.

perl v5.24.1			  2017-07-02   HTTP::Server::Simple::Static(3)

NAME | VERSION | SYNOPSIS | DESCRIPTION | SUBROUTINES/METHODS | BUGS AND LIMITATIONS | DEPENDENCIES | SEE ALSO | AUTHOR | LICENSE AND COPYRIGHT

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=HTTP::Server::Simple::Static&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help