yii_1_1_17_14-15(前台与伪静态与路由与缓存技术使用-2016-2-13)
yii_1_1_17_14-15(前台与伪静态与路由与缓存技术使用-2016-2-13)
wsy940822 发表于2年前
yii_1_1_17_14-15(前台与伪静态与路由与缓存技术使用-2016-2-13)
  • 发表于 2年前
  • 阅读 26
  • 收藏 1
  • 点赞 1
  • 评论 0

腾讯云 学生专属云服务套餐 10元起购>>>   

1.隐藏单入口index.php

(1).保证apache配置文件的http.conf里的LoadModule rewrite_module
	modules/mod_rewrite.sp 开启(去掉#脚本注释)
	
(2).将相对应目录的AllowOverride改为ALL

(3).在根目录下,即在index.php统计目录下新建.htaccess
	另存为,保存类型选择为所有文件,文件名为.htaccess
	里面的内容:
	
	RewriteEngine on
	# if a directory or a file exists, use it directly
	RewriteCond %{REQUEST_FILENAME} !-f
	RewriteCond %{REQUEST_FILENAME} !-d
	# otherwise forward it to index.php
	RewriteRule . index.php

2.路由

config里面的main.php->urlManager

'urlManager'=>array(
	'urlFormat' => 'path',
	'showScriptName' => false,//可以去掉index.php
	'rules' => array(
		'index.html' => array('index'),
		'a/<aid:\d+>'=> array('article/index','urlSuffix'=>'.html'),
		'c/<cid:\d+>'=> array('category/index','urlSuffix'=>'.html'),
	)
)

3.开启缓存

main.php components中配置缓存

'cache'	=> array(
	'class' => 'system.caching.CFileCache'
)

也就是framework/caching/CFileCache.php

yii框架有很多种缓存供使用.

片段缓存

<?php if($this->beginCache($id,array('duration'=>1)));?>
	缓存内容
<?php $this->endCache();endif;?>

duration 时间,以秒为单位

整页缓存(控制器中)

public function filters(){
	return array(
		array(
			'system.web.widgets.COutputCache + index',
			'duration' => 30,
			
			//'varyByParam' => array('aid')//通过aid来区分不同的文章的缓存
		)
	)	
}

数据缓存

$value = Yii::app()->cache->get($id);
if($value == false){
	Yii::app()->cache->set($id,$value,时间秒);
}
共有 人打赏支持
粉丝 27
博文 63
码字总数 24407
×
wsy940822
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: