Commits

Anonymous committed 47b2318

fix a protocol bug in baseurlfilter

Comments (0)

Files changed (1)

cherrypy/lib/filter/baseurlfilter.py

 
     def afterRequestHeader(self):
         if self.useXForwardedHost:
-            newBaseUrl = 'http://' + cpg.request.headerMap.get(
-                "X-Forwarded-Host", self.baseUrl)
+            newBaseUrl = cpg.request.headerMap.get("X-Forwarded-Host", self.baseUrl)
         else:
             newBaseUrl = self.baseUrl
+	if newBaseUrl.find("://") == -1:
+	    # add http:// or https:// if needed	
+	    newBaseUrl = cpg.request.base[:cpg.request.base.find("://")] + "://" + newBaseUrl
 
         cpg.request.browserUrl = cpg.request.browserUrl.replace(
             cpg.request.base, newBaseUrl)
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.