易软博客->技术笔记 http://blog.1zsoft.com 易软开源 2005-2007 2007-02-10 21:46 +0800 推荐安装的几个firefox插件 Author: wwccss

下面这几个插件都是用来调试网页时用的。

1. view source chart: 可以非常完美将任何一个网页的源代码优雅的展现出来。哪怕是js代码运行之后write出来的东东。

2. jsview: 一个网页所调用的外部js和css全部包括会暴露在你的面前。

3. live http headers: 可以查看每一次请求,你的浏览器和服务器之间都说了哪些悄悄话,做个明白人:)。 还有推荐使用的就是firefox自己带的错误控制台。任何样式表错误和js错误都可以在这个控制台看到。是我们调试代码的一个很好的工具。 ]]>
http://blog.1zsoft.com/node78380.html http://blog.1zsoft.com/node78380.html 技术笔记 2007-02-10 21:46 +0800
如何快速启动应用程序 Author: wwccss

这是2004年我在西线工作时整理的小技巧:

目标: 可以快速的启动要运行的程序,而不是在一大堆的菜单里面进行查找。

方式

建立各种常见应用程序的快捷方式。

将带有中文名称的快捷方式名称改为英文的名称,比如将"快捷方式word"改为"word"

这时所建立的快捷方式文件的扩展名时lnk,系统默认的不会执行这些文件,除非你将".lnk"也写上。但这不符合我们“快速启动应用程序” 的初衷。所以我们需要让系统执行lnk文件。 右键单击“我的电脑”=》“属性”=》“高级”=》“环境变量” 需要修改其中的两项:一项为PathExt,在这一个变量的后面增加lnk文件类型。 另外一个需要修改的地方就是系统的路径变量,将你的快捷方式存放的路径写入Path变量中去。 ]]>
http://blog.1zsoft.com/node78379.html http://blog.1zsoft.com/node78379.html 技术笔记 2007-01-02 09:31 +0800
windows下面vim编辑utf-8的文件乱码 Author: wwccss

最近在windows下面一直使用gvim来编辑文件,慢慢习惯了之后,感觉vim还是非常好用的一个编辑器。

我原来设置的vimrc里面是可以支持gbk和utf8的。但今天我在编辑一个文件的时候,设置了set encoding=utf8。然后再打开utf8文件后,就无法自动显示utf-8的文件了,都是乱码。必须要自己手工设置一下才可以。不爽。 一开始怀疑是自己将vimrc文件修改过了,但自己检查之后没有问题。后来又重新安装vim,还是乱码。

后来经过仔细观察,发现在用户目录下面有一个.gtkrc的文件,心想是不是这个文件在作怪呢?于是删之,重新启动vim,一切ok. 应该是vim使用了gtk的库,所以gtk方面的一些环境设置也会影响它。:) ]]>
http://blog.1zsoft.com/node78378.html http://blog.1zsoft.com/node78378.html 技术笔记 2006-12-28 22:27 +0800
我自己使用的一套样式表 Author: wwccss

这是我在做签名网站的时候使用的一套样式表,抛砖引玉,供大家参考,实际效果请查看:

/* Global setting. */

body{margin: 0px; padding: 0px; font-family: Tahoma; font-size: 12px; background-color: #FFF; }

table, input, textarea{font-family:Tahoma; font-size:12px;}

a, a:visited{text-decoration: none;}

/*a:hover {color:#FFF;}*/

form{margin:0}

label{display:block; margin:0; padding:0 20px 0 0; text-align:right; clear:none}

label input {margin:2px; padding:0;}

/* Special box area. */

.note {font-size:11px; color:red} /* Used in to show the help info for a item for example, Register.php. */ ]]>
http://blog.1zsoft.com/node78377.html http://blog.1zsoft.com/node78377.html 技术笔记 2007-02-10 20:53 +0800
win2000下面安装apache2.2+php5.2+mysql Author: wwccss

win2000下面安装apache2.2+php5.2+mysql需要注意的几个地方:

1. apache的配置文件里面的路径格式: PHPIniDir "C:/PHP" LoadModule php5_module "C:/PHP/php5apache2_2.dll" 注意,是"/",而不是""。

2. php.ini文件存放在c:php目录下面。 需要修改extension_dir extension_dir = "c:\php\ext" 注意,是"\",而不是"/"或者""

3. 修改环境变量,将c:php加入到path变量中。重启机器。 ]]>
http://blog.1zsoft.com/node78375.html http://blog.1zsoft.com/node78375.html 技术笔记 2007-01-02 09:33 +0800
解决FreeBSD6.2下面subversion的Berkeley DB error错误 Author: wwccss

在FreeBSD6.2下面配置了subversion+http之后,通过浏览器访问,报告下面的错误:

Internal error: Berkeley DB error for filesystem '/var/svn' while opening environment:\n

2230 [Sat Dec 01 20:19:41 2007] [error] [client 123.116.144.57] Could not fetch resource information. [500, #0]

2231 [Sat Dec 01 20:19:41 2007] [error] [client 123.116.144.57] Could not open the requested SVN filesystem [500, #1600

通过查找资料,发现可能是权限的问题。

在FreeBSD下面,apache2.2是以www用户身份运行的,它需要对svn的目录有读写的权限,于是就把/var/svn目录的属主改成www,再次访问,就没有问题了。  ]]>
http://blog.1zsoft.com/node586.html http://blog.1zsoft.com/node586.html 技术笔记 2007-12-02 19:28 +0800
配置FreeBSD6.2过程记录 Author: 王春生

一、安装基本的系统:

首先是最小化安装,可以通过ssh进行登录,远程控制就达到目的了。

二、安装基本的工具:

通过package安装vim-lite, subversion, curl, wget,lynx这几个必需的工具。

如果你的网速比较慢,可以设置PACAGEROOT=ftp://ftp.cn.freebsd.org/就可以了。然后通过pkg_add -r命令安装。

三、安装ports:

按照FreeBSD的使用手册上面讲的,同步一份port到你的机器。如果网速比较慢,也可以指定一个比较快的镜像。 ]]>
http://blog.1zsoft.com/node566.html http://blog.1zsoft.com/node566.html 技术笔记 2007-11-26 21:16 +0800
跨站之间session共享的机制 Author: chunsheng.wang

周末在搞几个网站之间的统一用户管理功能。发现了一个很棘手的问题,就是如果几个网站的域名不相同,session数据如何共享?

如果几个域名属于同一个域名下面的二级域名,还好办一些,可以通过设置session的domain。但如果几个网站域名压根就不相同,就比较麻烦了。

还是翻php的参考手册,后面发现有一个函数session_id,可以用来重新设置当前session的id。 于是问题就简单了。

以易软网站 + 签名网站 举例:

1. 登录都是到http://www.1zsoft.com/register.php。 ]]>
http://blog.1zsoft.com/node468.html http://blog.1zsoft.com/node468.html 技术笔记 2007-09-26 13:25 +0800
在AS4下面安装apache2.2 + php 5.2.4 Author: chunsheng.wang

一、安装apache2.2

1. 下载最新的apache2..2 http://www.apache.org 

2. 配置参数:

./configure

--prefix=/usr/local/httpd2 \

--enable-so \

--disable-include \

--enable-expires \

--enable-usertrack \

--enable-unique-id \

--disable-userdir \

--enable-rewrite

说明:  

--enable-so: 激活动态加载,这样可以以so的方式来编译php

--disable-include \ 不需要服务器端包含。

--enable-expires \ 可以动态设置每一个文件的过期时间。

--enable-usertrack \ 用于用户的跟踪。 ]]>
http://blog.1zsoft.com/node465.html http://blog.1zsoft.com/node465.html 技术笔记 2007-09-22 22:10 +0800
EasyCMS的首页摘要代码 Author: chunsheng.wang

博客列表页面需要显示一段摘要。但在截取摘要的时候,遇到了很多的问题。

1. 单纯的按照字数截取,会出现半截话的问题。

2. 在截取的时候,还要注意html标签的闭合问题。

可以解决的方案就是在添加文章的时候,添加一个特殊的分割符,比如drupal就是使用这样的方式来手工来决定何处作为截取。但这样不方便。

下面是我的EasyCMS的截取代码,与大家分享。 ]]>
http://blog.1zsoft.com/node459.html http://blog.1zsoft.com/node459.html 技术笔记 2007-08-29 21:11 +0800
win2000下面安装apache2.2+php5.2+mysql Author: wwccss

win2000下面安装apache2.2+php5.2+mysql需要注意的几个地方:

1. apache的配置文件里面的路径格式: PHPIniDir "C:/PHP" LoadModule php5_module "C:/PHP/php5apache2_2.dll" 注意,是"/",而不是""。

2. php.ini文件存放在c:php目录下面。 需要修改extension_dir extension_dir = "c:\php\ext" 注意,是"\",而不是"/"或者""

3. 修改环境变量,将c:php加入到path变量中。重启机器。 ]]>
http://blog.1zsoft.com/node350.html http://blog.1zsoft.com/node350.html 技术笔记 2006-12-11 05:26 +0800
站点风格调整 Author: wwccss

本站drupal使用的风格是fancy。它原来默认的样式不太适合中文,以前一直没有时间来改它,今天终于找了写时间改了一下:

1. 增加了google的广告。

2. 调整了文章标题的字体大小和颜色。

3. 将提交者和分类链接放在文章的下部。

4. 调整了node的表现形式,增加了一条边框。

5. 调整了footer信息的字体大小和布局方式。

6. 修改右边连接,将粗体去掉。

以上的修改都是通过修改theme/fancy/style.css完成的。 ]]>
http://blog.1zsoft.com/node346.html http://blog.1zsoft.com/node346.html 技术笔记 2006-10-02 19:20 +0800
关于Bash编程的若干文档 Author: wwccss

最近因工作需要,需要学习Bash。在网上搜集了一些资料,记录如下:

1. Bash手册:http://www.gnu.org/software/bash/manual/bashref.html

2. Bash高级编程手册:http://tldp.org/LDP/abs/html/

3. 中文参考手册:http://cmpp.linuxforum.net/ ]]>
http://blog.1zsoft.com/node345.html http://blog.1zsoft.com/node345.html 技术笔记 2006-09-30 06:10 +0800
关于框架和代码生成器的思考 Author: wwccss

最近一段时间以来关于PHP开发框架的讨论非常多。在超越论坛上面有很多的网友在讨论国外的各种各样的框架,也有一些朋友在开发自己的框架。相关的资料,大家可以访问超越论坛:club.phpe.net

在开发 PHPGEN的过程中,我也研究过其中的一些框架,但最后选择了是做一个代码生成器,而不是一个框架。框架有他的好处,可以封装很多的事情,你需要关注其中一小部分的事情就可以了。但框架,顾名思义,也会有它的局限。如果一个框架设计不好,在处理一些比较复杂或者特性的事情时,框架就会影响开发。同时框架还有另外一个问题,就是学习的成本。一个好的框架会有比较丰富的文档以及实例,可以很快上手。但如果一个框架没有太多的文档,或者文档更新不及时,学习成本就会比较高。还有一个问题就是开发人员的习惯。习惯这种东西是很难改变的。但框架的东西就是要改变一个开发人员长期以来养成的习惯,这种改变是很困难的。 ]]>
http://blog.1zsoft.com/node342.html http://blog.1zsoft.com/node342.html 技术笔记 2006-09-13 20:59 +0800
FreeBSD配置笔记--设置sudo Author: wwccss

sudo是一种比较安全权限分配方案。如果你想让某个用户执行root账号的权限,但又不想让他直接成为root账号,可以使用sudo来解决这个问题。

1. 安装sudo cd /usr/ports/security/sudo; make install clean;

2. 添加sudoers 使用visudo命令来编辑/usr/local/etc/sudoers文件。

%wheel ALL=(ALL) NOPASSWD: ALL

这样设置就是允许wheel组的用户可以执行任何命令而不需要密码。:) ]]>
http://blog.1zsoft.com/node340.html http://blog.1zsoft.com/node340.html 技术笔记 2006-09-02 20:34 +0800
FreeBSD配置笔记--修改登录以后的提示信息,注销若干终端 Author: wwccss

1. FreeBSD默认安装之后,登录的提示是一大段帮助文字,看过几次之后也就熟悉了。可以通过修改/etc/motd这个文件来改成你所希望的文字。

2. 可以通过修改/etc/ttys文件来禁止若干终端连接数量。如果你是通过远程ssh来连接的话,可以将其中不用的终端关掉,设成off。 ]]>
http://blog.1zsoft.com/node339.html http://blog.1zsoft.com/node339.html 技术笔记 2006-09-02 20:12 +0800
FreeBSD配置笔记--让root账号可以远程登录 Author: wwccss

Freebsd默认安装之后,默认是禁止root账号直接ssh登录的。可以通过修改/etc/ssh/sshd_config文件,将其中的PermitRootLogin改成yes,然后重新启动ssh服务就可以了。/etc/rc.d/sshd restart ]]>
http://blog.1zsoft.com/node338.html http://blog.1zsoft.com/node338.html 技术笔记 2006-09-02 20:06 +0800
FreeBSD配置笔记--让普通用户可以使用bash Author: wwccss

Freebsd默认安装之后用户的shell是sh,平时都已经习惯了使用bash。通过下面的步骤可以配置用户来使用bash作为shell。

1. 安装bash。 cd /usr/ports/shells/bash; make install clean 这样安装完之后,bash会被安装在/usr/local/bin/目录下面。

2. 在/bin目录下面做一个符号连接。 ln -f /usr/local/bin/bash /bin

3. 修改 /etc/shells文件,将bash增加进去,这样在添加用户的时候就可以指定使用bash作为shell了。否则的话,会警告pwd_mkdb: warning, unknown root shell

4. 如果已经添加过的用户,可以使用chsh命令来修改默认的shell. ]]>
http://blog.1zsoft.com/node337.html http://blog.1zsoft.com/node337.html 技术笔记 2006-09-02 20:02 +0800
愚人节更换外观主题 Author: wwccss

昨天在单位配置内部系统的时候,发现了一个比较好看的风格,叫做fancy,就装了一下,今天把博客的站点也换成它了。

修改过程如下:

1. 下载phptemplate引擎,将其解压缩到thems/engine目录下面即可。

2. 下载fancy模板,将其解压缩到thems目录下面即可。

3. 进入后台,主题管理, 将fancy设为默认风格。

4. 设置fancy风格,设置主连接,次链接。 ]]>
http://blog.1zsoft.com/node316.html http://blog.1zsoft.com/node316.html 技术笔记 2006-04-02 00:45 +0800
不知道是不是ie的bug? Author: wwccss

今天在写程序的时候,发现了一个问题,就是body标签之后的第一个div标签会有一行空白,即使你设置了body的topmargin为0,div的margin, padding都为零,也会有一个空白。
其代码如下:


test

同样的代码在firefox下面则没有问题。可能是IE对css box的解释有点问题吧。后来将div的display设成inline就ok了。 ]]>
http://blog.1zsoft.com/node289.html http://blog.1zsoft.com/node289.html 技术笔记 2006-02-02 05:04 +0800
如何使用sftp自动备份 Author: wwccss

站长的一个重要工作就是备份网站的数据--程序、数据库、上传的附件以及各种各样的配置文件等。一旦服务器出现问题,可以通过备份的文件恢复。其重要性不用多说。

那么如何来做备份呢?我了解的有以下一些方式:

1. raid: raid也许不应该算做一种备份方式,应该是一种存储方案,呵呵。不过对一般的站长来讲做raid还是有些代价。如果钱比较多,还是做raid比较可靠一点。

2. 单机双硬盘备份。其中一个硬盘为工作硬盘,一个硬盘为备份硬盘,将备份数据备份到备份硬盘上面。 ]]>
http://blog.1zsoft.com/node281.html http://blog.1zsoft.com/node281.html 技术笔记 2006-01-10 16:25 +0800
xml? ini? php Author: wwccss

正在做的项目遇到了一个问题,使用什么格式来做配置文件。以前在单个项目的时候,都是直接使用php代码做配置文件,但现在的这个项目用户可以修改配置文件,选择什么样的格式成了一个大问题。 首先我想到的是xml文件。xml文件表现力比较丰富,可以构造出任意结构的配置参数来,用户编辑起来也比较方便。 但存在一个问题是程序分析配置文件就比较麻烦了。我需要将xml文件转换成数组,还需要将数组再次转成xml文件。我前前后后试过很多的类库,有的要么就是xml->array->xml之后,两头的xml结构就不一样了,有的还保持一样,但是分析出来的数组结畸型,程序出来起来很麻烦。 后来我又想到了ini文件,linux系统下面绝大部分的参数配置文件都是ini格式的。php在分析ini文件的时候也还比较方便,有一个函数可以直接分析出来parse_ini_file()。但ini文件的表现力比较差,一般二级结构可以,三级,四级以上就比较麻烦了。 最后我还是选择了直接使用php代码来做参数文件。 ]]>
http://blog.1zsoft.com/node269.html http://blog.1zsoft.com/node269.html 技术笔记 2005-12-27 16:04 +0800
在VIM中使用空格space代替TAB Author: wwccss

修改home目录下面的.vimrc文件, 增加下面的几行:

set expandtab # 使用space代替tab.

set tabstop=4 # 四个空格。

set shiftwidth=4 # 自动缩进的宽度。

几篇比较有意思的文章:http://www.vim.org/tips/tip.php?tip_id=12 http://www.adamspiers.org/computing/why_no_tabs.html http://www.adamspiers.org/computing/why_no_tabs.html ]]>
http://blog.1zsoft.com/node256.html http://blog.1zsoft.com/node256.html 技术笔记 2005-12-14 16:04 +0800
在freebsd下面使用bash Author: wwccss

freebsd下面提供的shell默认是csh,在linux下面习惯了bash,感觉很不舒服。下面是几项改动:

1. 更改用户的shell为bash: 通过chsh命令来更改。注意,如果通过ports方式安装的bash,其目录在/usr/local/bin/bash

2. 修改.bash_profile文件,增加下面的选项:

export LANG="zh_CN.UTF-8"

export LC_LANG="zh_CN.UTF-8"

export XMODIFIERS="@im=fcitx"

alias ls='ls -A -G'

这样打开的应用程序会默认使用中文。 ]]>
http://blog.1zsoft.com/node246.html http://blog.1zsoft.com/node246.html 技术笔记 2005-12-02 19:00 +0800
Freebsd下面firefox的配置 Author: wwccss

安装完firefox后之后,发现有的网站字体比较正常,有的网站字体不正常。曾经自己试着指定字体,效果也不太理想。

通过查阅资料,发现在fonts.conf文件里面对一个系列的字体显示顺序有定义。知道了这个就非常简单了。修改你的fonts.conf文件,一般在/usr/X11R6/etc/fonts/fonts.conf。将tahoma和simsun放在前面就可以了。 ]]>
http://blog.1zsoft.com/node239.html http://blog.1zsoft.com/node239.html 技术笔记 2005-12-02 00:00 +0800
让abiword支持宋体 Author: wwccss

abiword安装完之后,无法输入中文。在字体选择框里面,看不到simsun的字体。abiword的包有一个ttfadmin和ttftool的脚本。通过查看ttftool的源文件,发现它现在不知持ttc格式的字体文件。从windows下面拷贝过去的字体文件是simsun.ttc,abiword无法识别这个字体。

在网上搜了一下,发现有一个工具叫做ttctool,可以将ttc格式的字体文件分解成ttf。然后将分解出的simsun.ttf拷贝到系统到目录下面,就可以了。 ]]>
http://blog.1zsoft.com/node238.html http://blog.1zsoft.com/node238.html 技术笔记 2005-12-01 23:55 +0800
FreeBSD安装步骤 Author: wwccss

1. 基本系统的安装:

从http://www.freebsd.org上面下载最新的稳定发行版,现在最新的版本是6.0,一共两个iso文件,下载之后刻盘。然后从光盘起动机器,安装基本的系统就可以了。

这个地方需要注意的是在安装过程中,如果选择安装其他的ports,将是一件比较痛苦的事情,由于包文件在不同的光盘上,所以要频繁的切换光盘。所以可以安装最小系统,然后通过网络进行安装。

2. 安装桌面系统。

建议阅读FreeBSD的中文手册,上面有比较详细的步骤来介绍如何安装桌面系统。 ]]>
http://blog.1zsoft.com/node237.html http://blog.1zsoft.com/node237.html 技术笔记 2005-12-01 23:42 +0800
关于wiki的疑惑 Author: wwccss

今天下载了一个wiki的程序,开始研究这个比较变态的东西,呵呵。

程序安装非常的简单,有安装向导,几步就可以完成。

但安装完之后,一头雾水,不知道该如何使用。

看了几个比较大的wiki的站点,也是一头雾水,看了一些帮助,不解的地方越来越多,希望有wiki高手可以解惑。

1. wiki所宣称的一个地方就是语法简单,使用者不需要使用html语法,就可以创建页面。可是他的wiki语法也比较怪异,我想很多网民对ubb语法的接受程度应该远远高于wiki的语法。 ]]>
http://blog.1zsoft.com/node208.html http://blog.1zsoft.com/node208.html 技术笔记 2005-10-07 21:13 +0800
本站换成了slash风格 Author: wwccss

看腻了原来goofy风格,今天跑到drupal的网站上面,几乎将所有的风格都下载了下来。一个一个的试用,最终选中了slash风格。

slash风格提供了四套配色方案,深红,蓝色,绿色和黑色。其默认方案是深红。本站的现在使用的是蓝色作为默认风格,并修改其中nodetitle和nodecontent的宽度,字体大小,还修改了breadcrumb样式的字体大小和样式。

将页面布局改成了现在比较流行的右宽左窄两列布局,这样界面更有阅读性。希望大家能够喜欢。 ]]>
http://blog.1zsoft.com/node205.html http://blog.1zsoft.com/node205.html 技术笔记 2005-10-04 05:51 +0800
今天drupal升级到了4.6.3 Author: wwccss

今天访问drupal的官方网站,发现drupal4.6.3已经推出了。这是一个修订版本,修正了许多的补丁,同时修正了xml-rpc的一个漏洞:

The Drupal project has released version 4.6.3 of its open-source content management platform. Drupal 4.6.3 is a maintenance release that fixes problems reported using the bug tracking system. Drupal 4.6.3 also fixes a new security vulnerability in the third-party XML-RPC library that Drupal ships with. Since the same bug is also present in the Drupal 4.5 series, Drupal 4.5.5 is released as well. If you cannot upgrade at once, we strongly suggest that you remove the xmlrpc.php file from your Drupal installation's root directory. The xmlrpc.php file is used only for Drupal to receive XML-RPC calls. ]]>
http://blog.1zsoft.com/node152.html http://blog.1zsoft.com/node152.html 技术笔记 2005-08-20 19:46 +0800