我正在尝试设置 BugZilla 以使用 XML-RPC 接口从另一个系统接收错误报告。
BugZilla 有自己的界面,可以独立运行。
当我尝试通过访问浏览器中的“xmlrpc.cgi”来测试 XML-RPC 功能时,出现错误:
The XML-RPC Interface feature is not available in this Bugzilla
at C:\BugZilla\xmlrpc.cgi line 27
main::BEGIN(...) called at C:\BugZilla\xmlrpc.cgi line 29
eval {...} called at C:\BugZilla\xmlrpc.cgi line 29
接下来,我从默认的 Perl 存储库(版本 1.04)安装 test-taint 包。重新运行“xmlrpc.cgi”时出现 IIS 错误:
502 - Web server received an invalid response while acting as a gateway or proxy server.
There is a problem with the page you are looking for, and it cannot be displayed. When the Web server (while acting as a gateway or proxy) contacted the upstream content server, it received an invalid response from the content server.
因此我运行 checksetup.pl,它通知我:
Use of uninitialized value in open at C:/Perl/site/lib/Test/Taint.pm line 334, <DATA> line 558.
从 CPAN 安装 Test-Taint 也是一样。我假设 XML-RPC 依赖于 Test-Taint,但 Test-Taint 似乎无法正常运行。
如果我忽略此错误并尝试调用“bz_webservice_demo.pl”来添加条目,则脚本超时。
如何使 XML-RPC / Test-Taint 功能正常工作?
当前设置:Windows Server 2008 上的 IIS7.5 Bugzilla 4.2.2 Perl 5.14.2
C:\BugZilla>perl checksetup.pl
Set up gcc environment - 3.4.5 (mingw-vista special r3)
* This is Bugzilla 4.2.2 on perl 5.14.2
* Running on Win2008 Build 6002 (Service Pack 2)
Checking perl modules...
Checking for CGI.pm (v3.51) ok: found v3.59
Checking for Digest-SHA (any) ok: found v5.62
Checking for TimeDate (v2.21) ok: found v2.24
Checking for DateTime (v0.28) ok: found v0.76
Checking for DateTime-TimeZone (v0.79) ok: found v1.48
Checking for DBI (v1.614) ok: found v1.622
Checking for Template-Toolkit (v2.22) ok: found v2.24
Checking for Email-Send (v2.16) ok: found v2.198
Checking for Email-MIME (v1.904) ok: found v1.911
Checking for URI (v1.37) ok: found v1.59
Checking for List-MoreUtils (v0.22) ok: found v0.33
Checking for Math-Random-ISAAC (v1.0.1) ok: found v1.004
Checking for Win32 (v0.35) ok: found v0.44
Checking for Win32-API (v0.55) ok: found v0.64
Checking available perl DBD modules...
Checking for DBD-Pg (v1.45) ok: found v2.18.1
Checking for DBD-mysql (v4.001) ok: found v4.021
Checking for DBD-SQLite (v1.29) ok: found v1.33
Checking for DBD-Oracle (v1.19) ok: found v1.30
The following Perl modules are optional:
Checking for GD (v1.20) ok: found v2.46
Checking for Chart (v2.1) ok: found v2.4.5
Checking for Template-GD (any) ok: found v1.56
Checking for GDTextUtil (any) ok: found v0.86
Checking for GDGraph (any) ok: found v1.44
Checking for MIME-tools (v5.406) ok: found v5.503
Checking for libwww-perl (any) ok: found v6.02
Checking for XML-Twig (any) ok: found v3.41
Checking for PatchReader (v0.9.6) ok: found v0.9.6
Checking for perl-ldap (any) ok: found v0.44
Checking for Authen-SASL (any) ok: found v2.15
Checking for RadiusPerl (any) ok: found v0.20
Checking for SOAP-Lite (v0.712) ok: found v0.715
Checking for JSON-RPC (any) ok: found v0.96
Checking for JSON-XS (v2.0) ok: found v2.32
Use of uninitialized value in open at C:/Perl/site/lib/Test/Taint.pm line 334, <DATA> line 558.
Checking for Test-Taint (any) ok: found v1.04
Checking for HTML-Parser (v3.67) ok: found v3.68
Checking for HTML-Scrubber (any) ok: found v0.09
Checking for Encode (v2.21) ok: found v2.44
Checking for Encode-Detect (any) not found
Checking for Email-MIME-Attachment-Stripper (any) ok: found v1.316
Checking for Email-Reply (any) ok: found v1.202
Checking for TheSchwartz (any) not found
Checking for Daemon-Generic (any) not found
Checking for mod_perl (v1.999022) not found
Checking for Apache-SizeLimit (v0.96) not found
***********************************************************************
* OPTIONAL MODULES *
***********************************************************************
* Certain Perl modules are not required by Bugzilla, but by *
* installing the latest version you gain access to additional *
* features. *
* *
* The optional modules you do not have installed are listed below, *
* with the name of the feature they enable. Below that table are the *
* commands to install each module. *
***********************************************************************
* MODULE NAME * ENABLES FEATURE(S) *
***********************************************************************
* Encode-Detect * Automatic charset detection for text attachments *
* TheSchwartz * Mail Queueing *
* Daemon-Generic * Mail Queueing *
* mod_perl * mod_perl *
* Apache-SizeLimit * mod_perl *
***********************************************************************
COMMANDS TO INSTALL OPTIONAL MODULES:
Encode-Detect: ppm install Encode-Detect
TheSchwartz: ppm install TheSchwartz
Daemon-Generic: ppm install Daemon-Generic
mod_perl: ppm install mod_perl
Apache-SizeLimit: ppm install Apache-SizeLimit
Reading ./localconfig...
OPTIONAL NOTE: If you want to be able to use the 'difference between two
patches' feature of Bugzilla (which requires the PatchReader Perl module
as well), you should install patchutils from:
http://cyberelk.net/tim/patchutils/
Checking for DBD-mysql (v4.001) ok: found v4.021
Checking for MySQL (v5.0.15) ok: found v5.5.27
WARNING: You need to set the max_allowed_packet parameter in your MySQL
configuration to at least 3276750. Currently it is set to 3275776.
You can set this parameter in the [mysqld] section of your MySQL
configuration file.
Removing existing compiled templates...
Precompiling templates...done.
checksetup.pl complete.
答案1
事实证明这是一个已知的错误。