<?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"
	>

<channel>
	<title>murray-专注于网站建设及优化</title>
	<atom:link href="http://murray.cn/index.php/feed/" rel="self" type="application/rss+xml" />
	<link>http://murray.cn</link>
	<description>murray的后院</description>
	<pubDate>Thu, 22 Mar 2012 06:53:23 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
	<language>en</language>
			<item>
		<title>如何让Linux后台运行命令或php</title>
		<link>http://murray.cn/index.php/2012/03/how-to-nohup-linux-background-command-php-jobs-fg/</link>
		<comments>http://murray.cn/index.php/2012/03/how-to-nohup-linux-background-command-php-jobs-fg/#comments</comments>
		<pubDate>Thu, 22 Mar 2012 06:53:23 +0000</pubDate>
		<dc:creator>murray</dc:creator>
		
		<category><![CDATA[技术研究]]></category>

		<category><![CDATA[fg]]></category>

		<category><![CDATA[jobs]]></category>

		<category><![CDATA[linux]]></category>

		<category><![CDATA[nohup]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[ssh]]></category>

		<category><![CDATA[telnet]]></category>

		<guid isPermaLink="false">http://murray.cn/?p=1240</guid>
		<description><![CDATA[用 telnet/ssh 登录Linux 服务器，运行了一些耗时较长的任务， 结果却因为关闭远程窗口任务中途失败。这是我们就需要用到Linux的后台运行命令
基础方法：下达的命令后面加上&#038;，就可以使该命令在后台进行工作，这样做最大的好处就是不怕被ctrl+c这个中断指令所中断。可以通过执行fg来将其恢复到前台。有多个进程在后台运行，需要恢复到前台来执行的时候，就要可以用jobs列出所有在后台执行的进程，那个中括号([ ])里面的数字就是jobs代号，从而通过fg 数字恢复指定的后台进程.
进阶方法：以上方法只是把命令放入后台，他还是会跟远程窗口绑定在一起，一旦远程窗口关闭，这些后台运行的资源也会被释放，从而是任务终止，要想真正后台运行就需要用nohup
nohup php cli.php &#038;
会有提示：
[~]$ appending output to nohup.out
运行成功，同时把程序运行的输出信息放到当前目录的 nohup.out 文件中去
这样就是真正的后台运行了
]]></description>
			<content:encoded><![CDATA[<p>用 telnet/ssh 登录Linux 服务器，运行了一些耗时较长的任务， 结果却因为关闭远程窗口任务中途失败。这是我们就需要用到Linux的后台运行命令</p>
<p>基础方法：下达的命令后面加上&#038;，就可以使该命令在后台进行工作，这样做最大的好处就是不怕被ctrl+c这个中断指令所中断。可以通过执行fg来将其恢复到前台。有多个进程在后台运行，需要恢复到前台来执行的时候，就要可以用jobs列出所有在后台执行的进程，那个中括号([ ])里面的数字就是jobs代号，从而通过fg 数字恢复指定的后台进程.</p>
<p>进阶方法：以上方法只是把命令放入后台，他还是会跟远程窗口绑定在一起，一旦远程窗口关闭，这些后台运行的资源也会被释放，从而是任务终止，要想真正后台运行就需要用nohup<br />
nohup php cli.php &#038;<br />
会有提示：<br />
[~]$ appending output to nohup.out<br />
运行成功，同时把程序运行的输出信息放到当前目录的 nohup.out 文件中去<br />
这样就是真正的后台运行了</p>
]]></content:encoded>
			<wfw:commentRss>http://murray.cn/index.php/2012/03/how-to-nohup-linux-background-command-php-jobs-fg/feed/</wfw:commentRss>
		</item>
		<item>
		<title>centos6服务器YUM安装LNMP(LINUX+NGINX+MYSQL+PHP)</title>
		<link>http://murray.cn/index.php/2012/03/centos6-linux-yum-nginx-mysql-php-lnmp/</link>
		<comments>http://murray.cn/index.php/2012/03/centos6-linux-yum-nginx-mysql-php-lnmp/#comments</comments>
		<pubDate>Tue, 20 Mar 2012 07:58:31 +0000</pubDate>
		<dc:creator>murray</dc:creator>
		
		<category><![CDATA[技术研究]]></category>

		<category><![CDATA[centos]]></category>

		<category><![CDATA[linux]]></category>

		<category><![CDATA[lnmp]]></category>

		<category><![CDATA[mysql]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[yum]]></category>

		<guid isPermaLink="false">http://murray.cn/?p=1238</guid>
		<description><![CDATA[之前都用的lamp，这次配置一个lnmp来看看，试试Nginx是不是好用
关闭SELINUX
vi /etc/selinux/config
#SELINUX=enforcing #注释掉
#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加
shutdown -r now #重启系统
安装ngnix
安装GCC编译器及相关工具
yum -y install gcc gcc-c++ autoconf automake
安装模块依赖的库
yum -y install zlib zlib-devel openssl openssl&#8211;devel pcre pcre-devel
更新系统时间
ntpdate time.nist.gov
让对时服务开机启动
chkconfig ntpd on
如果需要编译安装最新的
获取ngnix版本
wget http://nginx.org/download/nginx-1.0.14.tar.gz
tar zxvf nginx-1.0.14.tar.gz
cd nginx-1.0.14
直接yum安装
yum install -y nginx
将安装在/usr/share/nginx/
启动nginx
service ngnix start
安装PHP
cd /etc/yum.repos.d
wget http://dev.centos.org/centos/5/CentOS-Testing.repo
rpm &#8211;import http://dev.centos.org/centos/RPM-GPG-KEY-CentOS-testing
yum install -y php php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt [...]]]></description>
			<content:encoded><![CDATA[<p>之前都用的lamp，这次配置一个lnmp来看看，试试Nginx是不是好用</p>
<p>关闭SELINUX<br />
vi /etc/selinux/config<br />
#SELINUX=enforcing #注释掉<br />
#SELINUXTYPE=targeted #注释掉<br />
SELINUX=disabled #增加</p>
<p>shutdown -r now #重启系统</p>
<p>安装ngnix</p>
<p>安装GCC编译器及相关工具<br />
yum -y install gcc gcc-c++ autoconf automake<br />
安装模块依赖的库<br />
yum -y install zlib zlib-devel openssl openssl&#8211;devel pcre pcre-devel<br />
更新系统时间<br />
ntpdate time.nist.gov<br />
让对时服务开机启动<br />
chkconfig ntpd on</p>
<p>如果需要编译安装最新的<br />
获取ngnix版本<br />
wget http://nginx.org/download/nginx-1.0.14.tar.gz<br />
tar zxvf nginx-1.0.14.tar.gz<br />
cd nginx-1.0.14</p>
<p>直接yum安装<br />
yum install -y nginx<br />
将安装在/usr/share/nginx/<br />
启动nginx<br />
service ngnix start</p>
<p>安装PHP</p>
<p>cd /etc/yum.repos.d<br />
wget http://dev.centos.org/centos/5/CentOS-Testing.repo<br />
rpm &#8211;import http://dev.centos.org/centos/RPM-GPG-KEY-CentOS-testing</p>
<p>yum install -y php php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt libmcrypt-devel php-fpm</p>
<p>#启动php-fpm<br />
/etc/rc.d/init.d/php-fpm start<br />
设置自动启动<br />
chkconfig php-fpm on</p>
<p>配置nginx支持php<br />
cp /etc/nginx/nginx.conf /etc/nginx/nginx.confbak<br />
vi /etc/nginx/nginx.conf<br />
#修改nginx运行账号为：nginx组的nginx用户<br />
     user nginx nginx; </p>
<p>cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.confbak<br />
vi /etc/nginx/conf.d/default.conf<br />
#增加index.php<br />
index index.php index.html index.htm;<br />
取消FastCGI server部分location的注释,并要注意fastcgi_param行的参数,改为$document_root$fastcgi_script_name,或者使用绝对路径</p>
<p>配置php-fpm<br />
cp /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.confbak<br />
vi /etc/php-fpm.d/www.conf<br />
#修改用户为nginx<br />
user = nginx<br />
#修改组为nginx<br />
group = nginx</p>
<p>安装MYSQL<br />
yum -y install mysql mysql-server<br />
启动mysql<br />
service mysqld start<br />
chkconfig mysqld on #设为开机启动</p>
<p>为root账户设置密码<br />
mysql_secure_installation</p>
<p>重启所有服务<br />
service mysqld restart<br />
service nginx restart<br />
/etc/rc.d/init.d/php-fpm restart<br />
测试成功</p>
<p>安装ssh服务器和subversion服务器<br />
yum install -y openssh-server<br />
yum install -y  subversion</p>
]]></content:encoded>
			<wfw:commentRss>http://murray.cn/index.php/2012/03/centos6-linux-yum-nginx-mysql-php-lnmp/feed/</wfw:commentRss>
		</item>
		<item>
		<title>如何使用php日志调试rewrite规则(不受apache和iis限制)</title>
		<link>http://murray.cn/index.php/2012/02/rewrite-php-log-apache-iis/</link>
		<comments>http://murray.cn/index.php/2012/02/rewrite-php-log-apache-iis/#comments</comments>
		<pubDate>Tue, 28 Feb 2012 08:36:37 +0000</pubDate>
		<dc:creator>murray</dc:creator>
		
		<category><![CDATA[技术研究]]></category>

		<category><![CDATA[Apache]]></category>

		<category><![CDATA[iis]]></category>

		<category><![CDATA[log]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Rewrite]]></category>

		<guid isPermaLink="false">http://murray.cn/?p=1235</guid>
		<description><![CDATA[需要在IIS和apache同时调试好静态重写的规则，发现调试rewrite规则真是个神一样的工作，你根本就不知道它到底怎么翻译的，解析到哪里去了。
在网上搜了一下，发现一个朋友在apache下开启了配置文件中的一下两个选项
RewriteLog &#8220;/myfolder/mylogfile.log&#8221;
RewriteLogLevel 9
这样apache可以自动生成一个重写日志，看着日志调试就方便了
Rewriteloglevel 0 代表关闭，9代表开启最大debug输出，调为9可以看到最详细的重写匹配信息
可是IIS环境呢，这个有点麻烦，于是我用网上搜的一个log类来做日志
大致原理是这样的，在网站的index.php这里写一段
$log = new log(“/logs/sys.log”);
$log->logThis($_SERVER["REQUEST_URI"]);
//$_SERVER["REQUEST_URI"] 是重写的实际执行页面
///logs/sys.log也可以写成别的地址，比如你网站根目录的一个地址，这样你可以通过浏览器来查看日志了
这样的日志结果会是这样的效果
2012-02-28	16:27:04	115.174.56.7	/index.php?action=list&#038;catid=4&#038;pageid=3
2012-02-28	16:27:06	115.174.56.7	/index.php?action=list&#038;catid=7&#038;pageid=6
2012-02-28	16:27:08	115.174.56.7	/index.php?action=list&#038;catid=13&#038;pageid=2
有了日志调试，规则就不再是问题了
]]></description>
			<content:encoded><![CDATA[<p>需要在IIS和apache同时调试好静态重写的规则，发现调试rewrite规则真是个神一样的工作，你根本就不知道它到底怎么翻译的，解析到哪里去了。</p>
<p>在网上搜了一下，发现一个朋友在apache下开启了配置文件中的一下两个选项<br />
RewriteLog &#8220;/myfolder/mylogfile.log&#8221;<br />
RewriteLogLevel 9<br />
这样apache可以自动生成一个重写日志，看着日志调试就方便了<br />
Rewriteloglevel 0 代表关闭，9代表开启最大debug输出，调为9可以看到最详细的重写匹配信息</p>
<p>可是IIS环境呢，这个有点麻烦，于是我用网上搜的一个log类来做日志<br />
大致原理是这样的，在网站的index.php这里写一段<br />
$log = new log(“/logs/sys.log”);<br />
$log->logThis($_SERVER["REQUEST_URI"]);<br />
//$_SERVER["REQUEST_URI"] 是重写的实际执行页面<br />
///logs/sys.log也可以写成别的地址，比如你网站根目录的一个地址，这样你可以通过浏览器来查看日志了</p>
<p>这样的日志结果会是这样的效果<br />
2012-02-28	16:27:04	115.174.56.7	/index.php?action=list&#038;catid=4&#038;pageid=3<br />
2012-02-28	16:27:06	115.174.56.7	/index.php?action=list&#038;catid=7&#038;pageid=6<br />
2012-02-28	16:27:08	115.174.56.7	/index.php?action=list&#038;catid=13&#038;pageid=2</p>
<p>有了日志调试，规则就不再是问题了</p>
]]></content:encoded>
			<wfw:commentRss>http://murray.cn/index.php/2012/02/rewrite-php-log-apache-iis/feed/</wfw:commentRss>
		</item>
		<item>
		<title>利用iphone4联通版制作随身网络(个人热点的使用)</title>
		<link>http://murray.cn/index.php/2012/02/network-iphone4-liantong-gerenredian/</link>
		<comments>http://murray.cn/index.php/2012/02/network-iphone4-liantong-gerenredian/#comments</comments>
		<pubDate>Sat, 25 Feb 2012 04:20:26 +0000</pubDate>
		<dc:creator>murray</dc:creator>
		
		<category><![CDATA[工作日志]]></category>

		<category><![CDATA[iphone]]></category>

		<category><![CDATA[network]]></category>

		<guid isPermaLink="false">http://murray.cn/?p=1233</guid>
		<description><![CDATA[经常要在外面做东西，虽然大部分地方都有wifi，但保不齐有的地方没有无线，又必须上网。昨天跟朋友聊天，他教了我一个相当给力的方法。
如何利用个人热点制作随身网络
首先要先看你的iphone4是不是有足够的流量，如果是包月1g，你又用不完，像我一样，那就看下去吧
如果想开启个人热点，据说必须是越狱的机器，而且是4.3以上
这样在你的手机“设置”中就会有一个叫“个人热点”的选项，点击进入，选择开启“个人热点”
下面会随机产生一个“无线局域网”密码，个人建议你设置成你独有的，自己好记的密码，这样可以无线局域网就开启了
作为一个随身的无线局域网，个人热点有三种方式：wifi，蓝牙，usb
最方便的就是wifi
现在打开你的电脑，打开无线网络，搜索就会发现一个“iphone4”的网络，输入你的密码
哈哈，你就可以上网了
这样的网络流量很珍贵，所以我开启了360的流量监控，时时提醒我用了多少，千万别超
如果你想改iphone4这个无线网络的名称，你可以用usb连接itunes，在那里修改名称
好，打完收工
]]></description>
			<content:encoded><![CDATA[<p>经常要在外面做东西，虽然大部分地方都有wifi，但保不齐有的地方没有无线，又必须上网。昨天跟朋友聊天，他教了我一个相当给力的方法。<br />
如何利用个人热点制作随身网络<br />
首先要先看你的iphone4是不是有足够的流量，如果是包月1g，你又用不完，像我一样，那就看下去吧<br />
如果想开启个人热点，据说必须是越狱的机器，而且是4.3以上<br />
这样在你的手机“设置”中就会有一个叫“个人热点”的选项，点击进入，选择开启“个人热点”<br />
下面会随机产生一个“无线局域网”密码，个人建议你设置成你独有的，自己好记的密码，这样可以无线局域网就开启了<br />
作为一个随身的无线局域网，个人热点有三种方式：wifi，蓝牙，usb<br />
最方便的就是wifi<br />
现在打开你的电脑，打开无线网络，搜索就会发现一个“iphone4”的网络，输入你的密码<br />
哈哈，你就可以上网了</p>
<p>这样的网络流量很珍贵，所以我开启了360的流量监控，时时提醒我用了多少，千万别超<br />
如果你想改iphone4这个无线网络的名称，你可以用usb连接itunes，在那里修改名称</p>
<p>好，打完收工</p>
]]></content:encoded>
			<wfw:commentRss>http://murray.cn/index.php/2012/02/network-iphone4-liantong-gerenredian/feed/</wfw:commentRss>
		</item>
		<item>
		<title>关于apache下网站加速利器mod-pagespeed</title>
		<link>http://murray.cn/index.php/2012/01/linux-apache-mod-pagespeed/</link>
		<comments>http://murray.cn/index.php/2012/01/linux-apache-mod-pagespeed/#comments</comments>
		<pubDate>Sat, 14 Jan 2012 15:23:36 +0000</pubDate>
		<dc:creator>murray</dc:creator>
		
		<category><![CDATA[技术研究]]></category>

		<category><![CDATA[Apache]]></category>

		<category><![CDATA[linux]]></category>

		<category><![CDATA[mod-pagespeed]]></category>

		<guid isPermaLink="false">http://murray.cn/?p=1230</guid>
		<description><![CDATA[自从有了自己独立服务器，一直认为自己网站速度还是挺快的，但自从上了监控宝之后，发现其实自己服务器的服务经常断。有很多时候网站是不可用的，这个让我很郁闷。一直在看dbanotes（大冯）的博客，知道他的服务器跟我都是在linode下，并且都是linux。然而我们的网站访问速度大相径庭。这一点肯定是我服务器没有配置好。
于是我通过查看两个网站页面HTTP状态，发现两个网站的网页返回HEAD信息差别不大，只有一个X-Mod-Pagespeed信息不知道是做什么的。看来这个参数的作用很大。
原来这是贴心的 Google 特为懒惰型网站主提供了傻瓜化解决方案，据称该模块可以有效将网页加载速度提高50%，Google这款加速模块简单的解决了许多复情况的问题：
-如果你的网站采用apache构建服务器，不需要对网站CMS系统进行处理即可应用；
-加速模块可以自行对网络传输的html字节优化及对图象，css进入压缩优化传输；
-智能缓存是一大亮点，它可以自动智能缓存，加速下载
以下是这个模块的版本
mod_pagespeed 32-bit .deb (Debian/Ubuntu)
mod_pagespeed 64-bit .deb (Debian/Ubuntu)
mod_pagespeed 32-bit .rpm (CentOS/Fedora)
mod_pagespeed 64-bit .rpm (CentOS/Fedora)
具体的安装方法：
首先先下载模块到服务器
如果你是debian的系统请运行一下命令
dpkg -i mod-pagespeed-*.deb
apt-get -f install
如果是centos的系统则
yum install at
rpm -U mod-pagespeed-*.rpm
重启APACHE后你会发现速度真的快了
]]></description>
			<content:encoded><![CDATA[<p>自从有了自己独立服务器，一直认为自己网站速度还是挺快的，但自从上了监控宝之后，发现其实自己服务器的服务经常断。有很多时候网站是不可用的，这个让我很郁闷。一直在看dbanotes（大冯）的博客，知道他的服务器跟我都是在linode下，并且都是linux。然而我们的网站访问速度大相径庭。这一点肯定是我服务器没有配置好。<br />
于是我通过查看两个网站页面HTTP状态，发现两个网站的网页返回HEAD信息差别不大，只有一个X-Mod-Pagespeed信息不知道是做什么的。看来这个参数的作用很大。<br />
原来这是贴心的 Google 特为懒惰型网站主提供了傻瓜化解决方案，据称该模块可以有效将网页加载速度提高50%，Google这款加速模块简单的解决了许多复情况的问题：<br />
-如果你的网站采用apache构建服务器，不需要对网站CMS系统进行处理即可应用；<br />
-加速模块可以自行对网络传输的html字节优化及对图象，css进入压缩优化传输；<br />
-智能缓存是一大亮点，它可以自动智能缓存，加速下载</p>
<p>以下是这个模块的版本<br />
mod_pagespeed 32-bit .deb (Debian/Ubuntu)<br />
mod_pagespeed 64-bit .deb (Debian/Ubuntu)<br />
mod_pagespeed 32-bit .rpm (CentOS/Fedora)<br />
mod_pagespeed 64-bit .rpm (CentOS/Fedora)<br />
具体的安装方法：<br />
首先先下载模块到服务器<br />
如果你是debian的系统请运行一下命令<br />
dpkg -i mod-pagespeed-*.deb<br />
apt-get -f install<br />
如果是centos的系统则<br />
yum install at<br />
rpm -U mod-pagespeed-*.rpm</p>
<p>重启APACHE后你会发现速度真的快了</p>
]]></content:encoded>
			<wfw:commentRss>http://murray.cn/index.php/2012/01/linux-apache-mod-pagespeed/feed/</wfw:commentRss>
		</item>
		<item>
		<title>php中json编码和解码的一些提示</title>
		<link>http://murray.cn/index.php/2011/12/php-json-encode-decode-array-object/</link>
		<comments>http://murray.cn/index.php/2011/12/php-json-encode-decode-array-object/#comments</comments>
		<pubDate>Sat, 31 Dec 2011 06:56:12 +0000</pubDate>
		<dc:creator>murray</dc:creator>
		
		<category><![CDATA[技术研究]]></category>

		<category><![CDATA[array]]></category>

		<category><![CDATA[JSON]]></category>

		<category><![CDATA[json_decode]]></category>

		<category><![CDATA[json_encode]]></category>

		<category><![CDATA[object]]></category>

		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://murray.cn/?p=1227</guid>
		<description><![CDATA[对于php下的web service应用，json因其快速，轻量在小数据量传输的时候非常有优势，但用的时候有些小细节需要注意。我就是把数组存进去，再取出来的时候发现变成对象了，才发现原来是这样。
在运行环境上，json在php5.2以上才是内置的。
常用的方法是json_encode和json_decode。
json_encode的参数只有一个，就是要被转换的数据,而json_decode就不一样，他可以把json格式转换成对象(object)和数组两种
下面是个例子
$arr = array(&#8221;1&#8243;,&#8221;2&#8243;,&#8221;3&#8243;);
print_r($arr);
echo json_encode($arr);
print_r(json_decode(json_encode($arr)));
print_r(json_decode(json_encode($arr), true));
如果数组转成json，想解码回来的，别忘了加个参数true
]]></description>
			<content:encoded><![CDATA[<p>对于php下的web service应用，json因其快速，轻量在小数据量传输的时候非常有优势，但用的时候有些小细节需要注意。我就是把数组存进去，再取出来的时候发现变成对象了，才发现原来是这样。<br />
在运行环境上，json在php5.2以上才是内置的。<br />
常用的方法是json_encode和json_decode。<br />
json_encode的参数只有一个，就是要被转换的数据,而json_decode就不一样，他可以把json格式转换成对象(object)和数组两种<br />
下面是个例子<br />
$arr = array(&#8221;1&#8243;,&#8221;2&#8243;,&#8221;3&#8243;);<br />
print_r($arr);<br />
echo json_encode($arr);<br />
print_r(json_decode(json_encode($arr)));<br />
print_r(json_decode(json_encode($arr), true));</p>
<p>如果数组转成json，想解码回来的，别忘了加个参数true</p>
]]></content:encoded>
			<wfw:commentRss>http://murray.cn/index.php/2011/12/php-json-encode-decode-array-object/feed/</wfw:commentRss>
		</item>
		<item>
		<title>本博已于今天正式迁移到Linode</title>
		<link>http://murray.cn/index.php/2011/12/murraycn-move-to-linode/</link>
		<comments>http://murray.cn/index.php/2011/12/murraycn-move-to-linode/#comments</comments>
		<pubDate>Tue, 06 Dec 2011 09:05:14 +0000</pubDate>
		<dc:creator>murray</dc:creator>
		
		<category><![CDATA[工作日志]]></category>

		<category><![CDATA[linode]]></category>

		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://murray.cn/?p=1225</guid>
		<description><![CDATA[为了便于管理今天本博已正式迁移到了linode，linode在东京的机房步给力啊，怎么有时候会ping超时呢
特此记录以下。
]]></description>
			<content:encoded><![CDATA[<p>为了便于管理今天本博已正式迁移到了linode，linode在东京的机房步给力啊，怎么有时候会ping超时呢</p>
<p>特此记录以下。</p>
]]></content:encoded>
			<wfw:commentRss>http://murray.cn/index.php/2011/12/murraycn-move-to-linode/feed/</wfw:commentRss>
		</item>
		<item>
		<title>游戏服务器管理-文件同步的解决方案</title>
		<link>http://murray.cn/index.php/2011/07/game-linux-server-rsync-daemon/</link>
		<comments>http://murray.cn/index.php/2011/07/game-linux-server-rsync-daemon/#comments</comments>
		<pubDate>Tue, 05 Jul 2011 07:49:34 +0000</pubDate>
		<dc:creator>murray</dc:creator>
		
		<category><![CDATA[工作日志]]></category>

		<guid isPermaLink="false">http://www.murray.cn/?p=1220</guid>
		<description><![CDATA[服务器均使用LINUX的CENTOS，同步程序使用Rsync，台湾服务器为Rsync的服务端
服务端配置
同步软件安装
yum -y install xinetd
启动rsync服务端
#rsync &#8211;daemon
配置同步软件为可用
vi /etc/xinetd.d/rsync
# default: off
# description: The rsync server is a good addition to an ftp server, as it /
#      allows crc checksumming etc.
service rsync
{
disable               = no       [...]]]></description>
			<content:encoded><![CDATA[<p>服务器均使用LINUX的CENTOS，同步程序使用Rsync，台湾服务器为Rsync的服务端</p>
<p>服务端配置</p>
<p>同步软件安装<br />
yum -y install xinetd</p>
<p>启动rsync服务端<br />
#rsync &#8211;daemon</p>
<p>配置同步软件为可用<br />
vi /etc/xinetd.d/rsync</p>
<p># default: off<br />
# description: The rsync server is a good addition to an ftp server, as it /<br />
#      allows crc checksumming etc.<br />
service rsync<br />
{<br />
disable               = no           // change<br />
socket_type      = stream<br />
wait                   = no<br />
user                 = root<br />
server             = /usr/bin/rsync<br />
server_args    = &#8211;daemon<br />
log_on_failure   += USERID<br />
}<br />
配置本地同步参数<br />
vi /etc/rsyncd.conf</p>
<p>[game-test-taiwan]<br />
path = /var/www/<br />
host allow = xx.xx.xx.xx<br />
host deny = *<br />
list = true<br />
uid = root<br />
gid = root</p>
<p>客户端配置</p>
<p>安装同步软件<br />
yum install -y rsync<br />
配置排除指定目录或文件(每条记录占一行，支持通配符)<br />
vi /etc/rsync-exclude-test</p>
<p>/xxxxxx</p>
<p>执行同步(从服务器端下拉)<br />
rsync -avz &#8211;delete &#8211;exclude-from=/etc/rsync-exclude-test 203.69.85.43::game-test-taiwan /var/backup<br />
执行同步(从客户端上传)<br />
rsync -avz &#8211;delete &#8211;exclude-from=/etc/rsync-exclude-test /var/backup 203.69.85.43::game-test-taiwan/forrsync</p>
]]></content:encoded>
			<wfw:commentRss>http://murray.cn/index.php/2011/07/game-linux-server-rsync-daemon/feed/</wfw:commentRss>
		</item>
		<item>
		<title>wordpress获取当前分类页的ID</title>
		<link>http://murray.cn/index.php/2011/04/wordpress-cat-id-is_category-get_queried_object_id/</link>
		<comments>http://murray.cn/index.php/2011/04/wordpress-cat-id-is_category-get_queried_object_id/#comments</comments>
		<pubDate>Sat, 30 Apr 2011 11:47:33 +0000</pubDate>
		<dc:creator>murray</dc:creator>
		
		<category><![CDATA[技术研究]]></category>

		<category><![CDATA[cat-id]]></category>

		<category><![CDATA[get_queried_object_id]]></category>

		<category><![CDATA[is_category]]></category>

		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.murray.cn/?p=1218</guid>
		<description><![CDATA[最近搞WORDPRESS的最新版，做模板的时候想获取当前分类的ID，以下是实现代码
获取当前分类页的ID
&#60;?php if (is_category()) {
 global $wp_query;
 $cat_id = $wp_query-&#62;get_queried_object_id();
 }
?&#62;
]]></description>
			<content:encoded><![CDATA[<p>最近搞WORDPRESS的最新版，做模板的时候想获取当前分类的ID，以下是实现代码</p>
<div><span>获取当前分类页的ID</span></div>
<div><span>&lt;?php if (is_category()) {</span></div>
<div><span> global $wp_query;</span></div>
<div><span> $cat_id = $wp_query-&gt;get_queried_object_id();</span></div>
<div><span> }</span></div>
<div><span>?&gt;</span></div>
]]></content:encoded>
			<wfw:commentRss>http://murray.cn/index.php/2011/04/wordpress-cat-id-is_category-get_queried_object_id/feed/</wfw:commentRss>
		</item>
		<item>
		<title>android开发笔记</title>
		<link>http://murray.cn/index.php/2011/04/android%e5%bc%80%e5%8f%91%e7%ac%94%e8%ae%b0/</link>
		<comments>http://murray.cn/index.php/2011/04/android%e5%bc%80%e5%8f%91%e7%ac%94%e8%ae%b0/#comments</comments>
		<pubDate>Fri, 29 Apr 2011 11:40:13 +0000</pubDate>
		<dc:creator>murray</dc:creator>
		
		<category><![CDATA[技术研究]]></category>

		<category><![CDATA[activitymanager]]></category>

		<category><![CDATA[android]]></category>

		<category><![CDATA[androidmanifest]]></category>

		<category><![CDATA[denied]]></category>

		<category><![CDATA[exception]]></category>

		<category><![CDATA[Permission]]></category>

		<guid isPermaLink="false">http://www.murray.cn/?p=1216</guid>
		<description><![CDATA[1. 修改了创建工程时候的默认activity的名称，发现发布项目时不能正常编译。编译的还是旧的名称，显示找不到：ActivityManager: Error: Activity class does not exist.
解决办法：在项目的根目录修改配置文件AndroidManifest.xml中的application中的activity
2. 对两个activity做跳转，发现部署后一直报错并“意外停止”，这是简单的小程序，不可能吃内存太多的。肯定是哪里不对。启用了debug模式，知道到logcat，发现里面有这样一句“ have you declared this activity in your AndroidManifest.xml”，看来又是AndroidManifest.xml的配置问题。果然在其中加了后，跳转后的activity正常了。
3. android程序在调试时出现了套接字异常“java.net.SocketException: Permission denied”。这是一个经典错误， Socket不能对外连接，错误不会被报出，调试的时候，能看到Exception,  一般是抛出 java.net.socketexception permission denied这个异常。只要你的程序想联网，就会抛出这个异常，最终联网失败。 原因是： 需要访问到网络必须要有权限，在AndroidManifest.xml中，需要进行如下配置：
4. could not write file images\/system.img, No space left on device一般的目录是这里C:\Documents and Settings\Administrator\.android，而这个盘已经满了，只剩下几十M的容量是不够的。（系统盘一般是C盘），因为空间不足就无法启动，删了一些文件后重新运行eclipse就好了
5. 往string[] 添加元素的方法，一个for循环中 string[i] = 对应item[i]
]]></description>
			<content:encoded><![CDATA[<p>1. 修改了创建工程时候的默认activity的名称，发现发布项目时不能正常编译。编译的还是旧的名称，显示找不到：ActivityManager: Error: Activity class does not exist.<br />
解决办法：在项目的根目录修改配置文件AndroidManifest.xml中的application中的activity<br />
2. 对两个activity做跳转，发现部署后一直报错并“意外停止”，这是简单的小程序，不可能吃内存太多的。肯定是哪里不对。启用了debug模式，知道到logcat，发现里面有这样一句“ have you declared this activity in your AndroidManifest.xml”，看来又是AndroidManifest.xml的配置问题。果然在其中加了后，跳转后的activity正常了。<br />
3. android程序在调试时出现了套接字异常“java.net.SocketException: Permission denied”。这是一个经典错误， Socket不能对外连接，错误不会被报出，调试的时候，能看到Exception,  一般是抛出 java.net.socketexception permission denied这个异常。只要你的程序想联网，就会抛出这个异常，最终联网失败。 原因是： 需要访问到网络必须要有权限，在AndroidManifest.xml中，需要进行如下配置：<br />
4. could not write file images\/system.img, No space left on device一般的目录是这里C:\Documents and Settings\Administrator\.android，而这个盘已经满了，只剩下几十M的容量是不够的。（系统盘一般是C盘），因为空间不足就无法启动，删了一些文件后重新运行eclipse就好了<br />
5. 往string[] 添加元素的方法，一个for循环中 string[i] = 对应item[i]</p>
]]></content:encoded>
			<wfw:commentRss>http://murray.cn/index.php/2011/04/android%e5%bc%80%e5%8f%91%e7%ac%94%e8%ae%b0/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>

