Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在特定页面(index.php)上使用.htaccess强制缓存_Php_.htaccess_Caching - Fatal编程技术网

在特定页面(index.php)上使用.htaccess强制缓存

在特定页面(index.php)上使用.htaccess强制缓存,php,.htaccess,caching,Php,.htaccess,Caching,目前,我使用.htaccess在我的网站上强制使用标准缓存 FileETag MTime Size ExpiresActive on ExpiresDefault "access plus 86400 seconds" 但是我的首页(仅仅是我的domain.com)上的内容变化要频繁得多,我想删除强制缓存,或者专门为该页面将其设置为几分钟。 我几乎不知道.htaccess编码,因此非常感谢您的帮助。谢谢。使用php的header函数删除/添加主页上的标题 <?php $expires =

目前,我使用.htaccess在我的网站上强制使用标准缓存

FileETag MTime Size
ExpiresActive on
ExpiresDefault "access plus 86400 seconds"
但是我的首页(仅仅是我的domain.com)上的内容变化要频繁得多,我想删除强制缓存,或者专门为该页面将其设置为几分钟。
我几乎不知道.htaccess编码,因此非常感谢您的帮助。谢谢。

使用php的
header
函数删除/添加主页上的标题

<?php
$expires = 60*60*5;
header_remove('ETag');
header("Pragma: cache");
header("Cache-Control: max-age=".$expires.", public");
header('Expires: ' . gmdate('D, d M Y H:i:s', time()+$expires) . ' GMT');
?>

像这样使用:

<Files index.php>
  ExpiresDefault "access plus 300 seconds"
</Files>

ExpiresDefault“访问加300秒”

如果您有权访问服务器配置,还可以签出位置以匹配特定位置(即,根据URL而不是最终文件名进行匹配),但是这个不能在内部使用。htaccess

它告诉PHP发送HTTP头,这将导致浏览器将此特定结果缓存5分钟。Maxage应该是
max age
。日期可以格式化为
gmdate('r',…)
谢谢,伙计,这就是我要找的。我确实可以访问服务器配置,但index.php是我唯一需要访问的页面,因此我认为没有其他必要。但是,有没有什么理由使用它更好呢?是的,您可能有重写规则,将所有请求指向同一个PHP文件。在这些情况下,您的文件块将匹配每个请求,而不管它是哪个“页面”。