HTML页面调用perl脚本(无法)调用期望脚本IIS

时间:2015-10-23 13:39:48

标签: perl iis cgi expect iis-8

我的HTML页面(只是一个捕获变量的表单)调用一个Perl脚本,该脚本调用带有变量的expect脚本,这反过来会产生一个Bitvise控制台会话来做'东西'。

在命令行上,这非常有效。但是,当尝试运行网页时,期望调用似乎无法执行。

我必须设置IIS以允许CGI / Perl扩展,所以我想知道在我配置它之前,被调用的期望脚本是否会像Perl页面一样被阻止?

我想到的一个可能的解决方案是学习Perl Expect模块语法而不是调用脚本,但是这让我想到是否允许从Web生成Bitvise服务器的观点?

Perl文件从html中捕获变量,如下所示,这一切都有效:

use CGI qw(:standard);

$user = param('username') || '<i>(No input)</i>';
$pass = param('password') || '<i>(No input)</i>';
$host = param('device') || '<i>(No input)</i>';

然后是期望的脚本调用:

$expect = `C:\\Tcl\\bin\\tclsh.exe c:\\a-end\\template.expect $user $pass $host`;

这是期望的spawn:

spawn "C:\\Program Files \(x86\)\\Bitvise SSH Client\\stermc.exe" [lindex $argv 0]@172.25.89.100:4000
expect "assword:"
send "[lindex $argv 1]\r"

单击HTML页面将数据提交到Perl脚本(通过打印到日志文件确认),但也打印$!价值Inappropriate I/O control operation

0 个答案:

没有答案