diff options
author | Allan Saddi <allan@saddi.com> | 2011-02-19 00:16:45 -0800 |
---|---|---|
committer | Allan Saddi <allan@saddi.com> | 2011-02-19 00:16:45 -0800 |
commit | fd558313d33bf9c04b288240879e56ff9714bb4f (patch) | |
tree | 05b1df3dfa62389f76895871395ce58e27ef036c /flup/server/scgi_base.py | |
parent | f866035b7c02527b83850cf841d5a78b106ab85e (diff) | |
download | flup-fd558313d33bf9c04b288240879e56ff9714bb4f.tar.gz |
When deriving PATH_INFO from REQUEST_URI, take SCRIPT_NAME into account.
Diffstat (limited to 'flup/server/scgi_base.py')
-rw-r--r-- | flup/server/scgi_base.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/flup/server/scgi_base.py b/flup/server/scgi_base.py index 199f82b..30a95a0 100644 --- a/flup/server/scgi_base.py +++ b/flup/server/scgi_base.py @@ -525,7 +525,10 @@ class BaseSCGIServer(object): environ['SCRIPT_NAME'] = '' if not environ.has_key('PATH_INFO') or not environ['PATH_INFO']: if reqUri is not None: - environ['PATH_INFO'] = reqUri[0] + scriptName = environ['SCRIPT_NAME'] + if not reqUri[0].startswith(scriptName): + self.logger.warning('SCRIPT_NAME does not match request URI') + environ['PATH_INFO'] = reqUri[0][len(scriptName):] else: environ['PATH_INFO'] = '' else: |