Perl 无法在 Server 2022 上的新 IIS 10 上运行

问题描述 投票:0回答:1

在新的 IIS 设置上遇到 Perl 问题。

不深入背景,短篇故事就是

  1. 使用 IIS 10 搭建新的 Server 2K22 服务器
  2. 已安装 PHP(当前版本)
  3. 通过 64 位安装程序安装了 Strawberry Perl(当前版本)
  4. 将所需的条目添加到系统路径和环境变量(PERLLIB、PERL5LIB)
  5. 在 IIS 中添加处理程序(*.cgi 和 *.pl)以指向 \perl532.dll 中的 Strawberry\perl
  6. 创建了一个测试 PL 文件,如 https://techexpert.tips/iis/enable-perl-iis/
  7. 重新启动整个服务器
  8. 每次尝试加载测试文件都显示失败。

确切的错误是 HTTP 500.0

Module:     IsapiModule
Notification:   ExecutreRequestHandler
Handler:    Perl-PL
Error code      0x8007007f
Logon method    Anonymous
Logon user  Anonymous

作为测试,至少在测试中,所有用户都可以完全控制 Perl 和 PHP 的路径(服务器仅供内部使用,不暴露于互联网)

测试文件位于最终保存预期网站/应用程序的基本目录中。错误中报告的路径对于文件位置来说是正确的。该目录也被设置为IIS中网站的基本路径

跟踪文件几乎没有提供任何可辨别的信息,Reskit 不再可用于尝试运行依赖项,据我所知,权限已被打开。

Perltest.PL 是一个小文件,如果是的话,基本上应该说“Perl 正在工作”,显然,如果失败了,就什么也没有。

我调整了网站根目录(C:\MWXSVC)、Perl安装路径(C:\Strawberry)、PHP安装路径(C:\PHP)的权限 我已在 IIS 中添加了 .cgi 和 .pl ISAPI 脚本映射处理程序

perl iis-10
1个回答
0
投票

由于在全局级别或网站级别加载了无效的 ISAPI 筛选器,也可能会出现此问题。

要解决此问题,请删除无效的 ISAPI 过滤器。为此,请按照下列步骤操作:

  1. 单击“开始”,单击“运行”,键入 inetmgr.exe,然后单击“确定”。
  2. 在 IIS 管理器中,展开 ,展开网站,然后单击要修改的网站。
  3. 在功能视图中,双击 ISAPI 筛选器。
  4. 右键单击要删除的 ISAPI 筛选器,然后单击删除。
© www.soinside.com 2019 - 2024. All rights reserved.