Almost-minimal filesystem based blog.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

48 lines
1.1 KiB

#!/usr/bin/env perl
=pod
=head1 NAME
wrt-fcgi - Sample FastCGI wrapper script for App::WRT
=head1 DESCRIPTION
Pulls in App::WRT and CGI::Fast, runs a configuration file, and loops over
FastCGI queries, passing their parameters to C<App::WRT::display()>.
Useful for local testing of output. Please do not expose to the public web.
=cut
use strict;
use warnings;
no warnings 'uninitialized';
use App::WRT;
use CGI::Fast;
use Getopt::Long;
use Pod::Usage;
# Handle options, including help generated from the POD above. See:
# - http://perldoc.perl.org/Getopt/Long.html#User-defined-subroutines-to-handle-options
# - https://metacpan.org/pod/Pod::Usage
# - http://michael.thegrebs.com/2014/06/08/Pod-Usage/
my $config_file = 'wrt.json';
GetOptions(
'config=s' => \$config_file,
help => sub { pod2usage(0) },
) or pod2usage(2);
my $w = App::WRT::new_from_file($config_file);
# use Data::Dumper;
# Handle input from FastCGI:
while (my $query = CGI::Fast->new) {
my @params = $query->multi_param('keywords');
print "Content-Type: text/html\n\n";
print $w->display(@params);
}
exit;