Requests routed to unexpected URL when dealing with sub-urls
I'm running Django behind CherryPy and I ran into an issue today during deployment.
The issue arises when manually entering URLs such as the following: http://api.example.com/api/https://www.google.ca/images/srpr/logo3w.png
CherryPy will route unexpectedly in this case to: http://api.example.com/api/images/srpr/logo3w.png
The cause of this seems to be the colon in 'https://' not being encoded properly even though the browser is likely doing it automatically.
For reference: http://api.example.com/api/https%3A//www.google.ca/images/srpr/logo3w.png works as expected.