Hey Sachin Gupta, what you are asking is basically related to "requests mangling" which is not the best way to do what you need. I assume that matching and insert is kind of filtering or mangling. The best option I have seen is ICAP and it's a very simple mechanism. the solution is based on the need.. If there is a big system that works and do what you need it's one thing but I assume that URL filtering best option is not only based on the URL and for that purpose squid 3.X can fit and also a multicore system can handle more requests and ICAP stuff.. and for the questions part(in the quoted area) On 09/18/2013 06:48 AM, Sachin Gupta wrote: > Hi, > > We are using Squid 3.1 and need to do the following: > 1. We have a list of URLs which we want to allow. "Whitelisting urls" which is one level of filtering that can be done using external_acl helper or url_rewrite. > 2. Squid to read this list of URLs and for each matching entry in the > list, set a particular field (insert a string) in the HTTP header. Which is "http request mangling" and I think it's a very bad choice\thing\idea to do. > 3. Using this header string, a URL filtering program will allow the > URLs to be accessed. On what system?? ICAP was designed for that... ECAP can do this also but it depends on the developer.. Saying that you have passed the ICAP scenario is not likely since it's only on the requests and the only thing that need to be done is to tune couple things. I have wrote a small ICAP service for youtube cache and small url filtering in the past which was tested a bit. The uncompleted part of the code can be found here: https://github.com/elico/echelon in the version that do exists in github there are couple things that needs to be reprogrammed and maybe redesign for other needs that me and also to maybe match url_filtering proxy standards and RFCs. So the question is probably not 3.1 or 3.2 or 3.3 but rather: "I want to do X and squid dosn't do that". Best Regards, Eliezer > > I explored the squid functionality and came across following: > a. header_replace : Not sure how i can use this for my case. Examples > and references are welcome. > b. request_header_replace: Not available in 3.1. Not possible to > upgrade to latest squid release. > > Is there any other option to do the same? Please suggest. > > Regards >