Maoz wrote:
hi guys,
Sorry for not explaining my self clear enough,
I'll give you a live example:
the following url is an swf file that can be cached (if the ?.* will be ignored). All the rest of the arguments meant to be used while clicking the swf file and they are always changing.

Q: so... why is the .swf publishing these internal details to the world-wide-web instead of keeping them to itself?

A: because flash was designed that way :(

http://www.themarker.com/media09/haaretz_com/libi/libi_eng2_100x450_haaretz.swf?clickThru=http%3A//dclk.themarker.com/event.ng/Type%3Dclick%26FlightID%3D110201%26AdID%3D182245%26TargetID%3D7099%26Segments%3D39%2C143%2C361%2C2427%2C4706%2C4754%2C4881%2C6320%2C6514%2C6814%2C6955%26Targets%3D7003%2C7653%2C6874%2C7099%26Values%3D25%2C30%2C46%2C50%2C60%2C72%2C81%2C90%2C100%2C110%2C150%2C173%2C307%2C314%2C324%2C486%2C1102%2C1132%2C1137%2C1180%2C1184%2C1207%2C1236%2C1248%2C1257%2C1282%2C1461%2C1472%2C1501%2C1598%2C1619%2C1638%2C1716%2C1728%2C1759%2C1761%2C1762%2C1774%2C1814%2C1893%2C1916%2C1977%2C2049%2C2086%2C2108%2C2143%2C2194%2C2253%2C2254%2C2269%2C2275%2C2305%2C2330%2C2336%2C2341%2C2403%2C2517%2C2523%2C2532%2C2537%2C2577%2C2583%2C2602%2C2641%2C2723%2C2977%2C3192%2C3194%2C3237%2C3628%2C3669%2C3880%2C3893%2C3911%26RawValues%3DSITEID%252CHaaretz_Eng%252CCONTRASSID%252Chp%26Redirect%3Dhttp%3A//www.libi-fund.org.il/Libi/ENG/

the need is:
if the file is .swf always ignore ?.* and cache the file as:
http://www.themarker.com/media09/haaretz_com/libi/libi_eng2_100x450_haaretz.swf

rewrite is bad idea cause i need to send back to the browser the argument that passed to the cache server.

Right. So you are left with the storeurl_* stuff I mentioned a while ago. It caches the .swf binary object such that any URI that match a certain pattern get the same object back.


Amos



On Sun, 2009-02-01 at 18:37 -0800, Elli Albek wrote:
So lets say you have an origin server that is smart enough to redirect to
the correct URL always.

For example, identical pages:
1. mydomain.com/blah?a=b&c=d
2. mydomain.com/blah?a=b&c=d&button.x=10
3. mydomain.com/blah?c=d&a=b

Are all the same page, but the "correct" URL is 1.
The origin server redirects URLs 2 and 3 to URL 1 using HTTP 301 response.

Then it should be fairly safe to use the entire URL with the query string as
a cache key. When users access URL 2 a few times, then quid can go to the
origin server only once, and afterwards return 301 response from cache.

Is this a good assumption?

Do I need to add Expires header and max-age to the 301 response to make this
work?

E

-----Original Message-----
From: Amos Jeffries [mailto:squ...@treenet.co.nz] Sent: Sunday, February 01, 2009 4:58 PM
To: Maoz
Cc: Amos Jeffries; squid-users
Subject: Re: [squid-users] ignore question mark in url

> been there, done that..... didn't find any relevant information there.
>
>
> On Sun, 2009-02-01 at 23:31 +1300, Amos Jeffries wrote:
>> Maoz wrote:
>> > hello,
>> > how can I ignore the question mark in url
>> > I'll explain:
>> > Treat the url until the question mark as object.
>> >
>> > www.domain.com/index.jsp?aaa=1 <http://www.domain.com/index.jsp?aaa=1>
>> >
>> > will be the same object as:
>> >
>> > www.domain.com/index.jsp?aaa=10 <http://www.domain.com/index.jsp?aaa=10>
>> >
>> > and
>> >
>> > www.domain.com/index.jsp?aaa=2&ggg=3 
<http://www.domain.com/index.jsp?aaa=2&ggg=3>
>> >
>> > thanks
>> >
>>
>> http://wiki.squid-cache.org/ConfigExamples/DynamicContent
>>
>> Amos
>

Ah, sorry, now that I've woken up and re-read your request I see you were
asking something different to what I though.

You want the experimental storeurl controls from Squid-2.7.
http://www.squid-cache.org/Versions/v2/2.7/cfgman/storeurl_rewrite_program.h
tml


Note that duplicating dynamic URLs like that is very dangerous procedure:
 - for web providers it drops them into the nasty bandwidth wasting hole
youtube is currently in.
 - for cache operators it drops you into the liability of getting it right
and forever having to check its still right. Big issues when it goes even
slightly wrong.

Amos





--
Please be using
  Current Stable Squid 2.7.STABLE5 or 3.0.STABLE12
  Current Beta Squid 3.1.0.4

Reply via email to