我希望在网站主脚本的顶部包含Smart PHP Cache图层。它运行良好,但智能缓存还缓存了一些不应缓存的页面(搜索结果,管理区域......)。
我查看了Smart PHP Cache source code,我不确定是否有某种方法可以配置哪些页面应该从缓存中排除,或者如何配置它。
所以,我需要的是一些php代码,它将被插入到网站主脚本的顶部,然后智能PHP缓存代码将首先检查页面是否包含例如:
“/搜索/”
“/管理/”
“/最新/”
“/另一活页/活page.php文件”
然后,如果以上示例中的某些内容在URL中什么都不做,(不包括smart_cache.php并继续使用其他正常代码,那么用户可以看到实时结果),否则如果上面没有任何内容可以包括smart_cache.php。
或者
如果您有更好的知识在Smart PHP Cache内进行修改,以便能够从缓存机制中排除某些URL(或者告诉我如何执行此操作,因为看起来智能PHP缓存的配置中有一些内容可以绕过缓存层,但我不知道如何使用它。
最好的问候。
谢谢你的回答。它工作得很好,我只想问你能不能改变代码来做到这一点:
如果“pos1”(如果URL包含“/ search”),则不是虚假,就像它现在一样
if“pos2”(如果URL包含“/ admin”),而不是虚假,就像它现在一样
如果“pos3”(如果网址包含“/ latest”)包含文件“smart_cache_latest.php”
之后就像现在一样,为任何其他网址添加“smart_cache.php”。
所以实际上只对含有“/ latest”的网址进行更改,这也应该通过包含“smart_cache_latest.php”进行缓存。
最好的问候。
答案 0 :(得分:2)
$currenturl = $_SERVER['REQUEST_URI'];
$pos1 = strpos($currenturl, "/search");
$pos2 = strpos($currenturl, "/admin");
$pos3 = strpos($currenturl, "/latest");
if ($pos1 === false && $pos2 === false){
require '/path/to/smart_cache.php';
} elseif($pos3 == true) {
require '/path/to/smart_cache_latest.php';
}