如何在 IIS 7.5 上安装 Perl 5.8 和 Perlfect?

如何在 IIS 7.5 上安装 Perl 5.8 和 Perlfect?

我有一个旧网站,需要在新服务器(Windows Server 2008 R2 和 IIS 7.5)上继续运行。该网站使用 Perlfect 搜索 (http://www.perlfect.com/freescripts/search/),它需要 Perl 和 DB_File Perl 模块。最新版本的 ActiveState Perl(5.10 及更高版本)附带一个脚本,可以正确与 IIS 7.5 配合使用,但由于某种原因无法运行 DB_File(详细信息可在 ActiveState 网站上找到)。可以在 Windows 上运行 DB_File 的最新版本的 ActiveState Perl 是 5.8,但该版本不附带配置 IIS 7.5 的脚本。

答案1

我无法在“Windows 上没有适用于 Perl 5.10 + 的 DB_File”上取得任何进展,因此我决定解决将 Perl 5.8 与 IIS 7.5 集成的问题。

我安装了 ActiveState Perl 5.8.7 (32 位)。我使用 ppm (安装 DB_File) 安装了 DB_File。我通过首先运行 indexer.pl 脚本,然后使用 search.pl 脚本运行搜索,验证了 Perlfect 是否在命令行中运行。

为了使 Perl 脚本在 IIS 中运行,我修改了 IIS 7.5 中 PHP 的说明,网址为http://www.go2inbox.com/infob/readinfo.php?readinfo=1688

  1. 打开 IIS
  2. 单击左侧面板中的网络服务器名称
  3. 双击中间窗格 IIS 部分中的处理程序映射图标
  4. 单击位于右侧操作下的“添加脚本图”。
  5. 在弹出的窗口中将“请求路径:”设置为“*.pl”,将“可执行文件:”设置为“c:\perl\bin\perlis.dll”,将“名称”设置为“Perl”,然后单击“确定”。
  6. 在询问您是否要启用此 ISAPI 脚本的对话框中选择“是”
  7. 单击 IIS 左侧窗格中的“应用程序池”。在中间窗格中,右键单击您正在使用的应用程序池(在我的情况下为“DefaultAppPool”)。
  8. 选择高级设置
  9. 将“启用 32 位应用程序”设置为 True(我没有测试 64 位版本的 Perl)。
  10. 单击左侧窗格中的网络服务器,然后单击右侧窗格中出现的“重新启动”链接。

这对我来说是有用的。我应该能够勉强坚持下去,直到我们将搜索功能升级到 21 世纪。

答案2

由于软件包存在一些怪异之处,我从 ActivePerl 转到了 Strawberry Perl。它更接近 *nix Perl,而且由于它安装了 C 编译器,因此您可以原生使用 CPAN。

相关内容