ActivePerl and IIS discussion (Read-Only)

Discussions for setting up IIS to use ActivePerl.

PerlEx usability disclaimer

The PerlEx interpreter was written assuming a Perl 5.8.
The PerlEx documentation is written for IIS 5 and IIS 6.

Any combination other than the above should be considered "Experimental".

PerlEx is provided in the ActivePerl installers without support.
- Using PerlEx on Windows versions which are undocumented will require extensive manual intervention, if it is possible at all.
- Versions of ActivePerl beyond 5.8 and modules written for Perls beyond 5.8 are likely to include changes in Perl that are incompatible with PerlEx.

DB_File Load err - cannot load db_file.dll


Im porting ActivePerl 5.8 to 5.26 on cloud. This web app uses classic ASP+PerlScript. While most of the pages working, one page throwing error...
This is the error got it from IIs log...

Unable to run: <script language="PerlScript" runat="server">


I have installed 5.26.1x64 ver on Windows 2012R2 IIS 8.5
Configured IIS as required (like Handler mapping, etc.,).
The application is in Classic ASP and the global.asa start with

With this my simple .asp page throws error "HTTP 500 internal error". The iis log says".. |-|ASP_0147|500_Server_Error 80..."
And, if i remove runtat="server" it works in .asa file, that works (but i cannt remove that).

Am i missing any configuration here...

Could someone please help...

Venkatesh Kanale

perl.exe processes hanging

Hi -

My client is running ActivePerl 5.22 on a Windows 2012 server w/ IIS8 configured for CGI. They have the Business license. I am trying to determine what level of support they get with the Business license.

Recently their production server has been crashing due to too many orphan perl.exe processes. Any help would be appreciated. I can send the relevant web logs if that would help.

- Dorian Winterfeld

Perl and IIS 8.5 pathing issue

I have set up Perl 32 bit on IIS 8.5 (Windows Server 2012 R2; I have the same issue with 64 bit Perl). I have a Perl script that includes "use lib '/path';" statements to reference other Perl libraries contained within the web site. Notice that I am using forward slashes here. When I browse the script, I get the following error message: Can't locate in @INC (@INC contains: ).

CGI "Can't locate" error message

I have a client who's CGI scripts are throwing this error:

Can't locate /defines.pli in @INC (@INC contains: C/Perl64/site/lib C:/Perl64/lib .) at E:\wwwroot\ELS_Application\cgi-bin\ElectronicLicensing\RE\RECertification.cgi line 29.

Any suggestion on how to debug this?

The server is running Win2012/IIS8/ActivePerl5.22. defines.pli is in the same folder as the calling script, RECertification.cgi in this case.

These CGI scripts are running fine on another server with same setup. They also ran for years on a Win2003 server running ActivePerl 5.8.

Precompiler: Fatal Eval Error: Package:[PerlEx::Precompiler::c_::otrs::otrs::bin::cgi2dbin::index_pl]

Hello Everyone,

Good Morning

We are noting frequent 500 Internal server Error issue while working with the ticketing application. Following is the configuration we have used.

IIS version - 8.5
OTRS - 3.3.7
Perl - Active State Perl 5.16.1
OS - Windows 2012 R2

From last few days I went through following error and this occurs 2-3 times in day on each system. we have two system running with same configuration on load balancer.

Below is the perl logs and there is no error in otrs log for this corresponding issue.

cgi redirect does not pass through parameters on IIS

When I issue the following directive:
use CGI qw(:all);
use CGI::Session();
$app="this one";

$q = new CGI;
print $q->redirect(-uri=>"/cgi-bin/mmb_details.cgi?app=$app&userid=$userid&func=$func&title=Edit%20User",

The called cgi script does not get any of the arguments. It works fine under apache (the server it used to reside on) but doesn't work with IIS (Server 2012 R2, IIS version 8.5.9600 16384).

If I use a browser and pass in that URI it works fine. I can't figure out what setting in IIS I need to set to allow this to happen.

perl.exe is not a valid win32 application

-Installed ActivePerl- on a Windows Server 2008 R2 64bit machine.
-Using activeperl for awstats7.4(build 20150714) with iis7.5

After working as expected many times, with no updates or system changes, all of a sudden running the same command line script results in errors:

Popup - "C:\Perl\bin\perl.exe is not a valid win32 application"
Cmd - "Access is denied."

After searching but not finding much, an old posting hinted at something wrong with perl.exe
It turns out the file C:\perl\bin\perl.exe was corrupted and was showing 0 bytes.

502 error on new install

I have installed ActivePerl 32-bit on an IIS 8.5 server. I am trying to get a legacy perl application working. I setup the hander mappings for .pl and .cgi to go to c:\perl\bin\perl.exe "%s" %s as before. But everytime I try to run any perl script through the webserver I get a 502 error: A CGI application returns an HTTP response that is not valid to the server that is running IIS 7.0, IIS 7.5, or IIS 8.0.

I have been able to run the perl script from the command line. Any thoughts?