![](/img/trans.png)
[英].htaccess that redirects to index.html, or to index.php if there are parameters
[英].htaccess way to serve index.html/index.php based on timestamp
假设我有一个简单的脚本( index.php
),它可以提取一个远程页面,从中收集数据,进行一些格式化并保存一个新页面。 然后,根据通常的缓存/时间戳控件将此新页面( index.html
)提供给客户端。
因此,从本质上讲,它看起来像是简化了:
<?
if ( filemtime('index.html')+3600 > strtotime('now') ) {
// collect_remote_stuff();
// save_new_index_html();
} else {
echo file_get_contents('index.html');
}
?>
很好,可以做到。 我不喜欢的是,对于此简单的时间戳检查,必须在每个请求上运行php解释器。 不要误会我的意思,这不是一个严重的性能问题,我只是不喜欢这个原理。
因此,我当时正在考虑使用一些智能的.htaccess
脚本来进行时间戳检查。 我的梦想成就如下:
检查index.html是否早于一小时。 如果是,请调用index.php 。 如果不是,请提供index.html 。
作为Apache配置的新手,我首先进行了谷歌搜索,然后深入研究mod_expires
。 那并没有完全满足我的要求,但这是一个好的开始-我可以设置相对于文件修改的最后一天的到期时间。 但这并不满足index.html / index.php的条件,仅满足“如果文件较旧,则服务一个新文件”的情况。 我还阅读了有关Apache> 2.4的if / else的信息,但实际上并没有真正看到使用mod_expires来说“如果文件早于一个小时,请执行操作”。
我不需要任何解决方法或其他类型的缓存/服务静态文件。 出于好奇,我对这种情况感到困惑。
您身边的任何建议都表示赞赏(并感谢您的宝贵时间)。
无论访问者是否访问您的网站,我都会设置一个每小时运行一次的Cron Job。
http://www.thesitewizard.com/general/set-cron-job.shtml
0 * * * * wget -O - -q http://www.website.com/cron.php
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.