Microsoft IIS¶
Bugzilla works with IIS as a normal CGI application. These instructions assume that you are using Windows 7 Ultimate x64. Procedures for other versions are probably similar.
Begin by starting Internet Information Services (IIS) Manager. Start --> Administrators Tools --> Internet Information Services (IIS) Manager. Or run the command:
inetmgr
Create a New Application¶
Expand your Server until the Default Web Site shows its children.
Right-click Default Web Site and select Add Application from the menu.
Unde Alias, enter the alias for the website. This is the path below the domain where you want Bugzilla to appear.
Under Physical Path, enter the path to Bugzilla,
C:\Bugzilla
.
When finished, click OK.
Configure the Default Document¶
Click on the Application that you just created. Double-click on Default Document, and click Add underneath the Actions menu.
Under Name, enter index.cgi
.
All other default documents can be removed for this application.
Warning
Do not delete the default document from the Default Website.
Add Handler Mappings¶
Ensure that you are at the Default Website. Under IIS, double-click Handler Mappings. Under Actions, click Add Script Map. You need to do this twice.
For the first one, set the following values (replacing paths if necessary):
- Request Path:
*.pl
- Executable:
C:\Perl\bin\perl.exe "%s% %s%
- Name:
Perl Script Map
At the prompt select No.
Note
The ActiveState Perl installer may have already created an entry for
.pl files that is limited to GET,HEAD,POST
. If so, this mapping should
be removed, as Bugzilla's .pl files are not designed to be run via a web
server.
Todo
My source says to add a mapping for .pl, but that's sort of contradicted by the note above from a different source. Which is right?
For the second one, set the following values (replacing paths if necessary):
- Request Path:
*.cgi
- Executable:
C:\Perl\bin\perl.exe "%s% %s%
- Name:
CGI Script Map
At the prompt select No.
Bugzilla Application¶
Ensure that you are at the Bugzilla Application. Under IIS, double-click Handler Mappings. Under Actions, click Add Script Map.
Set the following values (replacing paths if necessary):
- Request Path:
*.cgi
- Executable:
C:\Perl\bin\perl.exe -x"C:\Bugzilla" -wT "%s" %s
- Name:
Bugzilla
At the prompt select No.
Todo
The Executable lines in the three things above are weirdly inconsistent. Is this intentional? My source is this page.
Todo
LpSolit suggests there's a step to do with authorizing CGI modules. Where does that fit?
Common Problems¶
- Bugzilla runs but it's not possible to 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
orPerl30.dll
.Reconfigure IIS to use
perl.exe
.- IIS returns HTTP 502 errors
- You probably forgot the
-T
argument toperl
when configuring the executable in IIS. - XMLRPC interface not working with IIS
- This is a known issue. See bug 708252.
This documentation undoubtedly has bugs; if you find some, please file them here.