使用htaccess和modrewrite将整个php输出缓存到静态html
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了使用htaccess和modrewrite将整个php输出缓存到静态html,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1383字,纯文字阅读大概需要2分钟。
内容图文
我有一个Php网站,对于某些页面已经创建了一个完整的输出缓存文件,虽然没有保存为.html,并且仍然从Php发送请求,它错过了具有非常好的性能的静态文件的托管缓存.
缓存文件基于其md5(Url)保存在目录中.
我想知道使用mod_rewrite是否有可能获得类似的结果,但是使用html静态文件,我想我之前看到过类似的东西使用WordPress缓存插件(但当时我没注意太多).
我可以使用什么代替md5()和mod_rewrite来转换整个Url的有效唯一文件名?
我的网址是虚拟路由,非常简单:/ level1 / level2 / level3 /(是一项工作仍在进行中,但我认为使用不超过3个级别,levelN显然是一个例子,可以是任何单词)
为了简化我想要的东西:
mod_rewrite:/cache/unique(Url).html存在吗?加载它
php:/cache/unique(Url).html不存在?创造它
我可以用什么独特的?
解决方法:
是的,你可以做到这一点,我不打算提供整个代码只是想法就足够了.
让我们从.htaccess开始吧
以一种将每个丢失的文件重定向到目录索引的方式为您写入.htaccess.
它可能看起来像这样
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]
现在,如果找不到被调用的页面,您将获得index.php的请求.
可以使用目录结构,而不是使用散列文件名,这样可以更快,更易读.
您可以动态创建目录.
在index.php中
在将数据推回浏览器之前,请确保在变量中全部获取数据.你可以用include函数来做到这一点.
见this page上的例5.
根据您的目录级别保存数据.
$levels = explode('/',<REQUESTED_URI>);
$filename = array_pop($levels);
foreach($levels as $level)
// Create Directory if does not exit
最后,这只是基本的想法,你必须自己弄清楚tweeks和技巧.
内容总结
以上是互联网集市为您收集整理的使用htaccess和modrewrite将整个php输出缓存到静态html全部内容,希望文章能够帮你解决使用htaccess和modrewrite将整个php输出缓存到静态html所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。