站长百科 | 数字化技能提升教程 数字化时代生存宝典
首页
数字化百科
电子书
建站程序
开发
服务器
办公软件
开发教程
服务器教程
软件使用教程
运营教程
热门电子书
WordPress教程
宝塔面板教程
CSS教程
Shopify教程
导航
程序频道
推广频道
网赚频道
人物频道
网站程序
网页制作
云计算
服务器
CMS
论坛
网店
虚拟主机
cPanel
网址导航
WIKI使用导航
WIKI首页
最新资讯
网站程序
站长人物
页面分类
使用帮助
编辑测试
创建条目
网站地图
站长百科导航
站长百科
主机侦探
IDCtalk云说
跨境电商导航
WordPress啦
站长专题
网站推广
网站程序
网站赚钱
虚拟主机
cPanel
网址导航专题
云计算
微博营销
虚拟主机管理系统
开放平台
WIKI程序与应用
美国十大主机
编辑“
ThinkPHP开发指南-缓存-静态缓存
”
人物百科
|
营销百科
|
网赚百科
|
站长工具
|
网站程序
|
域名主机
|
互联网公司
|
分类索引
跳转至:
导航
、
搜索
警告:
您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您
登录
或
创建
一个账户,您的编辑将归属于您的用户名,且将享受其他好处。
反垃圾检查。
不要
加入这个!
<span style="border:1px solid #000; float:right; text-align:center; padding:6px;"><strong>导航:</strong>[[ThinkPHP使用手册|返回上一页]]</span> <div style="clear:both;"></div> [[ThinkPHP]]内置了静态缓存的功能,并且支持静态缓存的规则定义。 要使用静态缓存功能,需要开启HTML_CACHE_ON 参数,并且在项目配置目录下面增加静态缓存规则文件 htmls.php,两者缺一不可。否则静态缓存不会生效。静态规则文件的定义方式如下: '''[[PHP]]代码''' <pre> return array( 'ActionName'=>array('静态规则', '静态缓存有效期', '附加规则'), 'ModuleName:ActionName'=>array('静态规则', '静态缓存有效期', '附加规则'), '*'=>array('静态规则', '静态缓存有效期', '附加规则'), …更多操作的静态规则 ) </pre> 静态缓存文件的根目录在HTML_PATH 定义的路径下面,并且只有定义了静态规则的操作才会进行静态缓存,注意,静态规则的定义有三种方式, *第一种是定义全局的操作静态规则,例如定义所有的read操作的静态规则为 '''PHP代码''' <pre> 'read'=>array('{id}','60') </pre> 其中,{id} 表示取$_GET['id'] 为静态缓存文件名,第二个参数表示缓存60秒 *第二种是定义某个模块的操作的静态规则,例如,我们需要定义[[Blog]][[模块]]的read操作进行静态缓存 '''PHP代码''' <pre> 'Blog:read'=>array('{id}',-1) </pre> *第三种方式是定义全局的静态缓存规则,这个属于特殊情况下的使用,任何模块的操作都适用,'''例如''' '''PHP代码''' <pre> '*'=>array('{$_SERVER.REQUEST_URI|md5}'), 根据当前的URL进行缓存 </pre> 静态规则的写法可以包括以下情况 *使用系统变量 包括 _GET _REQUEST _SERVER _SESSION _COOKIE '''格式''':{$_×××|function} '''例如''':PHP代码 <pre> {$_GET.name} {$_SERVER. REQUEST_URI} </pre> *用[[框架]]特定的变量 '''例如''':PHP代码 <pre> {:module} {:action} 表示当前模块名和操作名 </pre> *使用_GET变量 '''PHP代码''' <pre> {var|function} </pre> 也就是说 {id} 其实等效于 {$_GET.id} *直接使用函数{|function} '''例如''':PHP代码 <pre> {|time} </pre> *支持混合定义,例如我们可以定义一个静态规则为: '''PHP代码''' <pre> '{id},{name|md5}' </pre> 在{}之外的字符作为字符串对待,如果包含有”/”,会自动创建目录。例如,定义下面的静态规则: '''PHP代码''' <pre> {:module}/{:action}_{id} </pre> 则会在静态目录下面创建模块名称的子目录,然后写入操作名_id.shtml 文件。静态有效时间 单位为秒如果不定义,则会获取配置参数HTML_CACHE_TIME 的设置值.附加规则通常用于对静态规则进行函数运算. '''例如''':PHP代码 <pre> 'read'=>array('Think{id},{name}','60', 'md5') </pre> 翻译后的静态规则是 md5('Think'.$_GET['id']. ', '.$_GET['name']);和静态缓存相关的配置参数包括: *HTML_CACHE_ON 是否开启静态缓存功能 *HTML_FILE_SUFFIX 静态文件后缀 惯例配置的值是 .shtml *HTML_CACHE_TIME 默认的静态缓存有效期 默认60秒 可以在静态规则定义覆盖 *HTML_READ_TYPE 页面静态化后读取的规则 一种是直接读取缓存文件输出(readfile方式HTML_READ_TYPE 为0) 这是系统默认的方式,属于隐含静态化,用户看到的[[URL]]地址是没有变化的。另外一种方式是重定向到静态文件的方式(HTML_READ_TYPE为1),这种方式下面,用户可以看到URL的地址属于静态页面地址,比较直观。 [[category:ThinkPHP]]
摘要:
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅
Wordpress-mediawiki:版权
的细节)。
未经许可,请勿提交受版权保护的作品!
取消
编辑帮助
(在新窗口中打开)