【发布时间】:2012-09-03 13:14:49
【问题描述】:
我正在开发一个名为 MARS(多访问报告服务)的报告工具。这是一个通过 SQL 服务器读取报告的工具。我们有一个本地机器测试环境设置,一切运行良好,但是当我们上传到 Windows Server 2008 时,它似乎不想找到“必需”文件。我们在服务器上运行 Perl(v5.14.2),在桌面/本地运行旧版本。
我收到的错误是: *HTTP 错误 502.2 - 网关错误 由于未返回完整的 HTTP 标头集,指定的 CGI 应用程序行为异常。它返回的标头是“无法在 @INC 中找到 jsdb.pl(@INC 包含:/Inetpub/Scripts /Inetpub/Scripts/Security c:/Perl/site/lib c:/Perl/lib 。)在 \ gl-0185-nas07p\MCL_Dev_MPN_GL\Green_App\MARS\Scripts\Security\security.pl 第 7 行。“.*
这是 Security.pl 文件的标题,其中明确包含设置的路径和文件:
use CGI qw/:standard *table start_ul/;
use Date::Calc;
use Win32::ODBC;
use POSIX qw(floor);
###
use lib "/Inetpub/Scripts/Security";
require "jsdb.pl";
###
require "javascript.pl";
require "SecurityUtils.pl";
use lib "/Inetpub/Scripts";
require "webpageutils.pl";
在 JSDB 文件中是用于设置和修改系统用户的“配置文件”选项卡的代码。
非常感谢任何帮助,因为我们似乎无法理解它。
【问题讨论】:
-
错误包括@INC 列表。您确定运行脚本的用户对该目录具有读取权限吗?如果您在 Windows 8 中使用 IIS,则用户将是
IUSR。 -
感谢您的回复.. 我目前以应用程序管理员身份登录,这是它显示的错误。
标签: sql-server perl cgi