Squid fails on # character when acting as proxy server
I have squid running in two separate configurations, one as a web
accelerator, the other as a forward proxy. When I request a url such
as [url]http://www.mydomain.com/[/url] from each squid I get a positive
response. When I modify that url to [url]http://www.mydomain.com/#test[/url] the
web accelerator instance again works fine. However, sending that
modified URL to the forward proxy using squidclient (and also cURL via
PHP) I get a 400 Bad Request error returned.
Further testing shows this happens with any URL that contains a pound/
hash sign through the forward proxy, but never with the web
accelerator. Such urls work correctly via a browser pointed to the
proxy, but they need to work when requests are made via cURL or
squidclient. I've reviewed the Squid configs and don't see anything
out of the ordinary.
Does anyone know if this is a known issue? Can anyone else re-create
the issue in their own configuration? I can generate a workaround
either with rewriters or further upstream before the URL goes out -
but it seems like a bug to me.