CjC*_*oax 2 iis perl activeperl iis-7.5
我有一个用经典 asp 编写的项目,并且特定表单的提交由 Perl 脚本处理。
我要为这个项目做一个改进。我为 Windows 32 位安装了最新版本的 ActivePerl。
我看了看生产环境,看到在IIS 7.5,有一个关于“处理程序映射”的条目*.pl被处理C:\Perl\bin\PerlEx30.dll。所以我在开发环境上做了同样的事情。(请注意,Prod. 环境中没有“*.cgi”的映射)
现在,当我尝试提交其 action 所在的表单时,MyScript.pl出现以下错误:
HTTP Error 405.0 - Method Not Allowed
The page you are looking for cannot be displayed because an invalid method (HTTP verb) is being used.
Run Code Online (Sandbox Code Playgroud)
也许值得一提的是,我在 64 位环境中,我也尝试了 Windows 64 位的 ActivePerl(我映射*.pl到perl514.dll),但仍然遇到相同的错误!
小智 5
您的解决方法是使用 32 位版本的 perl。如果您想使用 64 位版本,这在 IIS 8.5 Windows 2012 R2 上对我有用:
您可以通过创建以下“hello world”页面来测试它:
use strict;
use CGI;
my $page = new CGI;
my $msg = "Hello from ActivePerl CGI!";
print $page->header( "text/html" ),$page->start_html( $msg );
print $page->h2($msg);
print $page->end_html;
Run Code Online (Sandbox Code Playgroud)
将其命名为 test.pl 之类的内容,将其放入您的 webroot 目录并浏览到它以进行测试。
| 归档时间: |
|
| 查看次数: |
3488 次 |
| 最近记录: |