Mercurial > hg
diff mercurial/hgweb/wsgicgi.py @ 10201:d2847c4523e8 stable
hgweb: improve IIS PATH_INFO fix ee8af8a4d905 (issue1580)
Copy PHP IIS detection.
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Sun, 03 Jan 2010 17:26:39 +0100 |
parents | 46293a0c7e9f |
children | 25e572394f5c |
line wrap: on
line diff
--- a/mercurial/hgweb/wsgicgi.py Fri Jan 01 17:58:35 2010 -0600 +++ b/mercurial/hgweb/wsgicgi.py Sun Jan 03 17:26:39 2010 +0100 @@ -17,8 +17,11 @@ environ = dict(os.environ.iteritems()) environ.setdefault('PATH_INFO', '') - if '.cgi' in environ['PATH_INFO']: - environ['PATH_INFO'] = environ['PATH_INFO'].split('.cgi', 1)[1] + if environ.get('SERVER_SOFTWARE', '').startswith('Microsoft-IIS'): + # IIS includes script_name in path_info + scriptname = environ['SCRIPT_NAME'] + if environ['PATH_INFO'].startswith(scriptname): + environ['PATH_INFO'] = environ['PATH_INFO'][len(scriptname):] environ['wsgi.input'] = sys.stdin environ['wsgi.errors'] = sys.stderr