Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I have the following problem with squid:

Some clients access concurrently 62 servers via a squid proxy. All servers have the same host name (www.example.com) but different public IPs (123.123.123.2 to 123.123.123.63). The server owner uses a kind of dns round robin.

I only have access to the squid server and to the clients. The connection to the servers is only allowed via the proxy IPs.

Without proxy, I just send a request to load data from http//123.123.123.5/dataforme but I send the host header "www.example.com". That works like it should.

But now using squid as a non caching proxy this is not possible anymore. Squid overrides the sent request host header. By doing this, the destination server does not know what data to deliver because the host-header is not correctly transmitted.

I set

url_rewrite_host_header off

But this does not have any effect. It seems that this option is only used when using squid as redirector. That is not what I do.

The following will work, if there were no other sites to fetch:

header_access Host deny all
header_replace Host www.example.com

But when I do this, every request will get the www.example.com host header. Then it is not possible to access other sites anymore.

What can I do?

Thanks in advance for your help!

share|improve this question
    
What is the host header being rewritten to? –  Andrew B Jan 9 '13 at 21:27
    
The host header is rewritten to the IP address (123.123.123.5 in my example). –  Chris Jan 10 '13 at 0:33

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.