Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I've been struggling with this same setup for the past week or so.</p> <p>It looks to me like they have made some significant changes to how mercurial works in IIS recently, so the link above to Jeremy Skinners tutorial will be problematic for 1.7.2</p> <p>This is a <a href="http://www.eworldui.net/blog/post/2010/04/08/Setting-up-Mercurial-server-in-IIS7-using-a-ISAPI-module.aspx" rel="nofollow noreferrer">more recent link</a> I found I had to do a couple things differently.</p> <p><strong>These instructions are for 1.7.x, if you're using 1.8.x, be sure to read Ethan's comment below!</strong></p> <p>I followed the instructions in <a href="http://selenic.com/hg/file/8c6b7a5f38c4/contrib/win32/hgwebdir_wsgi.py" rel="nofollow noreferrer">the comments of /contrib/win32/hgwebdir_wsgi.py</a>.</p> <ul> <li><p>Install <a href="http://www.python.org/ftp/python/2.6.6/python-2.6.6.msi" rel="nofollow noreferrer">Python 2.6.6</a></p></li> <li><p>Add Python to system PATH (to make life easier)</p></li> <li><p>Install <a href="http://sourceforge.net/projects/pywin32/files/pywin32/Build%20214/pywin32-214.win32-py2.6.exe/download" rel="nofollow noreferrer">pywin32 v214</a> (using the Python installer, Important!) (Note that this is built against python 2.6)</p></li> <li><p>Install <a href="http://code.google.com/p/isapi-wsgi/downloads/detail?name=isapi_wsgi-0.4.2.win32.exe&amp;can=2&amp;q=" rel="nofollow noreferrer">isapi_wsgi</a></p></li> <li><p><a href="https://www.mercurial-scm.org/release/mercurial-1.7.2.tar.gz" rel="nofollow noreferrer">download the mercurial source package</a><br> Extract, Then Run</p> <pre> python setup.py --pure build_py -c -d . build_ext -i build_mo --force python setup.py --pure install --force </pre></li> <li><p>Copy hgwebdir_wsgi.py from /contrib/win32 to the folder you want to host it from.</p></li> <li><p>Create a file hgweb.config in the folder you're going to host from. Add the contents</p> <pre> [paths] yourRepoName = c:\yourRepoLocation </pre></li> <li><p>Edit hgwebdir_wsgi.py to point the hgweb.config. path_prefix is 0 if hg is the root of the website. if you're putting it in a vdir 1 deep, then it's 1, etc.</p></li> <li><p>Run python hgwebdir_wsgi.py to create the isapi dll _hgwebdir_wsgi.dll. Console should print out "installation complete"</p></li> <li><p>Create your app pool in IIS (no managed code)</p></li> <li><p>Create your website, with the folder set to the same folder as hgwebdir_wsgi.py</p></li> <li><p>Add Handler of type Module, use "*" as the mapping, select _hgwebdir_wsgi.dll as the executable, select isapimodule as the type, Mercurial-ISAPI as the name (although name doesn't really matter)</p></li> <li><p>Edit feature permissions of the module to allow execute.</p></li> </ul> <p>web.config (for the previous 2 steps):</p> <pre><code>&lt;system.webServer&gt; &lt;handlers accessPolicy="Read, Execute, Script"&gt; &lt;add name="Mercurial-Isapi" path="*" verb="*" modules="IsapiModule" scriptProcessor="C:\inetpub\hgweb\_hgwebdir_wsgi.dll" resourceType="Unspecified" /&gt; &lt;/handlers&gt; &lt;/system.webServer&gt; </code></pre> <p>After all this, I was able to get it working.</p> <p>One last thing, I did copy MFC71.dll to windows/system32, although I'm not sure it was necessary <a href="http://python.net/crew/skippy/win32/" rel="nofollow noreferrer">http://python.net/crew/skippy/win32/</a></p> <p>I think the main difference between what I've got here and what's on the above link is that I did the "pure python" mercurial install, Although I'm a complete python newbie so I'm not sure. Also I did the "python installs" for pywin and isapi_wsgi rather than the plain windows msis.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload