Bugzilla windows安装指南

来源:互联网 发布:六安市数控编程人才网 编辑:程序博客网 时间:2024/05/20 17:40

最近需要设置一个bug管理系统,JIRA需要收费,Bugzilla也不错,所以就选择了Bugzilla。

From : https://wiki.mozilla.org/Bugzilla:Win32Install


If you want a single-package installer that will install Apache, MySQL, Perl, and Bugzilla all at once and configure them all for you, check out the Windows Install Packages.

If you prefer to do everything yourself, the below instructions explain how to manually configure Bugzilla on Windows.

Contents

 [hide] 
  • 1 Installing Bugzilla on Microsoft Windows with Apache
    • 1.1 Bugzilla
      • 1.1.1 Installing Bugzilla From bzr
      • 1.1.2 Installing Bugzilla From the TarBall
      • 1.1.3 Upgrading From TarBall
    • 1.2 MySQL
      • 1.2.1 Download MySQL
      • 1.2.2 Install
      • 1.2.3 Create Bugs Database User
    • 1.3 ActiveState Perl
      • 1.3.1 Download ActiveState Perl
      • 1.3.2 Install
      • 1.3.3 Upgrading Existing Installs
      • 1.3.4 Install Modules
    • 1.4 Apache
      • 1.4.1 Download Apache 2.x
      • 1.4.2 Install
      • 1.4.3 Grant write access for Apache account
      • 1.4.4 Configure Port and DocumentRoot
      • 1.4.5 Configure CGI
      • 1.4.6 Disable Logging
      • 1.4.7 Restart Apache
    • 1.5 Configure Bugzilla
      • 1.5.1 checksetup.pl
      • 1.5.2 Edit localconfig
      • 1.5.3 checksetup.pl
      • 1.5.4 Parameters
    • 1.6 Scheduled Tasks
      • 1.6.1 collectstats.pl
      • 1.6.2 whineatnews.pl
      • 1.6.3 Backing up Bugzilla
      • 1.6.4 Testing if Bugzilla works
      • 1.6.5 Congratulations, the Bugzilla installation process is complete!
  • 2 Installing Bugzilla on Microsoft Windows with IIS
    • 2.1 Common Problems
      • 2.1.1 Bugzilla runs but I can't log in
      • 2.1.2 IIS returns HTTP 502 errors
      • 2.1.3 XMLRPC interface not working with IIS

Installing Bugzilla on Microsoft Windows with Apache

Original author: Byron Jones

Bugzilla version 2.18 was the first release that runs unmodified on Windows. This document guides you step by step through the installation process.

Note that there are a few things that don't work very well on Windows, such as mod_perl.

Bugzilla

There's two main methods to getting the Bugzilla source - from bzr or in a tarball. The best method for fetching Bugzilla is to grab it directly from bzr, as this will allow for simple upgrades, even if you have customised Bugzilla.

Read the Release Notes before you do anything.

Installing Bugzilla From bzr

Download the Bazaar standalone installer from the Bazaar website, and run the installer.

Note: this document assumes you want to install Bugzilla into C:\Bugzilla.

Open the command line, and cd to the parent of the directory you want to install Bugzilla into. As we'll be installing Bugzilla into C:\Bugzilla, the current directory must be C:\.

C:\>bzr co -r tag:bugzilla-4.0.2 bzr://bzr.mozilla.org/bugzilla/4.0 BugzillaC:\>

It can take a minute or two to download all files, be patient. In the example above, tag:bugzilla-4.0.2 means we want to install Bugzilla 4.0.2, and bugzilla/4.0 in the URL is the branch this version belongs to (bzr doesn't guess this part of the URL for you). If you already installed Bugzilla using bzr and want to upgrade to a newer version, please follow the instructions given here.

Installing Bugzilla From the TarBall

Download Bugzilla from the Bugzilla download page (2.9 MB).

Bugzilla ships as a Tarball, which has the extension .tar.gz. Any decent Windows archive tool should be able to extract tarballs.

Extract the archive to the directory of your choice. For the remainder of this document I will assume that you have extracted Bugzilla intoC:\Bugzilla.

Upgrading From TarBall

If you installed Bugzilla from the TarBall, the simplest way to upgrade is to follow the instructions given above about bzr.

MySQL

Download MySQL

Download the MySQL 32-bit or 64-bit MSI installer from the MySQL website (28 MB).

Install

MySQL has a standard Windows installer. It's ok to select a Typical MySQL install (the default). For the remainder of this document I will assume you have installed MySQL into C:\mysql.

Now change a few settings. Goto C:\mysql\bin\my.ini and set the max_allowed_packet setting to 4M. Underneath that, add the following line:

ft_min_word_len = 2

Create Bugs Database User

Use the mysql command line utility to create a MySQL account for Bugzilla.

Note in the following example 'sockmonkey' is my password for the bugs account:

C:\mysql\bin>mysql --user=root -p mysqlEnter password: ********Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 1Server version: 5.5.15 MySQL Community Server (GPL)mysql> GRANT ALL PRIVILEGES ON bugs.* TO 'bugs'@'localhost' IDENTIFIED BY 'sockmonkey';Query OK, 0 rows affected (0.03 sec)mysql> quitByeC:\mysql\bin>

ActiveState Perl

Download ActiveState Perl

Download the ActiveState Perl 5.12.4 or higher MSI installer from the ActiveState website.

Note that Bugzilla currently requires Perl 5.8.1 or higher, but it's highly recommended to install ActivePerl 5.12 or higher. Bugzilla 4.2 will be the last version to support Perl 5.8.x. The next release will require Perl 5.10.1 or better. Also, there are several bugs in Perl 5.8.x which have been fixed in 5.10.1 and 5.12.

Install

ActiveState Perl uses a standard Windows Installer. Install, sticking with the defaults, which will install Perl into C:\Perl.

Note: Installing Perl into a directory that contains a space (eg "C:\Program Files") will break the Template-Toolkit installer.

Once the install has completed, log out and log in again to pick up the changes to the PATH.

Upgrading Existing Installs

If you already have ActiveState Perl installed, now's a good time to ensure you're running the latest version of ActiveState Perl, along with the latest versions of the modules.

Upgrading ActiveState Perl requires to delete the old version and install the new one. The reason is that Perl modules installed with one version of Perl are not compatible with a newer version of Perl. So you will have to reinstall these modules again.

Install Modules

Bugzilla requires a number of perl modules to be installed. They are available in the ActiveState repository and the following additional repositories:
Perl 5.8.x:
   http://theoryx5.uwinnipeg.ca/ppms/
Perl 5.10.x:
   http://cpan.uwinnipeg.ca/PPMPackages/10xx/ and
   http://trouchelle.com/ppm10/
Perl 5.12 doesn't require any additional repository. It already contains everything that Bugzilla needs.

If you use a proxy server or a firewall you may have trouble running PPM. This is covered in the ActivePerl FAQ.

The Net::LDAP module is only required if you want to use Active Directory for authentication.

The following are the commands and ouput for a 5.10.x perl module installation. If you don't want to use the command-line interface but prefer a nice Graphical User Interface (GUI), simply type "ppm", or look for the Perl Package Manager in the Windows Start bar.

C:\>ppm versionppm 4.06 (ActivePerl 1006)Copyright (C) 2009 ActiveState Software Inc. All rights reserved.C:\>ppm repo add UWinnipeg http://cpan.uwinnipeg.ca/PPMPackages/10xx/Downloading ActiveState Package Repository packlist...doneUpdating ActiveState Package Repository database...doneDownloading UWinnipeg packlist...doneUpdating UWinnipeg database...doneRepo 2 added.C:\>ppm repo add Trouchelle http://trouchelle.com/ppm10/Downloading Trouchelle packlist...doneUpdating Trouchelle database...doneRepo 3 added.C:\>ppm repo list+---------------------------------------------+¦ id ¦ pkgs  ¦ name                           ¦+----+-------+--------------------------------¦¦ 1  ¦ 11417 ¦ ActiveState Package Repository ¦¦ 2  ¦ 291   ¦ UWinnipeg                      ¦¦ 3  ¦ 11737 ¦ Trouchelle                     ¦+---------------------------------------------+(3 enabled repositories)C:\>ppm upgrade --installSyncing site PPM database with .packlists...doneArchive-Tar 1.54 (have 1.52-r1)Attribute-Handlers 0.87 (have 0.86)AutoLoader 5.70 (have 5.69)Bit-Vector 7.1 (have 6.9)Class-Accessor 0.34 (have 0.33)Class-ISA 0.36 (have 0.33)Compress-Raw-Bzip2 2.021 (have 2.020)Compress-Raw-Zlib 2.021 (have 2.020)DBD-ODBC 1.23 (have 1.22)DBI 1.609 (have 1.607)Date-Calc 5.8 (have 5.6)Encode 2.37 (have 2.35)ExtUtils-CBuilder 0.260301 (have 0.2603)ExtUtils-Manifest 1.57 (have 1.56)ExtUtils-ParseXS 2.21 (have 2.2002)File-Path 2.08 (have 2.07_03)File-Which 1.09 (have 1.07)IO-Compress 2.021 (have 2.020)IPC-Cmd 0.50 (have 0.46)Log-Message-Simple 0.06 (have 0.04)Math-BigRat 0.24 (have 0.22)Module-CoreList 2.20 (have 2.17)Module-Loaded 0.06 (have 0.02)Object-Accessor 0.36 (have 0.34)Safe 2.19 (have 2.17)Test-Simple 0.94 (have 0.92)Text-CSV_XS 0.68 (have 0.67)Text-Reform 1.20 (have 1.11)constant 1.19 (have 1.18)parent 0.223 (have 0.221)version 0.7702 (have 0.7701)C:\>ppm install AppConfigDownloading AppConfig-1.66...doneUnpacking AppConfig-1.66...doneGenerating HTML for AppConfig-1.66...doneUpdating files in site area...done14 files installedC:\>ppm install TimeDateDownloading TimeDate-1.19...doneUnpacking TimeDate-1.19...doneGenerating HTML for TimeDate-1.19...doneUpdating files in site area...done41 files installedC:\>ppm install DBINo missing packages to installC:\>ppm install DBD-mysqlDownloading DBD-mysql-4.011...doneUnpacking DBD-mysql-4.011...doneGenerating HTML for DBD-mysql-4.011...doneUpdating files in site area...done12 files installedC:\>ppm install Template-ToolkitDownloading Template-Toolkit-2.22...doneUnpacking Template-Toolkit-2.22...doneGenerating HTML for Template-Toolkit-2.22...doneUpdating files in site area...done140 files installedC:\>ppm install MailToolsDownloading MailTools-2.04...doneDownloading Test-Pod-1.40...doneUnpacking MailTools-2.04...doneUnpacking Test-Pod-1.40...doneGenerating HTML for MailTools-2.04...doneGenerating HTML for Test-Pod-1.40...doneUpdating files in site area...done43 files installedC:\>ppm install GDNo missing packages to installC:\>ppm install ChartDownloading Chart-2.4.1...doneUnpacking Chart-2.4.1...doneGenerating HTML for Chart-2.4.1...doneUpdating files in site area...done16 files installedC:\>ppm install GDGraphDownloading GDGraph-1.44...doneUnpacking GDGraph-1.44...doneGenerating HTML for GDGraph-1.44...doneUpdating files in site area...done21 files installedC:\>ppm install PatchReaderDownloading PatchReader-0.9.5...doneUnpacking PatchReader-0.9.5...doneGenerating HTML for PatchReader-0.9.5...doneUpdating files in site area...done12 files installedC:\>ppm install Net-LDAP-ExpressDownloading Net-LDAP-Express-0.11...doneDownloading perl-ldap-0.39...doneDownloading Convert-ASN1-0.22...doneUnpacking Net-LDAP-Express-0.11...doneUnpacking perl-ldap-0.39...doneUnpacking Convert-ASN1-0.22...doneGenerating HTML for Net-LDAP-Express-0.11...doneGenerating HTML for perl-ldap-0.39...doneGenerating HTML for Convert-ASN1-0.22...doneUpdating files in site area...done103 files installed

Apache

It is recommended that you run Bugzilla with the Apache web server. If you want to use IIS to run Bugzilla, there are configuration instructions in the Bugzilla documentation.

Download Apache 2.x

Download the Apache HTTP Server version 2.2.x or higher from: http://httpd.apache.org/download.cgi

Install

Yet another standard Windows Installer. Just follow the prompts, making sure you Install for All Users. Be aware the Apache will always install itself into an Apache2 directory under what ever path you specify. The default install path will be displayed as C:\Program Files\Apache Group which will result in Apache being installed to C:\Program Files\Apache Group\Apache2. This gets me every time.

For the remainder of this document I will assume you installed Apache into the default location, C:\Program Files\Apache Group\Apache2.

If you are already running IIS, you must configure apache to run on a port other than 80, however you aren't asked the port to listen on at install time. Choose All Users (which says port 80), and we'll change the port later.

By default Apache installs itself to run as the SYSTEM account. For security reasons it's better the reconfigure the service to run as an Apache user. Create a user that is a member of no groups, and reconfigure the Apache2 service to run as that account.

Grant write access for Apache account

By default Apache will run as the SYSTEM account. This account needs write and modify access to the following directorys, and all their subdirectories. Depending on your version of Windows, this access may already be granted.

  • C:\Bugzilla\data
  • C:\Program Files\Apache Group\Apache2\logs
  • C:\Temp
  • C:\Windows\Temp

Note that C:\Bugzilla\data is created the first time you run checksetup.pl.

Configure Port and DocumentRoot

Edit C:\Program Files\Apache Group\Apache2\conf\httpd.conf with your favourite text editor.

To change the port that Apache runs on (listens on, or binds to), edit the Listen option.

## Listen: Allows you to bind Apache to specific IP addresses and/or# ports, instead of the default. See also the <VirtualHost># directive.## Change this to Listen on specific IP addresses as shown below to # prevent Apache from glomming onto all bound IP addresses (0.0.0.0)##Listen 12.34.56.78:80Listen 80

Change the DocumentRoot setting to point to C:\Bugzilla. Note there are two locations in httpd.conf that need to be updated. Note you need to use / instead of \ as a path separator.

## DocumentRoot: The directory out of which you will serve your# documents. By default, all requests are taken from this directory, but# symbolic links and aliases may be used to point to other locations.#DocumentRoot "C:/Bugzilla"## Each directory to which Apache has access can be configured with respect# to which services and features are allowed and/or disabled in that# directory (and its subdirectories). ## First, we configure the "default" to be a very restrictive set of # features.  #<Directory />   Options FollowSymLinks   AllowOverride None</Directory>## Note that from this point forward you must specifically allow# particular features to be enabled - so if something's not working as# you might expect, make sure that you have specifically enabled it# below.### This should be changed to whatever you set DocumentRoot to.#<Directory "C:/Bugzilla">

Configure CGI

To enable CGI support in Apache, you need to enable the CGI handler, by uncommenting the AddHandler cgi-script .cgi line.

## AddHandler allows you to map certain file extensions to "handlers":# actions unrelated to filetype. These can be either built into the server# or added with the Action directive (see below)## To use CGI scripts outside of ScriptAliased directories:# (You will also need to add "ExecCGI" to the "Options" directive.)#AddHandler cgi-script .cgi

And allow .cgi scripts in the Bugzilla directory by adding the ExecCGI option. We also need to allow Bugzilla's .htaccess file to restrict access to sensitive documents by allowing it to override the defaults. This involves changing AllowOverride None to AllowOverride All.

Apache also needs to know to use Perl to execute .cgi files, via the ScriptInterpreterSource directive.

## This should be changed to whatever you set DocumentRoot to.#<Directory "C:/Bugzilla">## Possible values for the Options directive are "None", "All",# or any combination of:#   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews## Note that "MultiViews" must be named *explicitly* --- "Options All"# doesn't give it to you.## The Options directive is both complicated and important.  Please see# http://httpd.apache.org/docs-2.0/mod/core.html#options# for more information.#    Options Indexes FollowSymLinks ExecCGI## AllowOverride controls what directives may be placed in .htaccess files.# It can be "All", "None", or any combination of the keywords:#   Options FileInfo AuthConfig Limit#    AllowOverride All## Controls who can get stuff from this server.#   Order allow,deny   Allow from all## Tell Apache to use Perl to execute .cgi#    ScriptInterpreterSource Registry-Strict</Directory>

You also should add index.cgi to the DirectoryIndex list.

## DirectoryIndex: sets the file that Apache will serve if a directory# is requested.## The index.html.var file (a type-map) is used to deliver content-# negotiated documents.  The MultiViews Option can be used for the # same purpose, but it is much slower.#DirectoryIndex index.html index.html.var index.cgi

In order for ScriptInterpreterSource Registry-Strict to work, you also need to add an entry to the Registry so Apache will use Perl to execute .cgi files.

Create a key HKEY_CLASSES_ROOT\.cgi\Shell\ExecCGI\Command with the default value of the full path of perl.exe with a -T parameter. For example C:\Perl\bin\perl.exe -T

Regedit

Disable Logging

Unless you want to keep statistics on how many hits your Bugzilla install is getting, it's a good idea to disable logging by commenting out theCustomLog directive.

## The location and format of the access logfile (Common Logfile Format).# If you do not define any access logfiles within a <VirtualHost># container, they will be logged here.  Contrariwise, if you *do*# define per-<VirtualHost> access logfiles, transactions will be# logged therein and *not* in this file.##CustomLog logs/access.log common

Restart Apache

Finally, restart Apache to get it pick up the changes.

C:\>net stop apache2The Apache2 service is stopping..The Apache2 service was stopped successfully.C:\>net start apache2The Apache2 service is starting.The Apache2 service was started successfully.C:\>


Configure Bugzilla

checksetup.pl

Run checksetup.pl. This will check your Perl modules and create localconfig.

C:\>cd bugzillaC:\bugzilla>perl checksetup.plSet up gcc environment - 4.4.3* This is Bugzilla 4.1.3 on perl 5.14.1* Running on Win7 Build 7601 (Service Pack 1)Checking perl modules...Checking for               CGI.pm (v3.51)     ok: found v3.55Checking for           Digest-SHA (any)       ok: found v5.62Checking for             TimeDate (v2.21)     ok: found v2.24Checking for             DateTime (v0.28)     ok: found v0.70Checking for    DateTime-TimeZone (v0.79)     ok: found v1.35Checking for                  DBI (v1.614)    ok: found v1.616Checking for     Template-Toolkit (v2.22)     ok: found v2.22Checking for           Email-Send (v2.16)     ok: found v2.198Checking for           Email-MIME (v1.904)    ok: found v1.908Checking for                  URI (v1.37)     ok: found v1.58Checking for       List-MoreUtils (v0.22)     ok: found v0.32Checking for    Math-Random-ISAAC (v1.0.1)    ok: found v1.004Checking for                Win32 (v0.35)     ok: found v0.44Checking for            Win32-API (v0.55)     ok: found v0.62Checking available perl DBD modules...Checking for               DBD-Pg (v1.45)     ok: found v2.17.2Checking for            DBD-mysql (v4.001)    ok: found v4.019Checking for           DBD-SQLite (v1.29)     ok: found v1.33Checking for           DBD-Oracle (v1.19)     ok: found v1.27The following Perl modules are optional:Checking for                   GD (v1.20)     ok: found v2.45Checking for                Chart (v2.1)      ok: found v2.4.2Checking for          Template-GD (any)       ok: found v1.56Checking for           GDTextUtil (any)       ok: found v0.86[...]This version of Bugzilla contains some variables that you may wantto change and adapt to your local settings. Please edit the file'./localconfig' and rerun checksetup.plThe following variables are new to localconfig since you last ranchecksetup.pl:   index_html cvsbin interdiffbin diffpath create_htaccesswebservergroup db_driver db_host db_pass db_sock db_checkC:\bugzilla>

Edit localconfig

Open C:\Bugzilla\localconfig in your favourite text editor to configure Bugzilla.

You have to tell Bugzilla how to access your database. If you used bugs/bugs, you'll only have to set db_pass.

## How to access the SQL database:#$db_host = "localhost";         # where is the database?$db_port = 3306;                # which port to use$db_name = "bugs";              # name of the MySQL database$db_user = "bugs";              # user to attach to the MySQL database## Enter your database password here. It's normally advisable to specify# a password for your bugzilla database user.# If you use apostrophe (') or a backslash (\) in your password, you'll# need to escape it by preceding it with a \ character. (\') or (\\)#$db_pass = 'sockmonkey';

checksetup.pl

Run checksetup.pl again. This time it will build your database tables and initialise Bugzilla.

C:\bugzilla>perl checksetup.pl[...]Looks like we don't have an administrator set up yet.  Either this is yourfirst time using Bugzilla, or your administrator's privileges might haveaccidently been deleted.Enter the e-mail address of the administrator: byron@example.comYou entered 'byron@example.com'.  Is this correct? [Y/n] yEnter the real name of the administrator: Byron JonesEnter a password for the administrator account: beefPlease retype the password to verify: beef'byron@example.com' is now set up as an administrator account.C:\bugzilla>

Parameters

You should now be able to log into to Bugzilla using the account checksetup.pl just created. Point your web browser to http://localhost/, choose Log in to an existing account, and login.

In the page footer, choose Parameters.

Put in your email address as the maintainer.

maintainer:byron@example.com

Put in the URL to Bugzilla in the urlbase field. This URL will be used in emails, so don't use localhost.

urlbase:http://bugzilla.example.com/

Download and install WebDot from http://www.graphviz.org/Download_windows.php. Put the complete path to dot.exe in webdotbase.

webdotbase:C:/Program Files/ATT/Graphviz/bin/dot.exe

Scheduled Tasks

collectstats.pl

Add a Scheduled Task to run collectstats.pl nightly.

Step-by-step for Windows XP:

  1. Control Panel --> Scheduled Tasks --> Add Scheduled Task
  2. Next
  3. Browse
  4. Find perl.exe (normally C:\Perl\bin\perl.exe)
  5. Give it a name, such as "Bugzilla Collect Stats"
  6. Perfom the task daily at your desired time
  7. If you're running Apache as a user, not as SYSTEM, enter that user here. Otherwise you're best off creating an account that has write access to the Bugzilla directory and using that
  8. Tick "Open Advanced Properties.." and click Finish
  9. Append the script name to the end of the "Run" field. eg C:\Perl\bin\perl.exe C:\Bugzilla\collectstats.pl
  10. Change "start in" to the Bugzilla directory

whineatnews.pl

Add a Scheduled Task to run whineatnews.pl nightly.

The steps for setting up whineatnews.pl are as per collectstats.pl

Backing up Bugzilla

You may want to backup the entire Bugzilla directory. It's small and you'll get all your settings and customisations on your backup media.

The most important component of Bugzilla to backup is the Bugzilla Database. It contains all your Bugs, Users, Attachments, pretty well everything. Like most databases, backups with MySql are performed by generating a dump of the database and backing up the dump.

Schedule the mysqldump utility to create the dump, and add the resulting file to your backup media. You'll find MySql's mysqldumpdocumentation at http://dev.mysql.com/doc/mysql/en/mysqldump.html.


Testing if Bugzilla works

Try to access the your BugZilla by : (for example ) http://localhost:8080

If it doesn't display a BugZilla page, but "It works!!!", somehow your Apache still sees somehow original version of httpd.conf. Check if Apache picks another copy of httpd.conf. If you installed Apache once and somehow uninstalled it and install it again, it can see a copied version in conf/original of Apache directory. When you edited conf/httpd.conf, try this :

 1. Stop Apache service 2. Invoke your Apache in a console : httpd.exe -f conf/httpd.conf

If your httpd.conf setting is all correct, it should display BugZilla page on your web browser.

However, if it still shows the same problem, and looks like that the Apache doesn't pick your modification in httpd.conf, you probably use Windows 7. Windows 7 has a new feature called "VirtualStore". To figure out about it more and how to fix it, try to read this blog article.

 http://blog.netscraps.com/bugs/apache-httpd-conf-changes-ignored-in-windows-7.html

If it still fails but display "Internal Error..." message, ScriptInterpreterSource Registry-Strict is not set. Check again if it is set properly.

When everything works, stop the httpd.exe invoked from your console and start it as a service. Be sure to make it pick a right httpd.conf.

Congratulations, the Bugzilla installation process is complete!

Installing Bugzilla on Microsoft Windows with IIS

Bugzilla works with IIS as a normal CGI application; follow the Microsoft documentation with regards to configuring IIS. On Windows 7, configuring IIS 7 is very easy, as explained in this blog post.

Common Problems

Bugzilla runs but I can't log in

You've probably configured IIS to use ActiveState's ISAPI DLL -- in other words you're using PerlEx, or the executable IIS is configured to use is PerlS.dll or Perl30.dll.

Reconfigure IIS to use perl.exe

IIS returns HTTP 502 errors

You probably forgot the -T argument to perl when configuring the executable in IIS:

 C:\Perl\bin\perl.exe -T "%s" %s

XMLRPC interface not working with IIS

This is a known issue. See bug 708252.