技术研究

如何查看CentOS版本方法

有以下命令可以查看:
# lsb_release -a
LSB Version: :core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: CentOS
Description: CentOS release 5.4 (Final)
Release: 5.4
Codename: Final
这个命令适用于所有的linux,包括Redhat、SuSE、Debian等发行版。
root@MyMail ~ # uname
Linux
root@MyMail ~ # uname -r
2.6.18-164.el5
以下二种方法适用于RedHat,CentOS
root@MyMail ~ # cat /etc/redhat-release
CentOS release 5.4 (Final)
登录到linux执行rpm -q redhat-release
#rpm -q redhat-release
或CentOS
root@MyMail ~ # rpm -q [...]


针对各个浏览器常用的前端开发工具

Fiddler
一个很强大的http流查看工具
http://www.fiddlertool.com/fiddler/
Httpwatch
数据分析工具,头消息接受/发送的查看,POST数据查看.等等
http://www.httpwatch.com
IE Developer Toolsbar
IE下的FireBug.HTML及CSS调试工具
http://www.windowsmarketplace.com/details.aspx?itemid=2695980
Companion.JS
IE下的javascript调试工具.福音啊!福音啊!!福音啊!!!
http://www.my-debugbar.com/wiki/CompanioNJS/HomePage
FireBug
神一样的插件
Web Developer
FireFox下的查看工具,可以查看JS,CSS等页面信息
YSlow
页面性能优化查看器.基于FireBug
http://developer.yahoo.com/yslow
Javascript Debugger
FireFox下的javascript调试工具,比FireBug有更强大的调试功能.
Opera Developer Tools
Opera下的DOM,CSS查看工具,类似FireBug.
http://dev.opera.com/articles/view/opera-developer-tools/
webkit
Safari下的开发调试工具
http://nightly.webkit.org/


无法找到对动作脚本 2.0 进行类型检查所需的文件“toplevel.as”。请确保目录“$(LocalData)/Classes”在动作脚本首选参数的全局类路径中列出。

我现在是啥都搞,现在开始搞FLASH了,我也服气了
拿到新源码,发现“无法找到对动作脚本 2.0 进行类型检查所需的文件“toplevel.as”。请确保目录“$(LocalData)/Classes”在动作脚本首选参数的全局类路径中列出。”,搞不清楚是啥原因。
我保证有这个路径“$(LocalData)/Classes”但就是不起作用,一下是网上查到的解决办法
解决方法:
1、打开Flash CS4,选择编辑 > 首选参数 > ActionScript项 > ActionScript 2.0 设置 > 点击”+”
2、添加新路径,输入C:\Program Files\Adobe\Adobe Flash CS4\Common\First Run\Classes,
3、然后把Flash CS3的”toplevel.as“文件拷贝到此路径下
如果大家没有这个AS,肯定大家用的盗版,那就点下面链接下载吧:toplevel


出错也只是自己知道就得了,如何屏蔽Js页面报错

错误总归会有的,自己调,自己知道就好了,别显示了
现在我们来屏蔽js报错
<SCRIPT LANGUAGE=’JavaScript’>
<!–
//屏蔽js错误
function ResumeError() {
return true;
}
window.onerror = ResumeError;
// –>
</SCRIPT>


如何解决linux下apache启动时httpd: apr_sockaddr_info_get() failed for 报错

配置一台云服务器,干干净净的系统,我用Yum安装了apache后,发现启动时候报错
httpd: apr_sockaddr_info_get() failed for xxxx
虽然启动还算正常,但不知道会不会有什么影响。
google之后找到了解决办法:有两个方向,如下
这个问题应该是没有在 /etc/httpd/conf/httpd.conf 中设定 ServerName 所以它会用主机上的名称来取代,首先会去找 /etc/hosts 中有没有主机的定义。
所以要解决这个问题可以设定 ServerName 或者在 /etc/hosts 中填入自己的主机名称 MYHOST,像这样:
>vi /etc/hosts
127.0.0.1 localhost.localdomain localhost MYHOST
或者是
将httpd.conf中的ServerName 前面的 # 去掉。
apache 2.2 的虚拟机的配置放置在conf/extra/httpd-vhosts.conf 中


如何解决PHP XML RPC中文乱码问题

为了一个项目在做XMLRPC的应用。发现项目服务器上没有XMLRPC组件,又要重新编译PHP,头大…
找了很多资料发现,国外的一个叫PHPXMLRPC的开源代码很好用。直接代替XMLRPC组件。他在GOOGLE有托管。国内用的还不多,很多东西都要自己摸索着搞。
这个PHPXMLRPC写的很好,我们只要把它用到的时候加载进来,然后NEW一下就好。以下是我这里总结的相对好用的用法
//载入相关文件
require ‘xmlrpc.inc’;
$forxmlrpc = array(); //初始化数组,传输必要参数
$forxmlrpc['title'] = $content['title'];
$forxmlrpc['contentid'] = $contentid;
$f=new xmlrpcmsg(’popcms.new’,array(new xmlrpcval(1, “int”),new xmlrpcval(’murray’, “string”),new xmlrpcval(’123′, “string”),php_xmlrpc_encode($forxmlrpc))); //新建一个XML格式
$c=new xmlrpc_client(”xmlrpc.php”, “www.popcms.net”, 80); //新建一个客户端
$c->request_charset_encoding = ‘utf-8′; //初始化时的编码格式,如果有中文,这一点是必须的,不然有乱码
$c->setDebug(1); //开启出错选项
$r=&$c->send($f); //发送请求
//以下是调试返回数据的代码
if(!$r->faultCode())
{$v=$r->value();
print “</pre><br/>State number ” . $stateno . ” is “. htmlspecialchars($v->scalarval()) . “<br/>”;
}else{
print “An error occurred: “;
print “Code: ” . htmlspecialchars($r->faultCode()). ” Reason: ‘” . htmlspecialchars($r->faultString()) . “‘</pre><br/>”;
}
虽然现在可以正常发送接收数据,但是还是会出现传递过程中的中文乱码。
原来PHPXMLRPC会自动转换编码,但提交后是乱码,是因为默认指定的是ISO-8859-1编码,而这个参数就是xmlrpc_internalencodeing,具体的操作步骤是:

打开?xmlrpc.inc 第222行, 将
$GLOBALS['xmlrpc_internalencoding']=’ISO-8859-1′;
改成
$GLOBALS['xmlrpc_internalencoding']=’UTF-8′;
至此XMLRPC的中文乱码问题解决了。


EDM 电子邮件营销的模板制作规范

最近在搞EDM,这种页面做起来比较搞,刚开始以为EBAY在故意为难人呢,原来这些规范真的是有用。大家分享下吧
1,模板编码语言选择
模板编码设定与使用的发送软件有关,一般来说,utf-8为较常用的选择,错误的编码会造成用户浏览的时候出现乱码;
2,不要使用div,使用最简单的嵌套table定位

Div+css是近几年新兴的web2.0定位方式,这种方式不适合在邮件模板切割中使用,不同邮件客户端或在线浏览器对css模型解释不尽相同,会造成错位或布局混乱等问题。
同时也不要使用单一table重复多次colspan,可能会被邮件客户端判断为结构过于复杂,归类为垃圾邮件;同时也容易被打乱布局而影响用户浏览。

3,图片与文本链接规则

模板中所有链接,都必须使用绝对路径;
链接长度不能超过255个字符,不能存在空格,也不能有中文字符,否则可能会导致连接无法追踪;
图片链接不要使用
标签,否则可能被邮件客户端判定为垃圾邮件,甚至被邮件运营商直接屏蔽。

模板中文本文字不能使用过大的字体,否则可能会被邮件客户端判定为垃圾邮件。

4,css样式编写

不要使用外部样式表引用,将样式表写入模板内部,如:

<td style=”padding:6px”>
<a href=”#” style=”font-size: 14px;color:#0c6485″>
<b>邮件模板</b>
</a>
</td>

如果模板有完全相同样式的列表型文本(如新闻列表等),可以吧样式表写在页面内<style></style>中引用,但缺点是在邮件转发过程中经过web编辑器或邮件客户端的编辑,<style></style>被去掉,导致此列表样式变形。这种页面内引用的方式却能节省大量代码,使代码与内容比降低,同时也缩减了模板文件大小,有利于模板评分。

5,图片样式与背景图片颜色使用

模板尽量不要使用背景图片。背景图片在某些邮件客户端或或web界面(如Gmail)中默认不显示。
模板中每张图的地址都一定要用绝对地址,否则会不显示;每张图都要指定alt属性,可以在图片被拦截的时候显示图片的内容;每张图都要指定width宽度、height高度,在图片被拦截的时候,不会因图片大小无法读取而被打乱布局。
body中不要设定背景色,不然在转发邮件的时候,转发人写的信息背景色都会变为被转发邮件的背景色,影响浏览。如果一定要给邮件模板设定整体背景色,请在模板文件最外面加一个table,设定此table的背景色。

<body>
<table width=”100%” border=”0″ cellspacing=”0″
cellpadding=”0″>
<tr>
<td style=”background-color: #520000;”>&nbsp;</td>
</tr>
</table>
</body>

在切割模板的时候,要注意限制图片的大小和数量,不要为了效果使图片过大,会使邮件接收者打开过于缓慢,甚至直接关闭邮件。
更不要完全把模板切为图片形式,那样会在图片被拦截的时候使用户看不到内容,并且很可能会直接被邮件运营商或邮件客户端认定为垃圾邮件。

6,模板html标签规则

尽量不要使用提交表单;
padding和margin标签:table中,某些邮件客户端或web界面(如Gmail),对浮动的标签(padding、margin等)支持很差,所以尽量不要使用;
float浮动标签:某些邮件客户端不支持浮动属性,尽量避免使用。
在页面内调用<style></style>的情况下,尽量不要使用<h2>、<ul>、<li>、<p>、<ol>等有默认样式的标签,防止<style></style>被隔离时页面布局混乱。

7,动画与互动元素的处理

可以使用简单的gif动画来表达某些需要明显突出的要素,但要控制gif文件的大小,不要影响整封邮件的下载浏览速度;
不要使用flash动画或JavaScript Active等,前些年邮件病毒泛滥,大部分邮件运营商都已经屏蔽了这些元素。

8,使用所见即所得工具,在制作完成后手动优化代码

使用主流所见即所得工具可以节省大量时间、提高工作效率,但所见即所得工具生成的代码会有许多垃圾代码掺杂其中,最好在制作完成后手动优化。

9,邮件附件夹带

邮件一定不要夹带附件,发送大量附件会占用大量珍贵的网络带宽,切大部分附件用户根本不会打开,这部分占用的带宽基本都是浪费的。
带有附件的邮件有很大可能被用户认为是病毒,对品牌产生不良影响。
在模板上设置下载按钮,链接到网站上下载页面,还可以给网站带来一部分流量,何乐而不为。


如何解决centos下的ntop报错:**ERROR** ….open of /var/ntop/prefsCache.db failed:

公司要求对游戏服务器的流量进行检测,我就想到了NTOP,再centos下用Yum顺利的安装并启动了Ntop后。
它不知何故自动停掉了,然而当我再次输入Ntop命令的时候,它出现报错并退出
Sun Oct 17 00:56:57 2010 NOTE: Interface merge enabled by default
Sun Oct 17 00:56:57 2010 Initializing gdbm databases
Sun Oct 17 00:56:57 2010 **ERROR** ….open of /var/ntop/prefsCache.db failed: [...]


如何解决CentOS 5 host命令无效(-bash: host: command not found)的问题

当我们检查DNS设置的时候常常会用到host命令,但Centos5默认安装是没有这个命令的。
当显示-bash: host: command not found的时候,我们就需要安装对应的包了
host这个程序是 bind-utils包里面的
所以要先安装 bind-utils
yum install bind-utils 就ok了


如何设置你的CentOS的时间(如何与时间服务器同步)

安装好CentOS,时间默认不是我们所在的东八区,导致上面运行的游戏,每天下午3点才开始发放当天礼包。
我们可以手动设置时间,但最简单办法,是跟时间服务器同步。
这里我介绍几个靠谱的时间服务器地址
第一个当然是国内官方:中国国家授时中心:
http://www.time.ac.cn/stime.asp
其他的:
time.nist.gov
ntp.fudan.edu.cn (复旦) )(国内用户推荐使用此服务器)
timekeeper.isi.edu
subitaneous.cpsc.ucalgary.ca
usno.pa-x.dec.com
time.twc.weather.com
swisstime.ethz.ch
ntp0.fau.de
ntp3.fau.de
time-a.nist.gov
time-b.nist.gov
time-nw.nist.gov
nist1-sj.glassey.com
在CentOS下具体操作是:
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ntpdate ntp.fudan.edu.cn
如果没有安装ntpdate的可以yum一下:
yum install ntp