Problem solved. Reason: CURLput "no-cache" in the http header by default, therefore squid didn't cache the content. Solution: It seems to be possible to configure CURL's http header by hand, but I chose to use wget program in stead of CURL, which is much simpler to do. -Henry On Tue, Apr 19, 2011 at 7:11 PM, Amos Jeffries <squid3@xxxxxxxxxxxxx> wrote: > On Tue, 19 Apr 2011 15:50:48 -0500, Henry Yuan wrote: >> >> Does the http packets need to have some explicit cache header to make >> it be cached? > > Default is to cache. There are headers which prevent caching though. They > come from both the server and the client. > > You can use http://redbot.org to scan the server for what its allowing to > happen to a URL. You will need to check what headers curl is sending > (dumping them back into the page by the server is the easy way) IIRC it used > to send one preventing anything from being stored. > > Amos > >