I have been looking at a few posts on this topic, but I'm still confused. Strawberry Perl and IIS 8 are installed on our Windows 2012 R2 server. I know to add a Strawberry Perl.exe under ISAPI and CGI Restrictions, and finally corrected my mistake (earlier edit of this post) of listing a DL). You can use a .exe, not just a DLL, so I have provided the path to Strawberry Perl's perl.exe.
Edit 2/26/2019: As requested, here is the first part of Select.pl, which is listed in default documents:
#!/usr/local/bin/perl -w
# Permit/Web/Select.pl
# -*- tab-width: 8 -*-
use strict;
use warnings;
use lib qw( ../../include ./include );
use DbArgs;
use DBI;
######################################################################
# Prototypes
#
sub main();
sub HTMLPermitTypeRow($);
sub HTMLPermitClassRow($);
sub jsQuote($);
######################################################################
# Globals
#
my $HTML_ROOT_DIRECTORY = DbArgs::HTMLRootDirectory();
my $debugging = 0;
# start with Sunday to align with localtime order 0 to 6
#
my @weekdays = qw(Sunday Monday Tuesday Wednesday Thursday Friday Saturday);
# work Mon-Fri no holidays
#
my @previousworkdays = qw(Friday Friday Yesterday Yesterday Yesterday Yesterday Friday);
my %input;
main();
exit(0);
######################################################################
# main
#
sub main() {
my $header;
my $footer;
my $inspectorsrow;
my $today;
my ( $sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst )= localtime( );
my $inspected = $previousworkdays[$wday];
%input = DbArgs::ParseArgs();
print "Content-type: text/html\n\n";
# define required input
# not defining optional input inspected, permittype, permitclass, reportformat
#
foreach ( qw( address contractor description inspector issue issue_thru owner ) ) {
$input{$_} = '' unless defined $input{$_};
}
my $hiddenfields = '';
foreach my $fieldname ( sort keys %input ) {
my %definedFields = ( 'address' => ''
, 'contractor' => ''
, 'description' => ''
There is a permits pool, which logs in as Administrator, and the permits application uses the permits pool.
I have Select.pl listed as a default document, and the cgi handler is loaded.
When I try to reach http://locahost/permits or http://locahost/permits/Select.pl, I get a 404, but cannot find anything in the logs, Event or IIS that will give me a clue of what is going wrong. Any pointers would be appreciated.