NAME¶
Web::Simple::Deployment - various deployment options
DESCRIPTION¶
This file documents common deployment methods for Web::Simple. If you feel one
is missing, please ask in the IRC channel and we'll work with you to add it.
CGI¶
The most basic deployment option is as a CGI script loading and running your
Web::Simple-module:
#!/usr/bin/env perl
use Your::Web::Simple::App;
Your::Web::Simple::App->run_if_script;
Save that as script.cgi and your web server will handle it correctly.
Plack-Server¶
This works in with exactly the same code as CGI deployment. However instead of
letting your web server load script.cgi, you run this on the command line:
plackup script.cgi
Self-contained CGI¶
Sometimes your app is so small that you have only one or two tiny classes that
you want to run as a CGI script. Web::Simple offers a helpful mechanism to
achieve that.
#!/usr/bin/env perl
use Web::Simple 'HelloWorld'; # enables strictures and warnings for the file
# additionally, HelloWorld is upgraded to a
# Web::Simple application
{
package HelloWorld;
sub dispatch_request {
sub (GET) {
[
200,
[ 'Content-type', 'text/plain' ],
[ 'Hello world! It is a fine ' . HelloWorld::Helper->day ]
]
},
sub () {
[ 405, [ 'Content-type', 'text/plain' ], [ 'Method not allowed' ] ]
}
}
}
{
package HelloWorld::Helper;
use DateTime;
sub day {
return DateTime->now->day_name;
}
}
HelloWorld->run_if_script;
AUTHORS¶
See Web::Simple for authors.
COPYRIGHT AND LICENSE¶
See Web::Simple for the copyright and license.