I'm twiting

访问统计

free counters

英文Ubuntu安装中文输入法的安装配置

很多人还是喜欢用英文版的系统。原因各种各样啦,有的人是觉的英文描述事物更准确,有的是为了顺便学习点英文。但是作为中国人使用英文系统还是免不了要装和配置中文输入法的。这里介绍以下中文输入法的简单安装和配置,但是还是满实用的!
首先安装scim pinyin和im-switch
apt-get install scim-pinyin im-switch
装完之后还不能用的,要配置一下,这一步很重要:
vim /etc/X11/xinit/xinput.d/scim
将GTK_IM_MODULE=xim和QT_IM_MODULE=xim中的xim修改为scim
设置系统默认的输入法为scim
update-alternatives –install /etc/X11/xinit/xinput.d/all_ALL xinput-all_ALL /etc/X11/xinit/xinput.d/scim 30
im-switch -s scim
重新登录,系统自动开启scim了。使用的时候ctrl+space即可。

适用于Ubuntu(含Debian)系的巨简单Apache虚拟主机配置

假设项目名是my_project,项目目录是/var/www/my_project,项目web访问目录是/var/www/my_project/web_root,虚拟主机域名是my-project.com。
首先在创建站点配置文件:
cd /etc/apache2/sites-available
touch my_project
编辑my_project:
vim my_project
将以下内容填入
<VirtualHost *:80>
ServerName my-project.com
DocumentRoot /var/www/my_project/web_root
</VirtualHost>
这么简单,站点就配置起来了!接下来激活站点
a2ensite my_project
加载站点:
/etc/init.d/apache2 reload
最后修改hosts文件
vim /etc/hosts
加一句:
127.0.0.1 my-project.com
打开浏览器输入my-project.com就可访问 /var/www/my_project/web_root 了。

UTF8环境下ubuntu歌曲id3tag乱码

ubuntu经过这个多年的发展作为桌面系统已经非常好用了。不过其中文支持还是不够理想。例如下载的歌曲放到播放器时就有乱码的问题。这个问题是由于歌曲的id3tag是GBK编码。而系统读取的时候是当成UTF8编码读的,读出来当然是乱码。现在有个完美的解决方案就是将歌曲的id3tag编码转成UTF8的。
首先我们要安装python-mutagen这个包:
aptitude install python-mutagen
然后切换到存放音乐的目录,执行转换:
mid3iconv -e GBK *.mp3
这样所有音乐的id3tag都转成utf8的了!现在打开你的播放器,看看音乐列表已经正常显示中文了。;-)

cakephp的counterCache功能

场景:有两张表cabinet(机柜)表和server表。其中cabinet有一个字段叫server_count,用于记录有多少服务器在每个机柜上。
逻辑:每次添加或减少server,我们都需要手动更新server_count的值。通过counterCache,我们可以让cake代劳。只需要在定义我们的server model的时候加上
var $belongsTo = array(
‘Cabinet’ => array(’counterCache’ => true)
);
如此,当我们新增或减少server,cake将自动的修改server_count的值。

那一夜……

5月18日晚间,突然无法上网。本能的ping各大网站,都不通…… 后来试着ping几台外网服务器ip地址。能ping通,而且反应很快。推断是DNS解析出现问题。不过ping dns ip地址也是通的。当时猜想DNS的解析服务应该坏了,嘲笑一下XX部被攻击。不过当时觉得应该是区域事件。没想到后来看到:工信部:近日断网祸起暴风影音 。呃……这……偶还是不说啥了……

用cakephp创建复杂查询

例如这样:
$conditions['or'][] = array( “Group.group_name LIKE” => “%{$keyWord}%”);
$conditions['or'][] = array( “Group.comment LIKE” => “%{$keyWord}%”);
这两个条件就是or的关系。当然可以再加一个and的数组。通过这种方式去创建复杂查询。

cakephp分页功能(paginator)

在controller里定义属性:
var $paginate = array(
‘Group’ => array(
‘limit’ => 10
));
在action抓数据的时候用:
$groups = $this->paginate( ‘Group’, $conditions );
$this->set( ‘groups’, $groups );
在需要用到分页的地方加上:
<?php echo $this->renderElement(’pagination’); ?>
然后cake会去找pagination.ctp这个element的。贴一下我的分页:
<form action=”<?php echo preg_replace(’/page:(\d+)/’, ”, $paginator->url()); ?>”>
<table width=”95%” border=”0″ align=”center” cellpadding=”8″ cellspacing=”0″>
<tr>
<td width=”65%” colspan=”7″ align=”center” bgcolor=”#FFFFFF” style=”font-size:14px;”>
当前页<span class=”font_orange”><?php echo  $paginator->current(); ?></span>
总页数<span class=”font_blue”><?php echo $paginator->counter(array( ‘format’ => ‘%pages%’ )); ?></span>
<?php echo $paginator->first(’首页’); ?>
<?php echo $paginator->prev( ‘上一页’ ); ?>
<?php [...]

国产无人机呃……

这东西怎么觉得有点山寨飞碟的味道呢……