<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Looki&#039;s Blog &#187; 学习笔记</title>
	<atom:link href="http://looki.cn/category/%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/feed" rel="self" type="application/rss+xml" />
	<link>http://looki.cn</link>
	<description>Good Good Study,Day Day Up...</description>
	<lastBuildDate>Wed, 10 Nov 2010 05:02:31 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>在centos+nginx上部署通达OA2010</title>
		<link>http://looki.cn/376.html</link>
		<comments>http://looki.cn/376.html#comments</comments>
		<pubDate>Wed, 10 Nov 2010 03:36:00 +0000</pubDate>
		<dc:creator>Looki</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[LNMP]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[通达OA]]></category>

		<guid isPermaLink="false">http://looki.cn/376.html</guid>
		<description><![CDATA[去年写过一篇《将通达OA2009转移至LNMP平台》，如今通达2010版已经出来好几个月了，趁着这几天有些闲工夫，再次试验了一下，顺便也把我的测试机平台升级至centos5.5+nginx0.8.53+mysql5.0.91，部署过程大致和通达OA2009相同，这里就只记录一些新的内容了。
LNMP平台的搭建请继续参考此文：Nginx 0.8.x + PHP 5.2.13（FastCGI）搭建胜过Apache十倍的Web服务器（第6版）
嗯，再更正一点，在webroot目录打包之前，不需要把\general\mytable目录下的所有以中文命名的模块全部改为英文了，上编文章之所以中文会白屏，其实还是编码的问题。
修改my.cnf，在其中加上如下一句:
lower_case_table_names=1
这句意思是让MySQL不区分大小写，终于可以抛弃之前要将数据库表名全部转换为大写的做法了。
中文分词scws-1.1.3 &#38; php-scws安装：官方文档
2010版中的公告通知和新闻模块加了个不伦不类（个人认为哈）的关键字提取功能，需要安装此程序及php扩展模块
wget http://www.ftphp.com/scws/down/scws-1.1.3.tar.bz2
tar xvjf scws-1.1.3.tar.bz2
cd scws-1.1.3
./configure &#8211;prefix=/usr/local/scws
make &#38; make install
cd phpext
/usr/local/php/bin/phpize
./configure &#8211;with-scws=/usr/local/scws &#8211;with-php-config=/usr/local/php/bin/php-config
make &#38; make install
vi /usr/local/php/etc/php.ini
加入下面几句：
[scws]
;
; 注意请检查 php.ini 中的 extension_dir 的设定值是否正确, 否则请将 extension_dir 设为空，
; 再把 extension = scws.so 指定绝对路径。
;
extension = scws.so
scws.default.charset = gbk
scws.default.fpath = /usr/local/scws/etc
重新加载php
/usr/local/php/sbin/php-fpm reload
安装词典文件
直接将myoa/bin/scws目录中的两个文件拷贝至/usr/local/scws/etc
cp dict.xdb /usr/local/scws/etc
cp rules.ini /usr/local/scws/etc
chmod -R 755 /usr/local/scws/etc
很奇怪，这里一定要设定权限为755，要不然字典文件无法加载，官方文档里没有提到过，结果让我折腾半天..

附两点可有可无的操作：
定时校正服务器时钟，每日5点15分自动与授时服务器同步
crontab -e
加入一行：
15 5 * * * /usr/sbin/ntpdate [...]]]></description>
			<content:encoded><![CDATA[<p>去年写过一篇《<a href="http://looki.cn/363.html" target="_blank">将通达OA2009转移至LNMP平台</a>》，如今通达2010版已经出来好几个月了，趁着这几天有些闲工夫，再次试验了一下，顺便也把我的测试机平台升级至centos5.5+nginx0.8.53+mysql5.0.91，部署过程大致和通达OA2009相同，这里就只记录一些新的内容了。</p>
<p>LNMP平台的搭建请继续参考此文：<a href="http://blog.s135.com/nginx_php_v6/" target="_blank">Nginx 0.8.x + PHP 5.2.13（FastCGI）搭建胜过Apache十倍的Web服务器（第6版）</a></p>
<p>嗯，再更正一点，在webroot目录打包之前，不需要把\general\mytable目录下的所有以中文命名的模块全部改为英文了，上编文章之所以中文会白屏，其实还是编码的问题。<span id="more-376"></span></p>
<p>修改my.cnf，在其中加上如下一句:<br />
lower_case_table_names=1</p>
<p>这句意思是让MySQL不区分大小写，终于可以抛弃之前要将数据库表名全部转换为大写的做法了。</p>
<p>中文分词scws-1.1.3 &amp; php-scws安装：<a href="http://www.ftphp.com/scws/docs.php#instscws" target="_blank">官方文档</a><br />
2010版中的公告通知和新闻模块加了个不伦不类（个人认为哈）的关键字提取功能，需要安装此程序及php扩展模块</p>
<blockquote><p>wget http://www.ftphp.com/scws/down/scws-1.1.3.tar.bz2<br />
tar xvjf scws-1.1.3.tar.bz2<br />
cd scws-1.1.3<br />
./configure &#8211;prefix=/usr/local/scws<br />
make &amp; make install</p>
<p>cd phpext<br />
/usr/local/php/bin/phpize<br />
./configure &#8211;with-scws=/usr/local/scws &#8211;with-php-config=/usr/local/php/bin/php-config<br />
make &amp; make install</p>
<p>vi /usr/local/php/etc/php.ini</p></blockquote>
<p>加入下面几句：</p>
<blockquote><p>[scws]<br />
;<br />
; 注意请检查 php.ini 中的 extension_dir 的设定值是否正确, 否则请将 extension_dir 设为空，<br />
; 再把 extension = scws.so 指定绝对路径。<br />
;<br />
extension = scws.so<br />
scws.default.charset = gbk<br />
scws.default.fpath = /usr/local/scws/etc</p></blockquote>
<p>重新加载php</p>
<p>/usr/local/php/sbin/php-fpm reload</p>
<p>安装词典文件</p>
<p>直接将myoa/bin/scws目录中的两个文件拷贝至/usr/local/scws/etc</p>
<blockquote><p>cp dict.xdb /usr/local/scws/etc<br />
cp rules.ini /usr/local/scws/etc<br />
chmod -R 755 /usr/local/scws/etc</p></blockquote>
<p>很奇怪，这里一定要设定权限为755，要不然字典文件无法加载，官方文档里没有提到过，结果让我折腾半天..</p>
<p style="text-align: center;"><a href="http://looki.cn/wp-content/photos/0510/oa2010.jpg" class="highslide-image" onclick="return hs.expand(this);"><img src="http://looki.cn/wp-content/photos/0510/oa2010.jpg" alt="oa2010" width="427" height="220" /></a></p>
<p>附两点可有可无的操作：</p>
<p>定时校正服务器时钟，每日5点15分自动与授时服务器同步<br />
crontab -e<br />
加入一行：<br />
15 5 * * * /usr/sbin/ntpdate cn.pool.ntp.org &gt; /dev/null 2&gt;&amp;1</p>
<p>减小nginx编译后的文件大小<br />
默认的nginx编译选项里居然是用debug模式(-g)的（debug模式会插入很多跟踪和ASSERT之类），编译以后一个nginx有好几兆。<br />
去掉nginx的debug模式编译，编译以后只有几百k。</p>
<p>在 auto/cc/gcc，最后几行有：<br />
# debug<br />
CFLAGS=”$CFLAGS -g”<br />
注释或删掉这几行，重新编译即可。</p>
<p>一个比较好的nginx讨论区：<a href="http://bbs.linuxtone.org/forum-22-1.html" target="_blank">http://bbs.linuxtone.org/forum-22-1.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://looki.cn/376.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>将通达OA2009转移至LNMP平台</title>
		<link>http://looki.cn/363.html</link>
		<comments>http://looki.cn/363.html#comments</comments>
		<pubDate>Thu, 10 Sep 2009 10:32:51 +0000</pubDate>
		<dc:creator>Looki</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[LNMP]]></category>
		<category><![CDATA[通达OA]]></category>

		<guid isPermaLink="false">http://looki.cn/?p=363</guid>
		<description><![CDATA[LNMP=Linux+Nginx+Mysql+PHP（本文是部署在Debian5.0.2平台上）
Nginx 的中文维基：http://wiki.nginx.org/NginxChs
通达OA：http://www.tongda2000.com/download/index.php
具体如何搭建LNMP平台请参考此文：Nginx 0.7.x + PHP 5.2.10（FastCGI）搭建胜过Apache十倍的Web服务器（第5版）
下面主要记录如何将通达OA2009转移至LNMP平台，以及在Linux下的一些注意事项

1、去通达官网下载最新的OA2009安装包，找一台win主机一路next安装好后，停掉除office_task外的其它服务，在把webroot目录打包之前，记得先把\general\mytable目录下的所有以中文命名的模块全部改为英文，这会解决登录OA后桌面不显示的问题，在Apache下则没有这个问题。
2、将打包的webroot在Debian中解压，我是直接放到/home/wwwroot目录下了，注意设置好update、inc、logs和attachment目录的可写权限。
3、在win下将OA数据库整个导出，再在debian中导入，这里需要将所有的表名由小写转为大写，将下面这段代码存为table.php并放到wwwroot目录下运行之即可
&#60;?
 include_once(&#8220;inc/conn.php&#8221;);
 $connection = OpenConnection();
 $FILE_CONTENT=&#8221;";
 $TABLE_ARRAY = mysql_list_tables($MYSQL_DB);
  while($TABLE = mysql_fetch_row($TABLE_ARRAY))
    {
       $TABLE_NAME = $TABLE[0];
       $TABLE_NAME1 = strtoupper($TABLE_NAME);
       $query=&#8221;ALTER TABLE $TABLE_NAME RENAME $TABLE_NAME1;&#8221;;
       echo $query.&#8221;&#60;br&#62;&#8221;;
       exequery($connection,$query);
     }
 echo &#8220;OK!&#8221;;
?&#62;
4、修改inc/oa_config.php，有两处
//&#8211; 附件路径配置(Windows) &#8211;
//$ATTACH_PATH=$ROOT_PATH.&#8221;attachment/&#8221;;
//$ATTACH_PATH2=realpath($ROOT_PATH.&#8221;../&#8221;).&#8221;/attach/&#8221;;
 
//&#8211; 附件路径配置(Unix/Linux) &#8211;
//$ATTACH_PATH=&#8221;/myoa/attachment/&#8221;;
//$ATTACH_PATH2=&#8221;/myoa/attach/&#8221;;
$ATTACH_PATH=&#8221;/home/wwwroot/attachment/&#8221;;
$ATTACH_PATH2=&#8221;/home/wwwroot/attach/&#8221;;
//连接OfficeTask服务的地址和端口
$MYOA_TASK_ADDR = &#8220;192.168.1.8&#8243;; //这里填运行office_task的那台机子的IP
$MYOA_TASK_PORT = 2397;
另外还得在win主机上修改office_task的“定时任务关联地址”及“mysql主机”为debian的IP，并确保office_task能够正常连接到mysql数据库。至此好像是已经完成了，目前运行下来所有功能均正常使用，就天气预报没法显示，一直提示：“error:解析天气数据失败”，不知道是哪里的问题了。

 
5、一些注意事项
php.ini中要设置include_path=&#8221;.:/home/wwwroot&#8221;，要不然登录后会报Failed opening &#8216;inc/auth.php&#8217; for inclusion (include_path&#8230;..之类的错误
编译PHP时，在make之前特别注意，应该编辑Makefile文件 在 EXTRA_LIBS = &#8230;.. -lcrypt 这一行加上 -liconv 否则就会发生undefined reference to `libiconv_open&#8217;等一系列错误。
修改/usr/local/nginx/conf/nginx.conf [...]]]></description>
			<content:encoded><![CDATA[<p>LNMP=Linux+Nginx+Mysql+PHP（本文是部署在Debian5.0.2平台上）</p>
<p>Nginx 的中文维基：<a href="http://wiki.nginx.org/NginxChs" target="_blank">http://wiki.nginx.org/NginxChs</a></p>
<p>通达OA：<a href="http://www.tongda2000.com/download/index.php">http://www.tongda2000.com/download/index.php</a></p>
<p>具体如何搭建LNMP平台请参考此文：<a title=" Nginx 0.7.x + PHP 5.2.10（FastCGI）搭建胜过Apache十倍的Web服务器（第5版）" href="http://blog.s135.com/nginx_php_v5" target="_blank">Nginx 0.7.x + PHP 5.2.10（FastCGI）搭建胜过Apache十倍的Web服务器（第5版）</a></p>
<p>下面主要记录如何将通达OA2009转移至LNMP平台，以及在Linux下的一些注意事项</p>
<p><span id="more-363"></span></p>
<p>1、去通达官网下载最新的<a href="http://www.tongda2000.com/download/index.php" target="_blank">OA2009安装包</a>，找一台win主机一路next安装好后，停掉除office_task外的其它服务，<strong>在把webroot目录打包之前，记得先把\general\mytable目录下的所有以中文命名的模块全部改为英文，</strong>这会解决登录OA后桌面不显示的问题，在Apache下则没有这个问题。</p>
<p>2、将打包的webroot在Debian中解压，我是直接放到/home/wwwroot目录下了，注意设置好update、inc、logs和attachment目录的可写权限。</p>
<p>3、在win下将OA数据库整个导出，再在debian中导入，这里需要将所有的表名由小写转为大写，将下面这段代码存为table.php并放到wwwroot目录下运行之即可</p>
<blockquote><p>&lt;?<br />
 include_once(&#8220;inc/conn.php&#8221;);<br />
 $connection = OpenConnection();<br />
 $FILE_CONTENT=&#8221;";<br />
 $TABLE_ARRAY = mysql_list_tables($MYSQL_DB);<br />
  while($TABLE = mysql_fetch_row($TABLE_ARRAY))<br />
    {<br />
       $TABLE_NAME = $TABLE[0];<br />
       $TABLE_NAME1 = strtoupper($TABLE_NAME);<br />
       $query=&#8221;ALTER TABLE $TABLE_NAME RENAME $TABLE_NAME1;&#8221;;<br />
       echo $query.&#8221;&lt;br&gt;&#8221;;<br />
       exequery($connection,$query);<br />
     }<br />
 echo &#8220;OK!&#8221;;<br />
?&gt;</p></blockquote>
<p>4、修改inc/oa_config.php，有两处</p>
<blockquote><p>//&#8211; 附件路径配置(Windows) &#8211;<br />
//$ATTACH_PATH=$ROOT_PATH.&#8221;attachment/&#8221;;<br />
//$ATTACH_PATH2=realpath($ROOT_PATH.&#8221;../&#8221;).&#8221;/attach/&#8221;;<br />
 <br />
//&#8211; 附件路径配置(Unix/Linux) &#8211;<br />
//$ATTACH_PATH=&#8221;/myoa/attachment/&#8221;;<br />
//$ATTACH_PATH2=&#8221;/myoa/attach/&#8221;;<br />
$ATTACH_PATH=&#8221;/home/wwwroot/attachment/&#8221;;<br />
$ATTACH_PATH2=&#8221;/home/wwwroot/attach/&#8221;;</p></blockquote>
<blockquote><p>//连接OfficeTask服务的地址和端口<br />
$MYOA_TASK_ADDR = &#8220;192.168.1.8&#8243;; //这里填运行office_task的那台机子的IP<br />
$MYOA_TASK_PORT = 2397;</p></blockquote>
<p>另外还得在win主机上修改office_task的“定时任务关联地址”及“mysql主机”为debian的IP，并确保office_task能够正常连接到mysql数据库。至此好像是已经完成了，目前运行下来所有功能均正常使用，就天气预报没法显示，一直提示：“error:解析天气数据失败”，不知道是哪里的问题了。</p>
<p style="text-align: center;"><a href="http://looki.cn/wp-content/photos/200909/oa2009.jpg" class="highslide-image" onclick="return hs.expand(this);"><img class="ngg-singlepic ngg-none aligncenter" src="http://looki.cn/wp-content/photos/200909/oa2009.jpg" alt="oa2009" width="450" height="217" /></a></p>
<p> </p>
<p>5、一些注意事项</p>
<p>php.ini中要设置include_path=&#8221;.:/home/wwwroot&#8221;，要不然登录后会报Failed opening &#8216;inc/auth.php&#8217; for inclusion (include_path&#8230;..之类的错误</p>
<p>编译PHP时，在make之前特别注意，应该编辑Makefile文件 在 EXTRA_LIBS = &#8230;.. -lcrypt 这一行加上 -liconv 否则就会发生undefined reference to `libiconv_open&#8217;等一系列错误。</p>
<p>修改/usr/local/nginx/conf/nginx.conf 文件，在设定的虚拟主机字段内加上一句：charset gb2312;否则OA有个别页面会乱码。</p>
<p>============2009.9.27更新=========</p>
<p>天气及资讯问题圆满得到解决，原来是gbk编码的问题，看来通达是得考虑全面转为utf-8编码了，毕竟兼容性更好啊。</p>
<p>转换linux系统默认编码：vi /etc/sysconfig/i18n</p>
<p>将内容更改为：</p>
<blockquote><p>LANG=&#8221;zh_CN.GB18030&#8243;<br />
LANGUAGE=&#8221;zh_CN.GB18030:zh_CN.GB2312:zh_CN&#8221;<br />
SUPPORTED=&#8221;zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en&#8221;<br />
SYSFONT=&#8221;lat0-sun16&#8243;</p></blockquote>
<p>编辑php.ini：vi /usr/local/php/etc/php.ini，将default_charset 改为default_charset = &#8220;gb2312&#8243;，重启机器后，再登陆OA，右上角久违的天气预报终于正常显示了，打开今日资讯也不再显示一块白板了。</p>
<p>我的php编译参数</p>
<blockquote><p>./configure &#8211;prefix=/usr/local/php &#8211;with-config-file-path=/usr/local/php/etc &#8211;with-mysql &#8211;with-mysqli &#8211;with-iconv-dir=/usr/local &#8211;with-freetype-dir &#8211;with-jpeg-dir &#8211;with-png-dir &#8211;with-zlib &#8211;with-libxml-dir=/usr &#8211;enable-xml &#8211;disable-rpath &#8211;enable-discard-path &#8211;enable-safe-mode &#8211;enable-bcmath &#8211;enable-shmop &#8211;enable-sysvsem &#8211;enable-inline-optimization &#8211;with-curl &#8211;with-curlwrappers &#8211;enable-mbregex &#8211;enable-fastcgi &#8211;enable-fpm &#8211;enable-force-cgi-redirect &#8211;enable-mbstring &#8211;with-mcrypt &#8211;with-gd &#8211;enable-gd-native-ttf &#8211;with-openssl &#8211;with-mhash &#8211;enable-pcntl &#8211;enable-sockets &#8211;with-xmlrpc &#8211;enable-zip &#8211;enable-ftp &#8211;enable-exif &#8211;without-pear<br />
make ZEND_EXTRA_LIBS=&#8217;-liconv&#8217;<br />
make install</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://looki.cn/363.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Debian学习笔记</title>
		<link>http://looki.cn/362.html</link>
		<comments>http://looki.cn/362.html#comments</comments>
		<pubDate>Tue, 08 Sep 2009 04:38:24 +0000</pubDate>
		<dc:creator>Looki</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[学习]]></category>

		<guid isPermaLink="false">http://looki.cn/362.html</guid>
		<description><![CDATA[最近在开始学习Linux，选了debian这个发行版来作为学习的平台，折腾了一周多的时间，得出一个结论：debian真的不适合给新手练手用啊&#8230;.不过我还是会坚持下去的，以下记录的都是我在使用过程中碰到问题，解决的方法都是在网上找到的，在这里汇总一下，方便自己以后查阅。

1、几个系统相关的常用命令
base-config 配置基本系统
apt-setup 配置Apt源.可选择列表或手工导入
apt-get update 系统软件包更新
apt-get upgrade 更新任何软件包并且自动升级成最新
apt-get dist-upgrade 更新软件包并解决软件依赖关系
apt-cache search keyword 查找指定软件包信息
apt-cache show package_name 周详显示指定软件包的信息
apt-get install 安装指定软件包
apt-get remove 移除指定软件包
2、时间不准
在新装Debian的时候，重启后就会进入base-config程序。
提示你是否设定时间为GMT，选否，时区选shanghai。
如果你选择失误，就会被时间的不准所困扰，下面是解决方案。
第一步#编辑文件/etc/timezone为以下内容
Asia/Shanghai
第二步# date MMDDhhmmCCYY
设定系统时间和硬件时间为MM/DD hh:mm, CCYY。
显示时间为本地时间而硬件时间使用UTC。
例1：设置时间为下午14点36分。
# date -s 14:36:00
Fri Nov 26 14：15：00 CST 1999
例2：设置时间为1999年11月28号。
# date -s 991128
Sun Nov 28 00：00：00 CST 1999
第三步# hwclock &#8211;utc &#8211;systohc
第四步# hwclock &#8211;show
附录：
UTC Universal Time Coordinated，世界标准时间
GMT Greenwich Mean Time，格林尼治时间
CST China standard Time ，中国标准时间
#date -u [...]]]></description>
			<content:encoded><![CDATA[<p>最近在开始学习Linux，选了debian这个发行版来作为学习的平台，折腾了一周多的时间，得出一个结论：debian真的不适合给新手练手用啊&#8230;.不过我还是会坚持下去的，以下记录的都是我在使用过程中碰到问题，解决的方法都是在网上找到的，在这里汇总一下，方便自己以后查阅。</p>
<p><span id="more-362"></span><br />
1、几个系统相关的常用命令</p>
<blockquote><p>base-config 配置基本系统<br />
apt-setup 配置Apt源.可选择列表或手工导入<br />
apt-get update 系统软件包更新<br />
apt-get upgrade 更新任何软件包并且自动升级成最新<br />
apt-get dist-upgrade 更新软件包并解决软件依赖关系<br />
apt-cache search keyword 查找指定软件包信息<br />
apt-cache show package_name 周详显示指定软件包的信息<br />
apt-get install 安装指定软件包<br />
apt-get remove 移除指定软件包</p></blockquote>
<p>2、时间不准</p>
<blockquote><p>在新装Debian的时候，重启后就会进入base-config程序。<br />
提示你是否设定时间为GMT，选否，时区选shanghai。<br />
如果你选择失误，就会被时间的不准所困扰，下面是解决方案。</p>
<p>第一步#编辑文件/etc/timezone为以下内容<br />
Asia/Shanghai</p>
<p>第二步# date MMDDhhmmCCYY<br />
设定系统时间和硬件时间为MM/DD hh:mm, CCYY。<br />
显示时间为本地时间而硬件时间使用UTC。</p>
<p>例1：设置时间为下午14点36分。<br />
# date -s 14:36:00<br />
Fri Nov 26 14：15：00 CST 1999</p>
<p>例2：设置时间为1999年11月28号。<br />
# date -s 991128<br />
Sun Nov 28 00：00：00 CST 1999</p>
<p>第三步# hwclock &#8211;utc &#8211;systohc<br />
第四步# hwclock &#8211;show</p>
<p>附录：<br />
UTC Universal Time Coordinated，世界标准时间<br />
GMT Greenwich Mean Time，格林尼治时间<br />
CST China standard Time ，中国标准时间</p>
<p>#date -u 显示标准时间<br />
四 3月 10 03:51:56 UTC 2005</p>
<p>#date 显示本地时间<br />
四 3月 10 11:52:54 CST 2005</p></blockquote>
<p>3、Debian启动时直接进字符界面</p>
<blockquote><p>装完debian后的default runlevel是2，进入/etc/rc3.d目录，把S30gdm重命名为K30gdm。（K表示禁止启动，S为允许启动）</p></blockquote>
<p>4、Debian中设置Apache、MYSQL开机自动启动</p>
<blockquote><p>1.设置Apache：首先把apachectl拷贝到/etc/init.d目录下，并改名为apache2<br />
# cp /自己的安装目录/apache/bin/apachectl /etc/init.d/apache2<br />
然后进入/etc/rc2.d目录，这是debian默认的启动级别。<br />
建立连接指向/etc/init.d/apache2<br />
# cd /etc/rc2.d<br />
# ln -s /etc/init.d/apache2 S20apache2<br />
重新启动系统后，apache自动启动。<br />
2.设置MYSQL：首先拷贝mysql.server到/etc/init.d目录下命名为mysql<br />
# cp /自己的安装目录/mysql/share/mysql/mysql.server /etc/init.d/mysql<br />
然后进入/etc/rc2.d目录，这是debian默认的启动级别。建立连接指向/etc/init.d/mysql<br />
# cd /etc/rc2.d<br />
# ln -s /etc/init.d/mysql S20mysql<br />
重新启动系统后，mysql就自动启动了。</p></blockquote>
<p>5、debian字符界面显示中文</p>
<blockquote><p>apt-get install zhcon<br />
zhcon &#8211;utf8 &#8211;drv=vga<br />
加上此参数启动zhcon就不会黑屏了</p></blockquote>
<p>6、./configure的问题</p>
<blockquote><p>错误： C compiler cannot create executables<br />
原因：<br />
解决：sudo apt-get gcc libc6-dev</p>
<p>错误：checking for C compiler default output&#8230; configure: error: C compiler cannot create</p>
<p>executables<br />
原因：<br />
解决：sudo apt-get install libc6-dev</p>
<p>错误：configure: error: C++ preprocessor &#8220;/lib/cpp&#8221; fails sanity check<br />
原因：gcc的组件没装全<br />
解决：apt-get install build-essential</p>
<p>错误： Can&#8217;t find X includes. Please check your installation and add the correct paths!<br />
原因：没有X的包含文件<br />
解决：安装xlibs-dev即可</p>
<p>错误： Qt (&gt;= Qt 3.0) (headers and libraries) not found. Please check your installation!<br />
原因：查找提供qt的lib&amp;&amp;headers的软件包,并安装之<br />
解决：apt-get install libqt3-headers libqt3-mt-dev</p>
<p>错误：in the prefix, you&#8217;ve chosen, are no KDE headers installed. This will fail.<br />
So, check this please and use another prefix!<br />
原因：install a KDE application in a Gnome environment。<br />
解决：which basically means its going to want to install a lot of KDE specific packages to</p>
<p>work. This &#8216;configure:error&#8217;<br />
is due to it expecting you to be running KDE and again refers to some &#8216;headers&#8217;.<br />
sudo apt-get update<br />
sudo apt-get install kdelibs4-dev kdelibs4c2a</p>
<p>错误：./admin/cvs.sh: 585: autoconf: not found<br />
原因：<br />
解决：apt-get install autoconf</p>
<p>错误： *** GTK &gt;= 2.4.0 not installed! ***<br />
原因：没装GTK<br />
解决：apt-get build-dep gedit</p>
<p>错误：heching for gtk-config&#8230; no<br />
checking for GTK &#8211; version = 1.2.0&#8230; no<br />
*** The gtk-config script installed by GTK could not be found<br />
*** If GTK was installed in PREFIX, make sure PREFIX/bin is in<br />
*** your path, or set the GTK_CONFIG enviroment variable to the<br />
*** full path to gtk-config.<br />
configure: error: Cannot find GTK: Is gtk-config in path?<br />
原因：<br />
解决：sudo apt-get install libgtk1.2-dev</p>
<p>问题：eclipse中encoding不支持中文<br />
解决：编辑/var/lib/locales/supported.d/local，加一行zh_CN.GBK GBK，执行sudo locale-gen</p>
<p>错误：gnome.h: No such file or directory</p>
<p>错误： No package &#8216;libpanelapplet-2.0&#8242; found<br />
原因：<br />
解决：sudo apt-get install gnome-panel</p>
<p>问题：eva不弹出输入法<br />
解决：sudo apt-get install scim-qtimm</p>
<p>问题：No package &#8216;gtk+-2.0&#8242; found<br />
No package &#8216;gtksourceview-1.0&#8242; found<br />
No package &#8216;libgnomeui-2.0&#8242; found<br />
No package &#8216;libglade-2.0&#8242; found<br />
No package &#8216;libgnomeprintui-2.2&#8242; found<br />
解决：sudo apt-get install libgtk2.0-dev libgtksourceview-dev libgnomeui-dev libglade2-dev</p>
<p>libgnomeprint2.2-dev</p>
<p>问题：No package &#8216;libpanelapplet-2.0&#8242; found<br />
解决：sudo apt-get install libpanelappletmm-2.6-dev</p>
<p>===================</p>
<p>编译mysql时候,No curses/termcap library found 错误<br />
./configure 后,出现 “checking for termcap functions library… configure: error: No curses/termcap library found”错误,发现是没有安装curses/termcap库,<br />
#apt-get install libncurses5-dev</p></blockquote>
<p>7、解决Debian中由于&#8221;Starting MTA&#8230;&#8221;造成启动慢的问题</p>
<blockquote><p>出现这种情况的原因:<br />
MTA(message transfer agent,默认装的是Exim) 在启动时会进行DNS lookups(DNS查找) 操作,而如果是拔号上网或是像我用Reijie的话,系统会尝试进行网络连接(即使是连接失败),这将会尝试很长一段时间,所以造成启动慢的问题. ( 这里有详细的解释: Exim 4 for Debian 中的 2.1.1.10. Keep number of DNS queries minimal (Dial-on-Demand) )</p>
<p>解决办法:<br />
1. 编辑文件: /etc/exim4/update-exim4.conf.conf , 找到 dc_minimaldns 字段,并设置为:dc_minimaldns=&#8217;true&#8217;;<br />
2. 重新设置 exim. 运行:sudo dpkg-reconfigure exim4-config<br />
到时选择 Yes 即可。</p>
<p>如果用不到邮件路由，可以用sysv-rc-conf或者rcconf禁用掉exim服务即可</p>
<p>apt-get remove exim4 删除MTA邮件服务器，提高启动速度.<br />
apt-get remove netatalk 删除不必要的 Appletalk（Netatalk是Linux上提供Appletalk网络协议服务的服务器。能够令Linux“伪装”成为苹果机服务器,提供文档及打印服务）</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://looki.cn/362.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Wordpress常用函数</title>
		<link>http://looki.cn/358.html</link>
		<comments>http://looki.cn/358.html#comments</comments>
		<pubDate>Mon, 17 Aug 2009 08:48:51 +0000</pubDate>
		<dc:creator>Looki</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[转载]]></category>

		<guid isPermaLink="false">http://looki.cn/358.html</guid>
		<description><![CDATA[一套完整的WordPress模板应至少具有如下文件：
style.css : CSS(样式表)文件
index.php : 主页模板
archive.php : Archive/Category模板
404.php : Not Found 错误页模板
comments.php : 留言/回复模板
footer.php : Footer模板
header.php : Header模板
sidebar.php : 侧栏模板
page.php : 内容页(Page)模板
single.php : 内容页(Post)模板
searchform.php : 搜索表单模板
search.php : 搜索结果模板
1. 调用模板函数：
&#60;?php the_tags(); ?&#62; ; 调用文章标签
&#60;?php get_header(); ?&#62; : 调用Header模板
&#60;?php get_sidebar(); ?&#62; : 调用Sidebar模板
&#60;?php get_footer(); ?&#62; : 调用Footer模板
&#60;?php the_content(); ?&#62; : 显示内容(Post/Page)
&#60;?php if(have_posts()) : ?&#62; : 检查是否存在Post/Page
&#60;?php while(have_posts()) : [...]]]></description>
			<content:encoded><![CDATA[<p>一套完整的WordPress模板应至少具有如下文件：</p>
<blockquote><p>style.css : CSS(样式表)文件<br />
index.php : 主页模板<br />
archive.php : Archive/Category模板<br />
404.php : Not Found 错误页模板<br />
comments.php : 留言/回复模板<br />
footer.php : Footer模板<br />
header.php : Header模板<br />
sidebar.php : 侧栏模板<br />
page.php : 内容页(Page)模板<br />
single.php : 内容页(Post)模板<br />
searchform.php : 搜索表单模板<br />
search.php : 搜索结果模板</p></blockquote>
<p><span id="more-358"></span>1. 调用模板函数：</p>
<blockquote><p>&lt;?php the_tags(); ?&gt; ; 调用文章标签<br />
&lt;?php get_header(); ?&gt; : 调用Header模板<br />
&lt;?php get_sidebar(); ?&gt; : 调用Sidebar模板<br />
&lt;?php get_footer(); ?&gt; : 调用Footer模板<br />
&lt;?php the_content(); ?&gt; : 显示内容(Post/Page)<br />
&lt;?php if(have_posts()) : ?&gt; : 检查是否存在Post/Page<br />
&lt;?php while(have_posts()) : the_post(); ?&gt; : 如果存在Post/Page则予以显示<br />
&lt;?php endwhile; ?&gt; : While 结束<br />
&lt;?php endif; ?&gt; : If 结束<br />
&lt;?php the_time(’字符串’) ?&gt; : 显示时间，时间格式由“字符串”参数决定，具体参考PHP手册<br />
&lt;?php comments_popup_link(); ?&gt; : 正文中的留言链接。如果使用 comments_popup_script() ，则留言会在新窗口中打开，反之，则在当前窗口打开<br />
&lt;?php the_title(); ?&gt; : 内容页(Post/Page)标题<br />
&lt;?php the_permalink() ?&gt; : 内容页(Post/Page) Url<br />
&lt;?php the_category(’, ‘) ?&gt; : 特定内容页(Post/Page)所属Category<br />
&lt;?php the_author(); ?&gt; : 作者<br />
&lt;?php the_ID(); ?&gt; : 特定内容页(Post/Page) ID<br />
&lt;?php edit_post_link(); ?&gt; : 如果用户已登录并具有权限，显示编辑链接<br />
&lt;?php get_links_list(); ?&gt; : 显示Blogroll中的链接<br />
&lt;?php comments_template(); ?&gt; : 调用留言/回复模板<br />
&lt;?php wp_list_pages(); ?&gt; : 显示Page列表<br />
&lt;?php wp_list_categories(); ?&gt; : 显示Categories列表<br />
&lt;?php next_post_link(’ %link ‘); ?&gt; : 下一篇文章链接<br />
&lt;?php previous_post_link(’%link’); ?&gt; : 上一篇文章链接<br />
&lt;?php get_calendar(); ?&gt; : 日历<br />
&lt;?php wp_get_archives() ?&gt; : 显示内容存档<br />
&lt;?php posts_nav_link(); ?&gt; : 导航，显示上一篇/下一篇文章链接<br />
&lt;?php include(TEMPLATEPATH . ‘/文件名’); ?&gt; : 嵌入其他文件，可为定制的模板或其他类型文件</p></blockquote>
<p>2. 基本条件判断的函数</p>
<blockquote><p>is_home() : 是否为主页<br />
is_single() : 是否为内容页(Post)<br />
is_page() : 是否为内容页(Page)<br />
is_category() : 是否为Category/Archive页<br />
is_tag() : 是否为Tag存档页<br />
is_date() : 是否为指定日期存档页<br />
is_year() : 是否为指定年份存档页<br />
is_month() : 是否为指定月份存档页<br />
is_day() : 是否为指定日存档页<br />
is_time() : 是否为指定时间存档页<br />
is_author() : 是否为指定作者存档页<br />
is_archive() : 是否为存档页<br />
is_search() : 是否为搜索结果页<br />
is_404() : 是否为 “HTTP 404: Not Found” 错误页<br />
is_paged() : 主页/Category/Archive页是否以多页显示</p></blockquote>
<p>上面这些函数的用法一般都为&lt;?php  if ( is_home()  ) { ?&gt;如果是home页，这里显示的内容&lt;?php } ?&gt;，这个用EditPlus打开默认模板里的archive.php文件，前面十几行都能找的到上面的函数。</p>
<p>3. Header部分常用到的函数</p>
<blockquote><p>&lt;?php bloginfo(’name’); ?&gt; : 博客名称(Title)<br />
&lt;?php bloginfo(’stylesheet_url’); ?&gt; : CSS文件路径<br />
&lt;?php bloginfo(’pingback_url’); ?&gt; : PingBack Url<br />
&lt;?php bloginfo(’template_url’); ?&gt; : 模板文件路径<br />
&lt;?php bloginfo(’version’); ?&gt; : WordPress版本<br />
&lt;?php bloginfo(’atom_url’); ?&gt; : Atom Url<br />
&lt;?php bloginfo(’rss2_url’); ?&gt; : RSS 2.o Url<br />
&lt;?php bloginfo(’url’); ?&gt; : 博客 Url<br />
&lt;?php bloginfo(’html_type’); ?&gt; : 博客网页Html类型<br />
&lt;?php bloginfo(’charset’); ?&gt; : 博客网页编码<br />
&lt;?php bloginfo(’description’); ?&gt; : 博客描述<br />
&lt;?php wp_title(); ?&gt; : 特定内容页(Post/Page)的标题</p></blockquote>
<p>4. 与模板相关的其他函数</p>
<blockquote><p>&lt;?php _e(’Message’); ?&gt; : 输出相应信息<br />
&lt;?php wp_register(); ?&gt; : 显示注册链接<br />
&lt;?php wp_loginout(); ?&gt; : 显示登录/注销链接<br />
&lt;!–next page–&gt; : 将当前内容分页<br />
&lt;!–more–&gt; : 将当前内容截断，以不在主页/目录页显示全部内容<br />
&lt;?php timer_stop(1); ?&gt; : 网页加载时间(秒)<br />
&lt;?php echo get_num_queries(); ?&gt; : 网页加载查询量</p></blockquote>
<p>更详细的信息请参考WordPress官方文档。<br />
wordpress官方文档：<a href="http://codex.wordpress.org/Main_Page" target="_blank">http://codex.wordpress.org/Main_Page</a></p>
]]></content:encoded>
			<wfw:commentRss>http://looki.cn/358.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>两种JS计时代码</title>
		<link>http://looki.cn/350.html</link>
		<comments>http://looki.cn/350.html#comments</comments>
		<pubDate>Sun, 14 Jun 2009 13:50:09 +0000</pubDate>
		<dc:creator>Looki</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[代码]]></category>
		<category><![CDATA[倒计时]]></category>

		<guid isPermaLink="false">http://looki.cn/?p=350</guid>
		<description><![CDATA[    为了便于计算萌萌的出生天数，想在本站加个记时栏，随手google了一下，发现基本上都是倒计时的代码，呵呵，简单的拿来把起始时间一颠倒，就变成我想要的正计时代码了。
    计时代码取当前时间有两种方式，一种是取客户端时间，这是最常见的一种方式，但如果客户端时间被修改了的话，记时就不准确了；另一种是取服务器的时间，这个不用担心客户端时间被修改，不过实现起来稍微麻烦一点。我这里使用的就是第二种方式，显示效果见侧边栏顶端。

两种方式代码分别记录如下：
1、取客户端时间

&#60;p align=&#8220;center&#8221;&#62;萌萌出生已经有：&#60;br /&#62;&#60;span id=&#8220;_lefttime&#8221; style=&#8220;color:red;font-size:18pt;&#8221;&#62;&#60;/span&#62;&#60;/p&#62;
&#60;SCRIPT LANGUAGE=&#8220;JavaScript&#8221;&#62;
function _fresh()
{
var endtime=new Date(&#8220;May 10, 2009 12:25:00″);
var nowtime = new Date();
var leftsecond=parseInt((nowtime.getTime()-endtime.getTime())/1000);
if(leftsecond&#60;0){leftsecond=0;}
__d=parseInt(leftsecond/3600/24);
__h=parseInt((leftsecond/3600)%24);
__m=parseInt((leftsecond/60)%60);
__s=parseInt(leftsecond%60);
document.getElementById(&#8220;_lefttime&#8220;).innerHTML=__d+&#8221;天&#8220;+__h+&#8221;小时&#8220;+__m+&#8221;分&#8220;+__s+&#8221;秒&#8221;;
}
_fresh()
setInterval(_fresh,1000);
&#60;/SCRIPT&#62;

2、取服务器时间

&#60;p align=&#8220;center&#8221;&#62;今天是：&#60;br /&#62;&#60;span id=&#8220;WeekCounter&#8221; style=&#8220;color:red;font-size:12pt;&#8221;&#62;&#60;/span&#62;&#60;/p&#62;
&#60;p align=&#8220;center&#8221;&#62;萌萌出生已经有：&#60;br /&#62;&#60;span id=&#8220;TimeCounter&#8221; style=&#8220;color:red;font-size:14pt;&#8221;&#62;&#60;/span&#62;&#60;/p&#62;
&#60;SCRIPT LANGUAGE=&#8220;JavaScript&#8221;&#62;
&#60;!&#8211;
if (window.ActiveXObject){
  http_request=new ActiveXObject(&#8216;Microsoft.XMLHTTP&#8217;);
} else if (window.XMLHttpRequest) {
  http_request=new XMLHttpRequest();
}
http_request.open(&#8216;HEAD&#8217;, &#8216;.&#8217;, false);//获取服务器时间，XHR不能跨域!!!
http_request.send(null);
var ServerDate = new Date(http_request.getResponseHeader(&#8216;Date&#8217;));
var ClientDate= new Date();
var d=ClientDate-ServerDate;//计算时差，单位毫秒
/*定义开始时间*/
var year=2009;
var Mon=5;
var day=10;
var hour=12;
var minu=25;
var Second=0;
/*定义结束*/
var starttime = [...]]]></description>
			<content:encoded><![CDATA[<p>    为了便于计算萌萌的出生天数，想在本站加个记时栏，随手google了一下，发现基本上都是倒计时的代码，呵呵，简单的拿来把起始时间一颠倒，就变成我想要的正计时代码了。<br />
    计时代码取当前时间有两种方式，一种是取客户端时间，这是最常见的一种方式，但如果客户端时间被修改了的话，记时就不准确了；另一种是取服务器的时间，这个不用担心客户端时间被修改，不过实现起来稍微麻烦一点。我这里使用的就是第二种方式，显示效果见侧边栏顶端。<br />
<span id="more-350"></span><br />
两种方式代码分别记录如下：<br />
1、取客户端时间</p>
<blockquote>
<div style="FONT-FAMILY: 'Consolas', 'Lucida Console', 'Courier New'; class=source jQuery1257147867609="><span style="COLOR: #007000">&lt;p</span> <span style="COLOR: #0000c0">align=</span><span style="BACKGROUND-COLOR: #fff0f0">&#8220;center&#8221;</span><span style="COLOR: #007000">&gt;</span><span style="COLOR: #000000">萌萌出生已经有：</span><span style="COLOR: #007000">&lt;br</span> <span style="COLOR: #007000">/&gt;&lt;span</span> <span style="COLOR: #0000c0">id=</span><span style="BACKGROUND-COLOR: #fff0f0">&#8220;_lefttime&#8221;</span> <span style="COLOR: #0000c0">style=</span><span style="BACKGROUND-COLOR: #fff0f0">&#8220;color:red;font-size:18pt;&#8221;</span><span style="COLOR: #007000">&gt;&lt;/span&gt;&lt;/p&gt;</span><br />
<span style="COLOR: #007000">&lt;SCRIPT </span><span style="COLOR: #0000c0">LANGUAGE=</span><span style="BACKGROUND-COLOR: #fff0f0">&#8220;JavaScript&#8221;</span><span style="COLOR: #007000">&gt;</span><br />
<span style="COLOR: #008000; FONT-WEIGHT: bold">function</span> <span style="COLOR: #000000">_fresh</span>()<br />
<span style="COLOR: #000000">{</span><br />
<span style="COLOR: #008000; FONT-WEIGHT: bold">var</span> <span style="COLOR: #000000">endtime</span><span style="COLOR: #303030">=</span><span style="COLOR: #008000; FONT-WEIGHT: bold">new</span> <span style="COLOR: #007020">Date</span>(<span style="BACKGROUND-COLOR: #fff0f0">&#8220;May 10, 2009 12:25:00″);</span><br />
<span style="BACKGROUND-COLOR: #fff0f0">var nowtime = new Date();</span><br />
<span style="BACKGROUND-COLOR: #fff0f0">var leftsecond=parseInt((nowtime.getTime()-endtime.getTime())/1000);</span><br />
<span style="BACKGROUND-COLOR: #fff0f0">if(leftsecond&lt;0){leftsecond=0;}</span><br />
<span style="BACKGROUND-COLOR: #fff0f0">__d=parseInt(leftsecond/3600/24);</span><br />
<span style="BACKGROUND-COLOR: #fff0f0">__h=parseInt((leftsecond/3600)%24);</span><br />
<span style="BACKGROUND-COLOR: #fff0f0">__m=parseInt((leftsecond/60)%60);</span><br />
<span style="BACKGROUND-COLOR: #fff0f0">__s=parseInt(leftsecond%60);</span><br />
<span style="BACKGROUND-COLOR: #fff0f0">document.getElementById(&#8220;</span><span style="COLOR: #000000">_lefttime</span><span style="BACKGROUND-COLOR: #fff0f0">&#8220;).innerHTML=__d+&#8221;</span><span style="COLOR: #f00000">天</span><span style="BACKGROUND-COLOR: #fff0f0">&#8220;+__h+&#8221;</span><span style="COLOR: #f00000">小时</span><span style="BACKGROUND-COLOR: #fff0f0">&#8220;+__m+&#8221;</span><span style="COLOR: #f00000">分</span><span style="BACKGROUND-COLOR: #fff0f0">&#8220;+__s+&#8221;</span><span style="COLOR: #f00000">秒&#8221;</span>;<br />
<span style="COLOR: #000000">}</span><br />
<span style="COLOR: #000000">_fresh</span>()<br />
<span style="COLOR: #000000">setInterval</span>(<span style="COLOR: #000000">_fresh</span><span style="COLOR: #303030">,</span><span style="COLOR: #0000d0; FONT-WEIGHT: bold">1000</span>);<br />
<span style="COLOR: #007000">&lt;/SCRIPT&gt;</span></div>
</blockquote>
<p>2、取服务器时间</p>
<blockquote>
<div class="source" style="FONT-FAMILY: 'Consolas', 'Lucida Console', 'Courier New'"><span style="COLOR: #1e90ff; FONT-WEIGHT: bold">&lt;p</span> <span style="COLOR: #1e90ff">align=</span><span style="COLOR: #aa5500">&#8220;center&#8221;</span><span style="COLOR: #1e90ff; FONT-WEIGHT: bold">&gt;</span><span style="COLOR: #000000">今天是：</span><span style="COLOR: #1e90ff; FONT-WEIGHT: bold">&lt;br</span> <span style="COLOR: #1e90ff; FONT-WEIGHT: bold">/&gt;&lt;span</span> <span style="COLOR: #1e90ff">id=</span><span style="COLOR: #aa5500">&#8220;WeekCounter&#8221;</span> <span style="COLOR: #1e90ff">style=</span><span style="COLOR: #aa5500">&#8220;color:red;font-size:12pt;&#8221;</span><span style="COLOR: #1e90ff; FONT-WEIGHT: bold">&gt;&lt;/span&gt;&lt;/p&gt;</span><br />
<span style="COLOR: #1e90ff; FONT-WEIGHT: bold">&lt;p</span> <span style="COLOR: #1e90ff">align=</span><span style="COLOR: #aa5500">&#8220;center&#8221;</span><span style="COLOR: #1e90ff; FONT-WEIGHT: bold">&gt;</span><span style="COLOR: #000000">萌萌出生已经有：</span><span style="COLOR: #1e90ff; FONT-WEIGHT: bold">&lt;br</span> <span style="COLOR: #1e90ff; FONT-WEIGHT: bold">/&gt;&lt;span</span> <span style="COLOR: #1e90ff">id=</span><span style="COLOR: #aa5500">&#8220;TimeCounter&#8221;</span> <span style="COLOR: #1e90ff">style=</span><span style="COLOR: #aa5500">&#8220;color:red;font-size:14pt;&#8221;</span><span style="COLOR: #1e90ff; FONT-WEIGHT: bold">&gt;&lt;/span&gt;&lt;/p&gt;</span><br />
<span style="COLOR: #1e90ff; FONT-WEIGHT: bold">&lt;SCRIPT </span><span style="COLOR: #1e90ff">LANGUAGE=</span><span style="COLOR: #aa5500">&#8220;JavaScript&#8221;</span><span style="COLOR: #1e90ff; FONT-WEIGHT: bold">&gt;</span><br />
<span style="FONT-STYLE: italic; COLOR: #aaaaaa">&lt;!&#8211;</span><br />
<span style="COLOR: #0000aa">if</span> (<span style="COLOR: #00aaaa">window</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">ActiveXObject</span><span style="COLOR: #000000">){</span><br />
  <span style="COLOR: #000000">http_request</span><span style="COLOR: #000000">=</span><span style="COLOR: #0000aa">new</span> <span style="COLOR: #000000">ActiveXObject</span>(<span style="COLOR: #aa5500">&#8216;Microsoft.XMLHTTP&#8217;</span>);<br />
<span style="COLOR: #000000">}</span> <span style="COLOR: #0000aa">else</span> <span style="COLOR: #0000aa">if</span> (<span style="COLOR: #00aaaa">window</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">XMLHttpRequest</span>) <span style="COLOR: #000000">{</span><br />
  <span style="COLOR: #000000">http_request</span><span style="COLOR: #000000">=</span><span style="COLOR: #0000aa">new</span> <span style="COLOR: #000000">XMLHttpRequest</span>();<br />
<span style="COLOR: #000000">}</span><br />
<span style="COLOR: #000000">http_request</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">open</span>(<span style="COLOR: #aa5500">&#8216;HEAD&#8217;</span><span style="COLOR: #000000">,</span> <span style="COLOR: #aa5500">&#8216;.&#8217;</span><span style="COLOR: #000000">,</span> <span style="COLOR: #0000aa">false</span>);<span style="FONT-STYLE: italic; COLOR: #aaaaaa">//获取服务器时间，XHR不能跨域!!!</span><br />
<span style="COLOR: #000000">http_request</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">send</span>(<span style="COLOR: #0000aa">null</span>);<br />
<span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">ServerDate</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #0000aa">new</span> <span style="COLOR: #00aaaa">Date</span>(<span style="COLOR: #000000">http_request</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getResponseHeader</span>(<span style="COLOR: #aa5500">&#8216;Date&#8217;</span>));<br />
<span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">ClientDate</span><span style="COLOR: #000000">=</span> <span style="COLOR: #0000aa">new</span> <span style="COLOR: #00aaaa">Date</span>();<br />
<span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">d</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">ClientDate</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">ServerDate</span><span style="COLOR: #000000">;//</span><span style="FONT-STYLE: italic; COLOR: #aaaaaa">计算时差，单位毫秒</span><br />
<span style="FONT-STYLE: italic; COLOR: #aaaaaa">/*定义开始时间*/</span><br />
<span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">year</span><span style="COLOR: #000000">=</span><span style="COLOR: #009999">2009</span>;<br />
<span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">Mon</span><span style="COLOR: #000000">=</span><span style="COLOR: #009999">5</span>;<br />
<span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">day</span><span style="COLOR: #000000">=</span><span style="COLOR: #009999">10</span>;<br />
<span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">hour</span><span style="COLOR: #000000">=</span><span style="COLOR: #009999">12</span>;<br />
<span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">minu</span><span style="COLOR: #000000">=</span><span style="COLOR: #009999">25</span>;<br />
<span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">Second</span><span style="COLOR: #000000">=</span><span style="COLOR: #009999">0</span>;<br />
<span style="FONT-STYLE: italic; COLOR: #aaaaaa">/*定义结束*/</span><br />
<span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">starttime</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #0000aa">new</span> <span style="COLOR: #00aaaa">Date</span>(<span style="COLOR: #000000">year</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">Mon</span><span style="COLOR: #000000">-</span><span style="COLOR: #009999">1</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">day</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">hour</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">minu</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">Second</span>);<br />
<span style="FONT-STYLE: italic; COLOR: #aaaaaa">//月份是从0-11，所以要减1才能得到当前月份</span><br />
<span style="COLOR: #0000aa">function</span> <span style="COLOR: #000000">clock</span>()<br />
<span style="COLOR: #000000">{</span><br />
  <span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">today</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #0000aa">new</span> <span style="COLOR: #00aaaa">Date</span>();<br />
  <span style="COLOR: #000000">today</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">setTime</span>(<span style="COLOR: #000000">today</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getTime</span>()<span style="COLOR: #000000">-</span><span style="COLOR: #000000">d</span>);<span style="FONT-STYLE: italic; COLOR: #aaaaaa">//同步日期到服务器时间</span><br />
  <span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">leave</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">today</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">starttime</span>;<br />
  <span style="COLOR: #0000aa">if</span>(<span style="COLOR: #000000">leave</span> <span style="COLOR: #000000">&gt;</span> <span style="COLOR: #009999">0</span>)<br />
  <span style="COLOR: #000000">{</span><br />
    <span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">timeString</span><span style="COLOR: #000000">=</span><span style="COLOR: #aa5500">&#8220;&#8221;</span>;<br />
    <span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">day</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #00aaaa">Math</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">floor</span>(<span style="COLOR: #000000">leave</span> <span style="COLOR: #000000">/</span> (<span style="COLOR: #009999">1000</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #009999">60</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #009999">60</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #009999">24</span>));<br />
    <span style="COLOR: #000000">leave</span><span style="COLOR: #000000">-=</span><span style="COLOR: #000000">day</span><span style="COLOR: #000000">*</span>(<span style="COLOR: #009999">1000</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #009999">60</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #009999">60</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #009999">24</span>);<br />
    <span style="COLOR: #0000aa">if</span>(<span style="COLOR: #000000">day</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #009999">0</span>)<span style="COLOR: #000000">timeString</span><span style="COLOR: #000000">+=</span> <span style="COLOR: #aa5500">&#8220;&#8221;</span> <span style="COLOR: #000000">+</span> <span style="COLOR: #000000">day</span> <span style="COLOR: #000000">+</span> <span style="COLOR: #aa5500">&#8220;天&#8221;</span><br />
   <br />
    <span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">hour</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #00aaaa">Math</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">floor</span>(<span style="COLOR: #000000">leave</span> <span style="COLOR: #000000">/</span> (<span style="COLOR: #009999">1000</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #009999">60</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #009999">60</span>));<br />
    <span style="COLOR: #000000">leave</span><span style="COLOR: #000000">-=</span><span style="COLOR: #000000">hour</span><span style="COLOR: #000000">*</span>(<span style="COLOR: #009999">1000</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #009999">60</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #009999">60</span>);<br />
    <span style="COLOR: #0000aa">if</span>(<span style="COLOR: #000000">hour</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #009999">0</span>)<br />
    <span style="COLOR: #000000">{</span><br />
      <span style="COLOR: #0000aa">if</span>(<span style="COLOR: #000000">timeString</span><span style="COLOR: #000000">!=</span><span style="COLOR: #aa5500">&#8220;&#8221;</span>)<span style="COLOR: #000000">timeString</span><span style="COLOR: #000000">+=</span><span style="COLOR: #aa5500">&#8220;&#8221;</span>;<br />
      <span style="COLOR: #000000">timeString</span><span style="COLOR: #000000">+=</span> <span style="COLOR: #aa5500">&#8220;&#8221;</span> <span style="COLOR: #000000">+</span> <span style="COLOR: #000000">hour</span> <span style="COLOR: #000000">+</span> <span style="COLOR: #aa5500">&#8220;小时&#8221;</span><br />
    <span style="COLOR: #000000">}</span><br />
   <br />
    <span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">minute</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #00aaaa">Math</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">floor</span>(<span style="COLOR: #000000">leave</span> <span style="COLOR: #000000">/</span> (<span style="COLOR: #009999">1000</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #009999">60</span>));<br />
    <span style="COLOR: #000000">leave</span><span style="COLOR: #000000">-=</span><span style="COLOR: #000000">minute</span><span style="COLOR: #000000">*</span>(<span style="COLOR: #009999">1000</span> <span style="COLOR: #000000">*</span> <span style="COLOR: #009999">60</span>);<br />
    <span style="COLOR: #0000aa">if</span>(<span style="COLOR: #000000">minute</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #009999">0</span>)<br />
    <span style="COLOR: #000000">{</span><br />
      <span style="COLOR: #0000aa">if</span>(<span style="COLOR: #000000">timeString</span><span style="COLOR: #000000">!=</span><span style="COLOR: #aa5500">&#8220;&#8221;</span>)<span style="COLOR: #000000">timeString</span><span style="COLOR: #000000">+=</span><span style="COLOR: #aa5500">&#8220;&#8221;</span>;<br />
      <span style="COLOR: #000000">timeString</span><span style="COLOR: #000000">+=</span> <span style="COLOR: #aa5500">&#8220;&#8221;</span> <span style="COLOR: #000000">+</span> <span style="COLOR: #000000">minute</span> <span style="COLOR: #000000">+</span> <span style="COLOR: #aa5500">&#8220;分&#8221;</span><br />
    <span style="COLOR: #000000">}</span><br />
   <br />
    <span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">second</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #00aaaa">Math</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">floor</span>(<span style="COLOR: #000000">leave</span> <span style="COLOR: #000000">/</span> <span style="COLOR: #009999">1000</span>);<br />
    <span style="COLOR: #0000aa">if</span>(<span style="COLOR: #000000">timeString</span><span style="COLOR: #000000">!=</span><span style="COLOR: #aa5500">&#8220;&#8221;</span>)<span style="COLOR: #000000">timeString</span><span style="COLOR: #000000">+=</span><span style="COLOR: #aa5500">&#8220;&#8221;</span>;<br />
    <span style="COLOR: #000000">timeString</span><span style="COLOR: #000000">+=</span> <span style="COLOR: #aa5500">&#8220;&#8221;</span> <span style="COLOR: #000000">+</span> <span style="COLOR: #000000">second</span> <span style="COLOR: #000000">+</span> <span style="COLOR: #aa5500">&#8220;秒&#8221;</span><br />
    <span style="COLOR: #00aaaa">document</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getElementById</span>(<span style="COLOR: #aa5500">&#8220;TimeCounter&#8221;</span><span style="COLOR: #000000">).</span><span style="COLOR: #000000">innerHTML</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">timeString</span>;<br />
  <span style="COLOR: #000000">}</span><br />
  <span style="COLOR: #0000aa">else</span><br />
  <span style="COLOR: #000000">{</span><br />
   <span style="COLOR: #00aaaa">document</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getElementById</span>(<span style="COLOR: #aa5500">&#8220;TimeCounter&#8221;</span><span style="COLOR: #000000">).</span><span style="COLOR: #000000">innerHTML</span><span style="COLOR: #000000">=</span> <span style="COLOR: #aa5500">&#8220;Time&#8217;s up!&#8221;</span>;<br />
<span style="FONT-STYLE: italic; COLOR: #aaaaaa">//window.location.reload();</span><br />
  <span style="COLOR: #000000">}</span><br />
  <span style="COLOR: #000000">setTimeout</span>(<span style="COLOR: #aa5500">&#8220;clock()&#8221;</span><span style="COLOR: #000000">,</span> <span style="COLOR: #009999">1000</span>);<br />
<span style="COLOR: #000000">}</span><br />
<span style="COLOR: #000000">clock</span>();<br />
<span style="COLOR: #0000aa">var</span> <span style="COLOR: #000000">week</span>;<br />
<span style="COLOR: #000000">date1</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">ServerDate</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getDate</span>();<br />
<span style="COLOR: #000000">month1</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">ServerDate</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getMonth</span>()<span style="COLOR: #000000">+</span><span style="COLOR: #009999">1</span>;<br />
<span style="COLOR: #000000">year1</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">ServerDate</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getYear</span>();<br />
<span style="COLOR: #0000aa">if</span>(<span style="COLOR: #000000">ServerDate</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getDay</span>()<span style="COLOR: #000000">==</span><span style="COLOR: #009999">0</span>) <span style="COLOR: #000000">week</span><span style="COLOR: #000000">=</span><span style="COLOR: #aa5500">&#8220;星期天&#8221;</span><br />
<span style="COLOR: #0000aa">if</span>(<span style="COLOR: #000000">ServerDate</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getDay</span>()<span style="COLOR: #000000">==</span><span style="COLOR: #009999">1</span>) <span style="COLOR: #000000">week</span><span style="COLOR: #000000">=</span><span style="COLOR: #aa5500">&#8220;星期一&#8221;</span><br />
<span style="COLOR: #0000aa">if</span>(<span style="COLOR: #000000">ServerDate</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getDay</span>()<span style="COLOR: #000000">==</span><span style="COLOR: #009999">2</span>) <span style="COLOR: #000000">week</span><span style="COLOR: #000000">=</span><span style="COLOR: #aa5500">&#8220;星期二&#8221;</span><br />
<span style="COLOR: #0000aa">if</span>(<span style="COLOR: #000000">ServerDate</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getDay</span>()<span style="COLOR: #000000">==</span><span style="COLOR: #009999">3</span>) <span style="COLOR: #000000">week</span><span style="COLOR: #000000">=</span><span style="COLOR: #aa5500">&#8220;星期三&#8221;</span><br />
<span style="COLOR: #0000aa">if</span>(<span style="COLOR: #000000">ServerDate</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getDay</span>()<span style="COLOR: #000000">==</span><span style="COLOR: #009999">4</span>) <span style="COLOR: #000000">week</span><span style="COLOR: #000000">=</span><span style="COLOR: #aa5500">&#8220;星期四&#8221;</span><br />
<span style="COLOR: #0000aa">if</span>(<span style="COLOR: #000000">ServerDate</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getDay</span>()<span style="COLOR: #000000">==</span><span style="COLOR: #009999">5</span>) <span style="COLOR: #000000">week</span><span style="COLOR: #000000">=</span><span style="COLOR: #aa5500">&#8220;星期五&#8221;</span><br />
<span style="COLOR: #0000aa">if</span>(<span style="COLOR: #000000">ServerDate</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getDay</span>()<span style="COLOR: #000000">==</span><span style="COLOR: #009999">6</span>) <span style="COLOR: #000000">week</span><span style="COLOR: #000000">=</span><span style="COLOR: #aa5500">&#8220;星期六&#8221;</span><br />
<span style="COLOR: #00aaaa">document</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">getElementById</span>(<span style="COLOR: #aa5500">&#8220;WeekCounter&#8221;</span><span style="COLOR: #000000">).</span><span style="COLOR: #000000">innerHTML</span><span style="COLOR: #000000">=</span> <span style="COLOR: #000000">year1</span><span style="COLOR: #000000">+</span><span style="COLOR: #aa5500">&#8220;年&#8221;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">month1</span><span style="COLOR: #000000">+</span><span style="COLOR: #aa5500">&#8220;月&#8221;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">date1</span><span style="COLOR: #000000">+</span><span style="COLOR: #aa5500">&#8220;日&#8221;</span><span style="COLOR: #000000">+</span><span style="COLOR: #aa5500">&#8220;&amp;nbsp;&#8221;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">week</span>;<br />
<span style="FONT-STYLE: italic; COLOR: #aaaaaa">//&#8211;&gt; </span><br />
<span style="COLOR: #1e90ff; FONT-WEIGHT: bold">&lt;/SCRIPT&gt;</span></div>
</blockquote>
<p>听取niuniuni同学的建议，小小更新了一下，加上了显示当前日期及星期，呵呵..</p>
]]></content:encoded>
			<wfw:commentRss>http://looki.cn/350.html/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>apache同时支持GBK和UTF-8编码</title>
		<link>http://looki.cn/348.html</link>
		<comments>http://looki.cn/348.html#comments</comments>
		<pubDate>Mon, 25 May 2009 09:30:37 +0000</pubDate>
		<dc:creator>Looki</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[Win2003]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[网站]]></category>

		<guid isPermaLink="false">http://looki.cn/348.html</guid>
		<description><![CDATA[    前面说到我放弃IIS全面转向apache了，随后因为小丫头的出生，一直都比较忙，也没空仔细检查。这两天稍微闲了点，让我发现居然有两处乱码问题：一处是后台编辑文章处的“热门标签”，中文标签全部乱码；另一处则是安装的WP-RecentComments插件，在侧边栏首页显示正常，但一点下一页后就会变乱码了。   
    经过查询得知都是因为apache编码设置的问题，因为原本我服务器上的apache上运行的一套系统文件编码是gb2312，httpd.conf中设置AddDefaultCharset gb2312，从而导致wp中某些模块无法正常以utf-8编码解析。折腾了一下午，总算是解决了让apache同时支持GBK和UTF-8编码。
    以下为具体解决方法：
    1、httpd.conf中设置AddDefaultCharset off，并在原gb2312编码系统所设置的虚拟主机字段中加入AddDefaultCharset gb2312。
    2、注释掉php.ini文件中的default_charset = &#8220;gb2312&#8243;
    3、重启apache服务，搞定！
    以下为转贴：
使用AddCharset变量将字符编码应用到指定后缀名的当前目录以及子目录的所有文件上。比如，为所有后缀名为.html的文件指定UTF-8字符编码，我们可以在.htaccess文件中加入一下代码：

AddCharset UTF-8 .html 
后缀名可以是包括或者省略前面的”.”. 我们也可以在一行中同时指定多个后缀名。在一般情况下，最好将Apache的默认字符编码设置为UTF-8；

AddDefaultCharset utf-8 
AddDefaultCharset可以为On/Off或者任何在IANA注册的，在MIME介质类型中使用的字符值。当且仅当响应的content-type是text/plain或text/html时，它会为介质类型字符参数指定默认的值。这个值会覆盖在响应中通过META指定的字符集，当然最后的行为还要取决于用户使用的客户端/游览器设置。当AddDefaultCharset为Off时，将关闭这个功能；设置为On时，将使用默认的字符集iso-8859-1；或为AddDefaultCharset指定可选的字符集比如UTF-8。
通过使用AddType也可以实现字符编码设置，这个参数会同时指定字符编码和MIME类型。

AddType 'text/html; charset=UTF-8' html 
在Apache中，我们也可以为某一个特定的文件设置字符编码。比如，我们希望在一个文件夹中，只对文件example.html使用UTF-8，而其他文件仍然是用默认编码。我们可以编辑这个文件夹下的.htaccess文件，并添加如下内容：

&#60;Files "example.html"&#62;
     AddCharset UTF-8 .html
&#60;/Files&#62; 
通过以下配置，可以实现同样的效果：

&#60;Files "example.html"&#62;
    ForceType 'text/html; charset=UTF-8'
&#60;/Files&#62; 
我们也可以使用正则表达式为多个文件指定编码。例如：

&#60;FilesMatch ".(htm&#124;html&#124;css&#124;js)$"&#62;
    AddCharset UTF-8 .html
&#60;/FilesMatch&#62;
或
&#60;FilesMatch ".(htm&#124;html&#124;css&#124;js)$"&#62;
    ForceType 'text/html; charset=UTF-8'
&#60;/FilesMatch&#62; 
注：需要注意的是配置参数的顺序对于结果起到重要的作用。比如在配置文件中有如下设置：

AddCharset UTF-8 .utf8
AddCharset windows-1252 .html 
在这种配置下，文件example.utf8.html将使用windows-1252，而example.html.utf8将使用UTF-8字符编码；
]]></description>
			<content:encoded><![CDATA[<p>    前面说到我放弃IIS全面转向apache了，随后因为小丫头的出生，一直都比较忙，也没空仔细检查。这两天稍微闲了点，让我发现居然有两处乱码问题：一处是后台编辑文章处的“热门标签”，中文标签全部乱码；另一处则是安装的WP-RecentComments插件，在侧边栏首页显示正常，但一点下一页后就会变乱码了。<span id="more-348"></span>   <br />
    经过查询得知都是因为apache编码设置的问题，因为原本我服务器上的apache上运行的一套系统文件编码是gb2312，httpd.conf中设置AddDefaultCharset gb2312，从而导致wp中某些模块无法正常以utf-8编码解析。折腾了一下午，总算是解决了让apache同时支持GBK和UTF-8编码。<br />
    以下为具体解决方法：<br />
    1、httpd.conf中设置AddDefaultCharset off，并在原gb2312编码系统所设置的虚拟主机字段中加入AddDefaultCharset gb2312。<br />
    2、注释掉php.ini文件中的default_charset = &#8220;gb2312&#8243;<br />
    3、重启apache服务，搞定！</p>
<p>    以下为转贴：</p>
<blockquote><p>使用AddCharset变量将字符编码应用到指定后缀名的当前目录以及子目录的所有文件上。比如，为所有后缀名为.html的文件指定UTF-8字符编码，我们可以在.htaccess文件中加入一下代码：</p>
<div class="xoopsCode"><code><span style="color: #000000;"><span style="color: #0000bb;"><br />
AddCharset UTF</span><span style="color: #007700;">-</span><span style="color: #0000bb;">8 </span><span style="color: #007700;">.</span><span style="color: #0000bb;">html</span> </span></code></div>
<p>后缀名可以是包括或者省略前面的”.”. 我们也可以在一行中同时指定多个后缀名。在一般情况下，最好将Apache的默认字符编码设置为UTF-8；</p>
<div class="xoopsCode"><code><span style="color: #000000;"><span style="color: #0000bb;"><br />
AddDefaultCharset utf</span><span style="color: #007700;">-</span><span style="color: #0000bb;">8</span> </span></code></div>
<p>AddDefaultCharset可以为On/Off或者任何在IANA注册的，在MIME介质类型中使用的字符值。当且仅当响应的content-type是text/plain或text/html时，它会为介质类型字符参数指定默认的值。这个值会覆盖在响应中通过META指定的字符集，当然最后的行为还要取决于用户使用的客户端/游览器设置。当AddDefaultCharset为Off时，将关闭这个功能；设置为On时，将使用默认的字符集iso-8859-1；或为AddDefaultCharset指定可选的字符集比如UTF-8。<br />
通过使用AddType也可以实现字符编码设置，这个参数会同时指定字符编码和MIME类型。</p>
<div class="xoopsCode"><code><span style="color: #000000;"><span style="color: #0000bb;"><br />
AddType </span><span style="color: #dd0000;">'text/html; charset=UTF-8' </span><span style="color: #0000bb;">html</span> </span></code></div>
<p>在Apache中，我们也可以为某一个特定的文件设置字符编码。比如，我们希望在一个文件夹中，只对文件example.html使用UTF-8，而其他文件仍然是用默认编码。我们可以编辑这个文件夹下的.htaccess文件，并添加如下内容：</p>
<div class="xoopsCode"><code><span style="color: #000000;"><span style="color: #0000bb;"><br />
</span><span style="color: #007700;">&lt;</span><span style="color: #0000bb;">Files </span><span style="color: #dd0000;">"example.html"</span><span style="color: #007700;">&gt;<br />
     </span><span style="color: #0000bb;">AddCharset UTF</span><span style="color: #007700;">-</span><span style="color: #0000bb;">8 </span><span style="color: #007700;">.</span><span style="color: #0000bb;">html<br />
</span><span style="color: #007700;">&lt;/</span><span style="color: #0000bb;">Files</span><span style="color: #007700;">&gt;</span> </span></code></div>
<p>通过以下配置，可以实现同样的效果：</p>
<div class="xoopsCode"><code><span style="color: #000000;"><span style="color: #0000bb;"><br />
</span><span style="color: #007700;">&lt;</span><span style="color: #0000bb;">Files </span><span style="color: #dd0000;">"example.html"</span><span style="color: #007700;">&gt;<br />
    </span><span style="color: #0000bb;">ForceType </span><span style="color: #dd0000;">'text/html; charset=UTF-8'<br />
</span><span style="color: #007700;">&lt;/</span><span style="color: #0000bb;">Files</span><span style="color: #007700;">&gt;</span> </span></code></div>
<p>我们也可以使用正则表达式为多个文件指定编码。例如：</p>
<div class="xoopsCode"><code><span style="color: #000000;"><span style="color: #0000bb;"><br />
</span><span style="color: #007700;">&lt;</span><span style="color: #0000bb;">FilesMatch </span><span style="color: #dd0000;">".(htm|html|css|js)$"</span><span style="color: #007700;">&gt;<br />
    </span><span style="color: #0000bb;">AddCharset UTF</span><span style="color: #007700;">-</span><span style="color: #0000bb;">8 </span><span style="color: #007700;">.</span><span style="color: #0000bb;">html<br />
</span><span style="color: #007700;">&lt;/</span><span style="color: #0000bb;">FilesMatch</span><span style="color: #007700;">&gt;<br />
</span><span style="color: #0000bb;">或<br />
</span><span style="color: #007700;">&lt;</span><span style="color: #0000bb;">FilesMatch </span><span style="color: #dd0000;">".(htm|html|css|js)$"</span><span style="color: #007700;">&gt;<br />
    </span><span style="color: #0000bb;">ForceType </span><span style="color: #dd0000;">'text/html; charset=UTF-8'<br />
</span><span style="color: #007700;">&lt;/</span><span style="color: #0000bb;">FilesMatch</span><span style="color: #007700;">&gt;</span> </span></code></div>
<p>注：需要注意的是配置参数的顺序对于结果起到重要的作用。比如在配置文件中有如下设置：</p>
<div class="xoopsCode"><code><span style="color: #000000;"><span style="color: #0000bb;"><br />
AddCharset UTF</span><span style="color: #007700;">-</span><span style="color: #0000bb;">8 </span><span style="color: #007700;">.</span><span style="color: #0000bb;">utf8<br />
AddCharset windows</span><span style="color: #007700;">-</span><span style="color: #0000bb;">1252 </span><span style="color: #007700;">.</span><span style="color: #0000bb;">html</span> </span></code></div>
<p>在这种配置下，文件example.utf8.html将使用windows-1252，而example.html.utf8将使用UTF-8字符编码；</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://looki.cn/348.html/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>win2003平台下的apache相关配置</title>
		<link>http://looki.cn/345.html</link>
		<comments>http://looki.cn/345.html#comments</comments>
		<pubDate>Thu, 30 Apr 2009 14:14:09 +0000</pubDate>
		<dc:creator>Looki</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://looki.cn/345.html</guid>
		<description><![CDATA[    貌似已经很久很久没有记些东西了，去年12月份的时候从F2blog转为WP，并在Host2ez上找了个免费空间后就一直没有再更新了，这月初Host2ez被持续攻击直至放弃国内虚拟主机服务，虽然我这个免费空间一直能正常使用，但是心里一直觉得不太放心，想想还是搬回自己的服务器算了。
    由于自己的服务器上一直都是IIS和apache同时运行，并且各自使用不同的端口，这次把WP搬回来后放IIS上运行总觉得不爽，而apache上运行的又是一套不对外的系统，需要在网址后加上端口号才能正常访问。于是想着干脆彻底放弃IIS，把80端口也配置到apache上算了，经过一番摸索，apache使用多个端口来运行多个网站顺利运行。

以下内容均来自网络，在此做个笔记。
1、apache使用多个端口（我使用的是第一种方法）
1、建立虚拟主机，用不同的端口
修改httpd.conf
增加 listen 8080
NameVirtualHost www.xxx.com:8080
&#60;VirtualHost www.xxx.com:8080&#62;
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot &#8220;E:/fanf/actova &#8221;
ServerName dummy-host.example.com
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
&#60;/VirtualHost&#62;
就可以了
2、创建新的httpd.conf 文件
你可以这个样子，把httpd.conf 文件拷贝一份，起一个新的名字例如httpd-test.conf
修改其中的pid 等信息
例如PidFile logs/httpd-test.pid
DocumentRoot
listen 8080
等信息
然后启动apache
/home/apache/bin/apachectl -f /home/apache/conf/httpd-test.conf -k start
2、Apache 防盗链
1、使用 rewrite 技术实现 Apache 防盗链
　　Apache 防盗链的第一种实现方法，可以用 rewrite 实现。首先要确认 Apache 的 rewrite module 可用：能够控制 Apache httpd.conf 文件的，打开 httpd.conf，确保有这么一行配置:　
LoadModule rewrite_module modules/mod_rewrite.so
然后在找到自己网站对应的 配置的地方，加入下列代码：
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://example.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://example.com$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.example.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.example.com$ [...]]]></description>
			<content:encoded><![CDATA[<p>    貌似已经很久很久没有记些东西了，去年12月份的时候从F2blog转为WP，并在Host2ez上找了个免费空间后就一直没有再更新了，这月初Host2ez被持续攻击直至放弃国内虚拟主机服务，虽然我这个免费空间一直能正常使用，但是心里一直觉得不太放心，想想还是搬回自己的服务器算了。<br />
    由于自己的服务器上一直都是IIS和apache同时运行，并且各自使用不同的端口，这次把WP搬回来后放IIS上运行总觉得不爽，而apache上运行的又是一套不对外的系统，需要在网址后加上端口号才能正常访问。于是想着干脆彻底放弃IIS，把80端口也配置到apache上算了，经过一番摸索，apache使用多个端口来运行多个网站顺利运行。<br />
<span id="more-345"></span><br />
以下内容均来自网络，在此做个笔记。<br />
1、apache使用多个端口（我使用的是第一种方法）</p>
<blockquote><p>1、建立虚拟主机，用不同的端口<br />
修改httpd.conf<br />
增加 listen 8080<br />
NameVirtualHost www.xxx.com:8080<br />
&lt;VirtualHost www.xxx.com:8080&gt;<br />
ServerAdmin webmaster@dummy-host.example.com<br />
DocumentRoot &#8220;E:/fanf/actova &#8221;<br />
ServerName dummy-host.example.com<br />
ErrorLog logs/dummy-host.example.com-error_log<br />
CustomLog logs/dummy-host.example.com-access_log common<br />
&lt;/VirtualHost&gt;<br />
就可以了</p>
<p>2、创建新的httpd.conf 文件<br />
你可以这个样子，把httpd.conf 文件拷贝一份，起一个新的名字例如httpd-test.conf<br />
修改其中的pid 等信息<br />
例如PidFile logs/httpd-test.pid<br />
DocumentRoot<br />
listen 8080<br />
等信息<br />
然后启动apache<br />
/home/apache/bin/apachectl -f /home/apache/conf/httpd-test.conf -k start</p></blockquote>
<p>2、Apache 防盗链</p>
<blockquote><p>1、使用 rewrite 技术实现 Apache 防盗链<br />
　　Apache 防盗链的第一种实现方法，可以用 rewrite 实现。首先要确认 Apache 的 rewrite module 可用：能够控制 Apache httpd.conf 文件的，打开 httpd.conf，确保有这么一行配置:　<br />
LoadModule rewrite_module modules/mod_rewrite.so<br />
然后在找到自己网站对应的 配置的地方，加入下列代码：<br />
RewriteEngine On<br />
RewriteCond %{HTTP_REFERER} !^<span style="color: #ff0000;">http://example.com/</span>.*$ [NC]<br />
RewriteCond %{HTTP_REFERER} !^<span style="color: #ff0000;">http://example.com</span>$ [NC]<br />
RewriteCond %{HTTP_REFERER} !^<span style="color: #ff0000;">http://www.example.com/</span>.*$ [NC]<br />
RewriteCond %{HTTP_REFERER} !^<span style="color: #ff0000;">http://www.example.com</span>$ [NC]<br />
RewriteRule .*\.(<span style="color: #00ff00;">gif|jpg|swf</span>)$ <span style="color: #0000ff;">http://www.example.com/about/nolink.png</span> [R,NC]</p>
<p>防盗链配置的说明：<br />
1. <span style="color: #ff0000;">红色</span>部分: 表示自己的信任站点。<br />
2. <span style="color: #00ff00;">绿色</span>部分: 要保护文件的扩展名(以|分开)。以这些为扩展名的文件，必须通过红色标注的网址引用，才可以访问。<br />
3. <span style="color: #0000ff;">蓝色</span>部分: 盗链后的重定向页面。用以输出警示信息，这张图片应该尽可能的小。</p></blockquote>
<p>以上代码也可以写在虚拟主机对应的.htacess文件中，不过需要注意的是，要使.htacess文件生效，一定要将AllowOverride None改为AllowOverride All，我就是在这里折腾了半天&#8230;</p>
<blockquote><p>2、使用 SetEnvIfNoCase 和 access 技术实现 Apache 防盗链<br />
编辑httpd.conf 或 .htaccess 文件，加入如下代码：<br />
SetEnvIfNoCase Referer &#8220;^<span style="color: #ff0000;">http://www.yourdomin.com</span>&#8221; local_ref=1<br />
SetEnvIfNoCase Referer &#8220;^<span style="color: #ff0000;">http://yourdomin.com</span>&#8221; local_ref=1<br />
＜FilesMatch &#8220;\.(<span style="color: #00ff00;">txt|doc|mp3|zip|rar|jpg|gif</span>)&#8221;&gt;<br />
Order Allow,Deny<br />
Allow from env=local_ref<br />
＜/FilesMatch&gt;<br />
其中<span style="color: #ff0000;">红色</span>的是您的网址，如果有多个，就加多行<br />
<span style="color: #00ff00;">绿色</span>的是您需要防盗链的文件后缀，中间用|隔开</p>
<p>还一种写法，是用正则的，这种写法在各个版本的apache比较通用。<br />
写法是<br />
SetEnvIfNoCase Referer &#8220;^<span style="color: #ff0000;">http://.*\.yourdomin\.com</span>&#8221; local_ref=1<br />
SetEnvIfNoCase Referer &#8220;<span style="color: #ff0000;">.*\.yourdomin\.com</span>&#8221; local_ref=1</p>
<p>＜FilesMatch &#8220;\.(<span style="color: #00ff00;">txt|doc|mp3|zip|rar|jpg|gif</span>)&#8221;&gt;<br />
Order Allow,Deny<br />
Allow from env=local_ref<br />
＜/FilesMatch&gt;<br />
其中红色的部分有一点区别,用正则写法, \ 符号代表转义，因为.本身在正则中有自己的作用。<br />
这样的设置有一个小问题。直接在地址栏中输入一个图片或者mp3的地址的时候，也无法访问。<br />
如果允许能直接访问这些文件，需要在刚才的配置中加上一句　<br />
SetEnvIfNoCase Referer &#8220;^$&#8221; local_ref=1<br />
如果要通过ip也能访问到这些文件，需要在上述配置中再加一句<br />
SetEnvIfNoCase Referer &#8220;^http://000\.000\.000\.000\.*&#8221; local_ref=1<br />
如果你有多台服务器，并且他们在一个ip段中<br />
那么上面这句可以写为　<br />
SetEnvIfNoCase Referer &#8220;^http://000\.000\.000\.*&#8221; local_ref=1<br />
上面两句配置都要主意其中第一个000前面没有那个“.”<br />
保存退出重起apache</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://looki.cn/345.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IIS6配置PHP5</title>
		<link>http://looki.cn/230.html</link>
		<comments>http://looki.cn/230.html#comments</comments>
		<pubDate>Wed, 13 Aug 2008 19:48:00 +0000</pubDate>
		<dc:creator>Looki</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[f2blog]]></category>
		<category><![CDATA[Win2003]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[Zblog]]></category>
		<category><![CDATA[数据转换]]></category>

		<guid isPermaLink="false">http://looki.cn/?p=230</guid>
		<description><![CDATA[     本来不想写的，但是每次弄这个总是会出现一些问题，还是记录一下吧。
      之前一直使用F2blog，一时手痒又想换成WP试试，刚好又找到一个F2blog To Wordpress的转换程序，就去找了个Wordpress2.51安装文件，在本地搭建好环境，居然一路很顺利的转换完成了，可是没想到在配置服务器时却一波三折…

安装PHP：
      我先去PHP官方下载了一个MSI的安装包，一路按提示安装下来居然自动的把IIS配置好了，用phpinfo()查看也能正常显示，但是…重启一次IIS后就白屏了，google了半天也没找到解决办法，卸载又重装N次都是如此。
      没办法，只好再试试手动安装了，又去下了个ZIP压缩包，解压到D：php，设定目录everyone权限，修改目录里面的php.ini-dist为php.ini,用记事本打开,查询extension=php_mysql.dll 把前面的;去掉.保存退出再搜索extension_dir修改为extension_dir = “D:phpext”
      然后在IIS控制台的“WEB服务器扩展”里面添加一个新的扩展：PHP，要求的文件为d:phpphp5isapi.dll，并设置扩展状态为允许；在“主目录”的“配置”里面的“映射”,添加可执行文件 d:phpphp5isapi.dll，扩展名 .php，其他的默认；最后在站点属性的”文档”里面添加一个默认主页index.php。
     再运行phpinfo()，结果又提示：No input file specified，google一下，原来是PHP.ini中的doc_root的原因，我原来配置PHP.ini的时候给它指定了一个路径，注释掉此行后，一切正常。
    上传WP文件和数据库，浏览首页，又提示：
Your PHP installation appears to be missing the MySQL extension which is required by WordPress
    嗯，Mysql扩展没有成功加载，原来是我忘记copy相关文件到系统目录了，马上将php_mysql.dll和libmysql.dll两个文件复制到windowssystem32目录下，再重启IIS，首页出来了。
    等等…怎么首页好像被扒了皮了，而且所有的链接全部都是localhost，唉…又忘记WP使用的是可恶的绝对链接了。没关系，好在我还有phpmyadmin，直接进入mySQL数据库，修改wp_options这个表单中的“home”和“siteurl”两项，把“localhost”替换成现在的地址，刷新一下，整个世界终于正常了，效果么，就是你现在看到的这个样子咯…
      虽然是成功的从F2blog转换到了Wordpress，但对于我这种懒人来说，WP还是麻烦了点，F2还是简实用啊，所以我也还没下定决心完全抛弃F2blog，唉…还是两套系统同时运行一段时间再说吧。
      F2Blog:http://looki.cn
      Wordpress：http://looki.cn
     PS：我还试了下从Wordpress转换到Z-Blog ，但是还是难以忍受那漫长文件重建体系，我还是等PJBlog 3再成熟点吧。
]]></description>
			<content:encoded><![CDATA[<p>     本来不想写的，但是每次弄这个总是会出现一些问题，还是记录一下吧。<br />
      之前一直使用F2blog，一时手痒又想换成WP试试，刚好又找到一个F2blog To Wordpress的<a href="http://www.baobaocool.com/read-223-åå+f2blogè½¬æ¢wordpressç¨åº.html" target="_blank"><span style="color: #3b5998;">转换程序</span></a>，就去找了个Wordpress2.51安装文件，在本地搭建好环境，居然一路很顺利的转换完成了，可是没想到在配置服务器时却一波三折…<br />
<span id="more-230"></span></p>
<p>安装PHP：<br />
      我先去PHP官方下载了一个MSI的安装包，一路按提示安装下来居然自动的把IIS配置好了，用phpinfo()查看也能正常显示，但是…重启一次IIS后就白屏了，google了半天也没找到解决办法，卸载又重装N次都是如此。<br />
      没办法，只好再试试手动安装了，又去下了个ZIP压缩包，解压到D：php，设定目录everyone权限，修改目录里面的php.ini-dist为php.ini,用记事本打开,查询extension=php_mysql.dll 把前面的;去掉.保存退出再搜索extension_dir修改为extension_dir = “D:phpext”<br />
      然后在IIS控制台的“WEB服务器扩展”里面添加一个新的扩展：PHP，要求的文件为d:phpphp5isapi.dll，并设置扩展状态为允许；在“主目录”的“配置”里面的“映射”,添加可执行文件 d:phpphp5isapi.dll，扩展名 .php，其他的默认；最后在站点属性的”文档”里面添加一个默认主页index.php。<br />
     再运行phpinfo()，结果又提示：No input file specified，google一下，原来是PHP.ini中的doc_root的原因，我原来配置PHP.ini的时候给它指定了一个路径，注释掉此行后，一切正常。<br />
    上传WP文件和数据库，浏览首页，又提示：</p>
<blockquote><p>Your PHP installation appears to be missing the MySQL extension which is required by WordPress</p></blockquote>
<p>    嗯，Mysql扩展没有成功加载，原来是我忘记copy相关文件到系统目录了，马上将php_mysql.dll和libmysql.dll两个文件复制到windowssystem32目录下，再重启IIS，首页出来了。<br />
    等等…怎么首页好像被扒了皮了，而且所有的链接全部都是localhost，唉…又忘记WP使用的是可恶的绝对链接了。没关系，好在我还有phpmyadmin，直接进入mySQL数据库，修改wp_options这个表单中的“home”和“siteurl”两项，把“localhost”替换成现在的地址，刷新一下，整个世界终于正常了，效果么，就是你现在看到的这个样子咯…<br />
      虽然是成功的从F2blog转换到了Wordpress，但对于我这种懒人来说，WP还是麻烦了点，F2还是简实用啊，所以我也还没下定决心完全抛弃F2blog，唉…还是两套系统同时运行一段时间再说吧。<br />
      F2Blog:<a href="http://looki.cn/" target="_blank"><span style="color: #3b5998;">http://looki.cn</span></a><br />
      Wordpress：<a href="http://looki.cn/" target="_blank"><span style="color: #3b5998;">http://looki.cn</span></a></p>
<p>     PS：我还试了下从<a href="http://bbs.rainbowsoft.org/viewthread.php?tid=11440" target="_blank"><span style="color: #3b5998;">Wordpress转换到Z-Blog </span></a>，但是还是难以忍受那漫长文件重建体系，我还是等<a href="http://bbs.pjhome.net/thread-37122-1-1.html" target="_blank"><span style="color: #3b5998;">PJBlog 3</span></a>再成熟点吧。</p>
]]></content:encoded>
			<wfw:commentRss>http://looki.cn/230.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WINDOWS系统下设置路由</title>
		<link>http://looki.cn/227.html</link>
		<comments>http://looki.cn/227.html#comments</comments>
		<pubDate>Fri, 18 Apr 2008 06:28:56 +0000</pubDate>
		<dc:creator>Looki</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[Win2003]]></category>
		<category><![CDATA[系统]]></category>

		<guid isPermaLink="false">http://looki.cn/?p=227</guid>
		<description><![CDATA[在WINDOWS下手动设置路由主要在DOS系统中命令符下(在运行输入栏中键入COMMAND或者CMD即可)进行。
键入命令ROUTE回车会出现大约几十行英文说明，主要解说在WINDOWS系统中如何添加、删除、修改路由。现简单介绍如下：
ROUTE命令格式如下：
ROUTE [-f] [-p] [command [destination] [MASK netmask] [gateway] [METRIC metric] [IF interface] 
其中 -f 参数用于清除路由表，-p参数用于永久保留某条路由（即在系统重启时不会丢失路由，但在WINDOWS95下无效）。 
Command主要有PRINT（打印）、ADD（添加）、DELETE（删除）、CHANGE（修改）共4个命令。
Destination代表所要达到的目标IP地址。
MASK是子网掩码的关键字。Netmask代表具体的子网掩码，如果不加说明，默认是255.255.255.255（单机IP地址），因此键入掩码时候要特别小心，要确认添加的是某个IP地址还是IP网段。如果代表全部出口子网掩码可用0.0.0.0。
Gateway代表出口网关。
其他interface和metric分别代表特殊路由的接口数目和到达目标地址的代价，一般可不予理会。
在WINDOWS系统下有4条最基本路由，永不消失，如果上述路由不完整，则说明TCP/IP的安装和运行存在某些最基本问题、或本机网络配置或者安装存在问题。
127.0.0.1用于测试回送（loopback）地址，不能作为有效的网络地址。PC1的IP地址为192.168.97.1，路由器1（用于上互联网）的局域口IP地址为192.168.97.10，路由器2（用于上办公网）的局域口IP地址为192.168.97.11。
如果PC1同时想访问互联网和办公网，通常情况是在WINDOWS网络属性反复修改默认网关，每次还只能访问1个网段，既不方便也非常麻烦。为解决这个问题可在DOS命令符下键入如下命令：

route add 0.0.0.0 maks 0.0.0.0 192.168.97.10（用于上互联网）、
route add 10.42.29.0 mask 255.255.255.0 192.168.97.11（用于上办公网）。

这样将互联网作为默认路由，办公网用作特殊路由添加，当然，如果还有其他系统，可采用同样路由添加。
为了确保路由正确、避免引起路由混乱，最好先删除路由，再添加路由。比如上面的命令可改为：

route delelte 0.0.0.0
route add 0.0.0.0 maks 0.0.0.0 192.168.97.10
route add 10.42.29.0 mask 255.255.255.0 192.168.97.11。

为了确保路由设置长久生效，可将上述命令加入AUTOEXEC.BAT文件中，即操作系统一启动就自动设置路由。当然也可在第一次添加路由时加入-P参数。
具体如下：

route -p add 0.0.0.0 maks 0.0.0.0 192.168.97.10
route -p add 10.42.29.0 mask 255.255.255.0 192.168.97.11。

 
这时用route print查看路由，就可以看到有两条永久路由添加到路由表中了。
]]></description>
			<content:encoded><![CDATA[<p>在WINDOWS下手动设置路由主要在DOS系统中命令符下(在运行输入栏中键入COMMAND或者CMD即可)进行。
<p>键入命令ROUTE回车会出现大约几十行英文说明，主要解说在WINDOWS系统中如何添加、删除、修改路由。现简单介绍如下：</p>
<p>ROUTE命令格式如下：</p>
<div style="margin: 0px 0px 5px; overflow: auto; width: auto; height: auto; background-color: #f9fbfc; text-align: left; border: #c3ced9 1px solid">ROUTE [-f] [-p] [command [destination] [MASK netmask] [gateway] [METRIC metric] [IF interface] </div>
<p>其中 -f 参数用于清除路由表，-p参数用于永久保留某条路由（即在系统重启时不会丢失路由，但在WINDOWS95下无效）。 <span id="more-227"></span></p>
<p>Command主要有PRINT（打印）、ADD（添加）、DELETE（删除）、CHANGE（修改）共4个命令。</p>
<p>Destination代表所要达到的目标IP地址。</p>
<p>MASK是子网掩码的关键字。Netmask代表具体的子网掩码，如果不加说明，默认是255.255.255.255（单机IP地址），因此键入掩码时候要特别小心，要确认添加的是某个IP地址还是IP网段。如果代表全部出口子网掩码可用0.0.0.0。</p>
<p>Gateway代表出口网关。</p>
<p>其他interface和metric分别代表特殊路由的接口数目和到达目标地址的代价，一般可不予理会。</p>
<p>在WINDOWS系统下有4条最基本路由，永不消失，如果上述路由不完整，则说明TCP/IP的安装和运行存在某些最基本问题、或本机网络配置或者安装存在问题。</p>
<p>127.0.0.1用于测试回送（loopback）地址，不能作为有效的网络地址。PC1的IP地址为192.168.97.1，路由器1（用于上互联网）的局域口IP地址为192.168.97.10，路由器2（用于上办公网）的局域口IP地址为192.168.97.11。</p>
<p>如果PC1同时想访问互联网和办公网，通常情况是在WINDOWS网络属性反复修改默认网关，每次还只能访问1个网段，既不方便也非常麻烦。为解决这个问题可在DOS命令符下键入如下命令：</p>
<div style="margin: 0px 0px 5px; overflow: auto; width: auto; height: auto; background-color: #f9fbfc; text-align: left; border: #c3ced9 1px solid">
<p>route add 0.0.0.0 maks 0.0.0.0 192.168.97.10（用于上互联网）、</p>
<p>route add 10.42.29.0 mask 255.255.255.0 192.168.97.11（用于上办公网）。</p>
</p></div>
<p>这样将互联网作为默认路由，办公网用作特殊路由添加，当然，如果还有其他系统，可采用同样路由添加。</p>
<p>为了确保路由正确、避免引起路由混乱，最好先删除路由，再添加路由。比如上面的命令可改为：</p>
<div style="margin: 0px 0px 5px; overflow: auto; width: auto; height: auto; background-color: #f9fbfc; text-align: left; border: #c3ced9 1px solid">
<p>route delelte 0.0.0.0</p>
<p>route add 0.0.0.0 maks 0.0.0.0 192.168.97.10</p>
<p>route add 10.42.29.0 mask 255.255.255.0 192.168.97.11。</p>
</p></div>
<p>为了确保路由设置长久生效，可将上述命令加入AUTOEXEC.BAT文件中，即操作系统一启动就自动设置路由。当然也可在第一次添加路由时加入-P参数。</p>
<p>具体如下：</p>
<div style="margin: 0px 0px 5px; overflow: auto; width: auto; height: auto; background-color: #f9fbfc; text-align: left; border: #c3ced9 1px solid">
<p>route -p add 0.0.0.0 maks 0.0.0.0 192.168.97.10</p>
<p>route -p add 10.42.29.0 mask 255.255.255.0 192.168.97.11。</p>
</p></div>
<p> 
<p>这时用route print查看路由，就可以看到有两条永久路由添加到路由表中了。</p>
]]></content:encoded>
			<wfw:commentRss>http://looki.cn/227.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>磁盘双击或右键出现打开方式终极解决方法</title>
		<link>http://looki.cn/223.html</link>
		<comments>http://looki.cn/223.html#comments</comments>
		<pubDate>Thu, 27 Mar 2008 03:54:35 +0000</pubDate>
		<dc:creator>Looki</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[病毒]]></category>

		<guid isPermaLink="false">http://looki.cn/?p=223</guid>
		<description><![CDATA[
Set WshShell = WScript.CreateObject(&#34;WScript.Shell&#34;)
p1 = &#34;HKEY_CLASSES_ROOTDirectoryshell&#34; p2 = &#34;none&#34;
WshShell.RegWrite p1, p2
p1 = &#34;HKEY_CLASSES_ROOTDriveshell&#34; WshShell.RegWrite p1, p2
X = WshShell.Run(&#34;REGSVR32 /I /S SHELL32.DLL&#34;,4,True) Set WshShell = Nothing
MyBox = MsgBox(&#34;Folders will now Open when double clicked&#34;, 4096, &#34;Finished!&#34;)

将上面引用框中的内容复制到记事本内，保存为open.vbs，双击运行即可，保证药到病除 注意：如果杀毒软件弹出警告，请选择忽略或跳过。

]]></description>
			<content:encoded><![CDATA[<div style="margin: 0px 0px 5px; overflow: auto; width: auto; height: auto; background-color: #f9fbfc; text-align: left; border: #c3ced9 1px solid">
<p>Set WshShell = WScript.CreateObject(&quot;WScript.Shell&quot;)</p>
<p>p1 = &quot;HKEY_CLASSES_ROOTDirectoryshell&quot;<br /> p2 = &quot;none&quot;</p>
<p>WshShell.RegWrite p1, p2</p>
<p>p1 = &quot;HKEY_CLASSES_ROOTDriveshell&quot;<br /> WshShell.RegWrite p1, p2</p>
<p>X = WshShell.Run(&quot;REGSVR32 /I /S SHELL32.DLL&quot;,4,True)<br /> Set WshShell = Nothing</p>
<p>MyBox = MsgBox(&quot;Folders will now Open when double clicked&quot;, 4096, &quot;Finished!&quot;)</p>
</p></div>
<p><span id="more-223"></span>将上面引用框中的内容复制到记事本内，保存为open.vbs，双击运行即可，保证药到病除<br /> 注意：如果杀毒软件弹出警告，请选择忽略或跳过。</p>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://looki.cn/223.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

