Start IIS manager: Start > Administrative Tools > Internet Information Services (IIS) Manager
First you have to create a new Application Pool called Mercurial. To achieve this right click on Application pools and select Add new application pool. In the popup type Mercurial as name and click ok.
Then create a new web site:
in the left tree right click on Web Sites and from the popup menu choose New > Web Site:
follow the steps of the wizard
(at this point make sure that you choose a port that is not in use)
Now the web site is created. Right click on it ad choose Properies. Click the Home Directory tab and set the Application Pool to Mercurial:
Switch to the Directory Security tab, click on Edit in the Authentication and access control. DIsbale anonymus access and enable basic authentication. This makes you able to access repositories using users configured on the server.
Now you have to create a new handler mapping:
right click on the new Mercurial webpage in the left tree
click Properties in the context menu
click on the Home Directory tab
click on the Configure button then choose the Mappings tab
click on Insert and in the Executable field set the
that was created previously
uncheck the Verify that file exists
click OK, then click Apply
The last (and most important) step is adding a new web service extension.
right click on Web Service Extensions in the left tree and click Add a new Web Service Extentsion.
type Mercurial WSGI shim as name and click on Add
on the next window browse the previously created
and make sure to check the Set extension status to allowed checkbox
Finally restart IIS. Now you can browse your mercurial repositories using this url:
is the port number you specified when creating the Mercurial webpage.