Squid Proxy 400 Bad Request with client application using Web Services

Posted on 2006-11-01
Last Modified: 2010-05-18
Hi There guys. Here's my problem. Our rich client java application uses web services to communicate to our web server. At one of our clients, they run a squid proxy on Linux. When a web service gets called, it seems that the squid proxy returns a error message 'Error 400 - Bad Request'. I did some digging around, and found that the squid proxy does not handle relative url's, but only absolute url's, and that's the reason for the apparent 'Error 400'. Seeing that we cannot change our application at this point, is there a way to configure squid to ignore this? Maybe some other work-around suggestion?

thanks alot,
Martin Coetzee
Question by:DaBump
  • 2

Accepted Solution

Paracelsius earned 500 total points
ID: 17912912
Hi Martin

If squid is used at your clients site as forwarding proxy (like in most common cases) you would have no better option than to rewrite the java app.

Squid expects to have a full URL, so that it know where to connect. Using relative URLs in the html documents is another story, since the browsers will use them to build an absolute URL (not URI)  to connect to the service.

If have access to the clients squid config you could setup a rule to use squid as accelerator (reverse proxy) for your application. But I suppose this would be overkill if you have multiple client.

In my opinion, you cannot get around rewriting the app.


Author Comment

ID: 17913353
Hi Paracelsius, thanks for the comment. What we ended up doing was to change the firewall rules to forward all calls to our domain straight out, instead of passing through the proxy server. This worked. I will need to make changes to our application to handle proxy servers for future problems. Thanks for the help, here's 500 points for you ;)


Expert Comment

ID: 17913584
Hi Martin

Thanks a lot.

Indeed instead of using an application layer gateway (squid) you can forward the packets using DNAT to the server.

Best regards,

Featured Post

Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

Join & Write a Comment

I have seen several blogs and forum entries elsewhere state that because NTFS volumes do not support linux ownership or permissions, they cannot be used for anonymous ftp upload through the vsftpd program.   IT can be done and here's how to get i…
Note: for this to work properly you need to use a Cross-Over network cable. 1. Connect both servers S1 and S2 on the second network slots respectively. Note that you can use the 1st slots but usually these would be occupied by the Service Provide…
It is a freely distributed piece of software for such tasks as photo retouching, image composition and image authoring. It works on many operating systems, in many languages.
This tutorial demonstrates a quick way of adding group price to multiple Magento products.

759 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now