httpd-modules-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Erica Zhang <erica...@cs.ubc.ca>
Subject Re: Questions on modules to provide cache functions for Apache
Date Tue, 06 Mar 2007 18:42:09 GMT
David,

Thanks a lot for your reply. While, I just want to cache HTTP responses 
produced by PHP scripts. Of course, those responses perhaps include PHP 
scripts. On the other hand,  I know I could do it by use of PHP itself. 
I just want to provide a general one. This means no matter what kind of 
script or languages used for server development, for example, ASP, PHP, 
Java and etc, I could use only one module to cache those HTTP responses. 
I thought Apache could handle or filter HTTP responses or requests. So I 
want to add modules to handle caching dynamic HTTP responses problems.

However, based on your suggestion, it seems that I have to developed 
separate ones for Java, ASP, PHP. Right ? But is there some general way 
to cache responses ?

Thanks,

Erica

David Wortham wrote:

> Erica,
>   IMO, your caching should take place on the PHP side of things, not 
> Apache
> or any Apache modules (save for maybe mod_php).
>
>   Depending on how frequently the cache should refresh, I would either 
> have
> (1) PHP write the newest response to a file and check the timestamp of 
> the
> file to check if  the cachefile should be updated,
> (2) Don't use PHP called from a webserver, but rather use PHP called 
> from a
> cron job, or
> (3) find out how to use PHP to cache itself (I'm pretty sure Apache won't
> cache PHP, ASP, etc.)
>
> For help on any three of these things, I would recommend asking at a
> PHP-specific forum/mailing list or on www.php.net (the comments on 
> that site
> are sometimes extremely helpful).
>
> Regards,
> David Wortham
>
>
>
>
> On 3/5/07, Erica Zhang <ericazhj@cs.ubc.ca> wrote:
>
>>
>> Hi,
>>
>> I want to develop a filter module to cache responses for XMLHttp
>> requests for Apache. Before that, I have tried to configure using
>> mod_cache. I found that it could not be used to cache responses for
>> XMLHttp requests. However, I am not sure about this, because I am new to
>> web applications. So before beginning to develop a new module to do this
>> function, I want to make sure that. Is there some expert tell me about
>> your idea on this topic or experiences ?
>>
>> I tried to give more details below:
>>
>> For mod_cache, I use httpd.conf to configure it:
>>
>> MaxKeepAliveRequests 10000
>> <IfModule mpm_winnt.c>
>>     ThreadsPerChild 1900
>>     MaxRequestsPerChild 10000
>> </IfModule>
>>
>> LoadModule cache_module modules/mod_cache.so
>>
>> <IfModule mod_cache.c>
>>     CacheForceCompletion 100
>>     CacheDefaultEXPire 3600
>>     CacheMaxExpire 86400
>>     CacheLastModifiedFactor 0.1
>>     LoadModule disk_cache_module modules/mod_disk_cache.so
>>
>>     <IfModule mod_disk_cache.c>
>>         CacheEnable disk /
>>         CacheRoot c:/cacheroot
>>         CacheSize 327680
>>         CacheDirLength 4
>>         CacheDirLevels 5
>>         CacheGcInterval 4
>>     </IfModule>
>>
>>     #LoadModule mem_cache_module modules/mod_mem_cache.so
>>     <IfModule mod_mem_cache.c>
>>         CacheEnable mem /
>>         MCacheSize 8192
>>         MCacheMaxObjectCount 10000
>>         MCacheMinObjectSize 1
>>         MCacheMaxObjectSize 51200
>>     </IfModule>
>> </IfModule>
>>
>> On client, I use ajax technology and XMLHttpRequest  and on server, I
>> use php script.
>> ...
>> header("Cache-Control: public"); // HTTP/1.1
>> header("Expires: " .gmdate ("D, d M Y H:i:s", time() + 60 * 10). " 
>> GMT");
>> header( "Last-Modified: " .gmdate( 'D, d M Y H:i:s' ). " GMT" );
>> echo $response;
>> ....
>> I think apache cache should catch my response produced by PHP. Until
>> now, I do not think there is something wrong in my code or
>> configuration. So I conclude that mod_cache could not catch the
>> responses for XMLHttp requests.
>>
>> Regards,
>>
>> Erica
>>
>>
>>
>


Mime
View raw message