parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Cache

dRmx 15.09.2003 01:12

@auto[] 
$connect_string[mysql://root@localhost/bd]

$request[$request:uri]
$qs[$request:query]

$default_cache_time(3600)

^if(
	$env:REQUEST_METHOD eq "POST"
	|| ^env:REMOTE_ADDR.match[^^192\.168][]
){
	$is_disable_cache(1)
}{
	$is_disable_cache(0)
}

^if($is_disable_cache){
	$cache_time(0)
	$cache_key[dummy]
}{

	$cache_time(^cache_time.int($default_cache_time))

	$qrepl[^table::create[nameless]{?	&&^#0Atemp=aaa	&&}]

	$qs[^qs.replace[$qrepl]]
	$qs[^qs.match[&{2,}][g]{}]

	$uri_parts[^request.split[?][hl]]

	$cache_key[$uri_parts.0^if(def $qs){$t[^math:crypt[$qs;^$apr1^$]]$t[^t.match[[/\\.]][g]{_}]^taint[^t.mid(8)]}_${MAIN:platform}_$MAIN:browser]
}

@my_cache[body][cacheFile]
$MAIN:wrongCache(0)
$cacheFile[$DB_HOME/$cache_key]
^cache[$cacheFile]($cache_time){
	$body
}
^if($MAIN:wrongCache && -f $cacheFile){
	^file:delete[$cacheFile]
}

@location[target_url]
$MAIN:wrongCache(1)
$response:location[$target_url]

@main[]
^my_cache{
	^rem{^header[]}
 	^rem{^body[]}
	^rem{^footer[]}
}
При попытке загрузить страницу — пусто.