IIS6, Perl, & some backticks failing
am 27.09.2006 20:39:06 von DarrylWindows 2003, IIS6, ActiveState Perl 5.8
I can't get all backtick commands to work in IIS6. Here's the code:
#!d:/perl/bin/perl.exe
print "HTTP/1.0 200 OK\n";
print "Content-type: text/html\n\n";
$command = '
@response = `$command`;
foreach $line (@response)
{
print $line;
}
It works if
ls
env
echo 'literal'
it fails if
dir
cluster.exe /?
some other third-party executables, which is what I really want to
work.
with the script completing in the w3svc log with code 200, but no
output printed. No event log errors. Works fine as a command-line
script. Specifying the full path of the .exe doesn't make a
difference.
The app pool for this is set as Local System, although it doesn't work
as Network Service or Local Service either.. SYSTEM has full control
over these executables, at least the ones in c:\windows\system32.
The perl scripts are obviously running, but not certain backtick
commands. Because SYSTEM, INTERACTIVE, and SERVICE all have full
control over "cluster.exe", I'm not seeing how it's a permissions
issue, although it is certainly acting like one.