月度归档:2010年03月

iptables简明手册说明

目前的Linux防火墙机制主要是以 iptables 为主的,而 iptables 可以使用指令来下达,也可以透过编写 shell script 来进行指令的整合编辑。
1、防火墙顺序规则。
2、IPtables通常包括三个表格(Fliter、NAT、Mangle)filter∶主要跟 Linux 本机有关,是预设的 table 。通常下面有三个链(chain)
INPUT∶主要与数据包想要进入我们 Linux 本机有关;
OUTPUT∶主要与 Linux 本机所要送出的数据有关;
FORWARD∶这个与 Linux 本机比较没有关系,他可以将数据包转发到后端的电脑中,与 nat 这个 table 相关
NAT:主要用来做源与目的IP或者端口的转换,与linux本机无关。
PREROUTING∶在进行路由判断之前所要进行的规则(DNAT/REDIRECT) POSTROUTING∶在进行路由判断之后所要进行的规则(SNAT/MASQUERADE) OUTPUT∶与发送出去的封包有关
mangle∶这个表格主要是与特殊的封包的路由旗标有关, 早期仅有 PREROUTING 及 OUTPUT 链,不过从 kernel 2.4.18 之后加入了 INPUT 及 FORWARD 链。由于这个表格与特殊旗标相关性较高,所以像咱们这种单纯的环境当中,较少使用 mangle 这个表格。
3、iptables命令详解
iptables [-t tables] [-L] [-nv]
-t ∶后面接 table ,例如 nat 或 filter ,若省略此项目,则使用预设的 filter
-L ∶列出目前的 table 的规则
-n ∶不进行 IP 与 HOSTNAME 的反查,显示讯息的速度会快很多!
-v ∶列出更多的资讯,包括通过该规则的封包总位元数、相关的网路介面等
iptables [-t tables] [-FXZ]参数∶
-F ∶清除所有的已订定的规则;
-X ∶杀掉所有使用者 “自订” 的 chain (应该说的是 tables )
-Z ∶将所有的 chain 的计数与流量统计都归零
iptables -P [INPUT,OUTPUT,FORWARD][ACCEPT,DROP](默认操作filter表格)
iptables -t -nat -P[PREROUTING,POSTROUTING,OUTPUT][ACCEPT,DROP]参数∶
-P ∶定义默认策略( Policy )。注意,这个 P 为大写啊!
ACCEPT ∶该封包可接受
DROP ∶该封包直接丢弃,不会让 client 端知道为何被丢弃。
iptables [-AI 链] [-io 网路介面] [-p 协议] [-s 来源IP/掩码] [-d 目标IP/掩码] -j [ACCEPT|DROP]
-AI 链∶针对某的链进行规则的 “插入” 或 “增加”
-A ∶新增加一条规则,该规则增加在原本规则的最后面
-I ∶插入一条规则。如果没有指定此规则的顺序,预设是插入变成第一条规则。例如原本有四条规则,使用 -I 则该规则变成第一条,而原本四条变成 2~5 号链 ∶有 INPUT, OUTPUT, FORWARD 等,此链名称又与 -io 有关,请看底下。
-io :网路介面∶设定数据包进出的介面规范
-i ∶数据包所进入的那网路介面,例如eth0, lo 等介面。需与 INPUT 配合;
-o ∶数据包所传出的那个网路介面,需与 OUTPUT 链配合;
-p :协议∶设定此规则适用于哪种数据包格式主要的数据包格式有∶ tcp, udp, icmp 及 all 。
-s :来源 IP/掩码∶设定此规则之数据包的来源项目,可指定单纯的 IP 或包括掩码。若规范为『不许』时,则加上 ! 即可,例如∶
-s ! 192.168.100.0/24 表示不许 192.168.100.0/24 之数据包来源;
-d :目标 IP/掩码∶同 -s ,只不过这里指的是目标的 IP 或网域。
-j ∶后面接动作,主要的动作有接受 (ACCEPT)、丢弃 (DROP) 及记录 (LOG)
[root@linux ~]# iptables -A INPUT -i eth0 -s 192.168.1.10 -j DROP
[root@linux ~]# iptables -A INPUT -i eth0 -s 192.168.1.0/24 -j ACCEPT
iptables [-AI 链] [-io 网路介面] [-p tcp,udp] [-s 来源IP/网域] [–sport 端口范围]
> [-d 目标IP/网域] [–dport 端口范围] -j [ACCEPT|DROP]参数∶
–sport 端口范围∶限制来源的端口号码,端口号码可以是连续的,例如 1024:65535
–dport 端口范围∶限制目标的端口号码。
iptables -A INPUT -m state –state 状态参数∶
-m ∶一些 iptables 的模组,主要常见的有∶
state ∶状态模组
mac ∶网路卡硬体位址 (hardware address)
–state ∶一些数据包的状态,主要有∶
INVALID ∶无效的数据包,例如资料破损的数据包状态
ESTABLISHED∶已经连线成功的连线状态;
NEW ∶想要新建立连线的数据包状态;
RELATED ∶这个最常用!表示这个数据包是与我们主机发送出去的数据包有关
[email=root@linux]root@linux[/email]
~]# iptables -A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT
[root@linux ~]# iptables -A INPUT -m state –state INVALID -j DROP
针对区域网路内的 aa:bb:cc:dd:ee:ff 主机开放其连线
[root@linux ~]# iptables -A INPUT -m mac –mac-source aa:bb:cc:dd:ee:ff -j ACCEPT参数∶
–mac-source ∶就是来源主机的 MAC
5、其余的一些防攻击手段。
除了 iptables 这个防火墙软体之外,其实咱们 Linux kernel 2.6 提供很多核心预设的攻击抵挡机制喔!由于是核心的网路功能,所以相关的设定资料都是放置在 /proc/sys/net/ipv4/ 这个目录当中。 至于该目录下各个档案的详细资料,可以参考核心的说明文件∶/usr/src/linux-{version}/networking/ip-sysctl.txt。通常可设定如下:
echo “1” > /proc/sys/net/ipv4/tcp_syncookies
echo “1” > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
for i in /proc/sys/net/ipv4/conf/*/rp_filter; do
echo “1” > $i
done
for i in /proc/sys/net/ipv4/conf/*/log_martians; do
echo “1” > $i
done
for i in /proc/sys/net/ipv4/conf/*/accept_source_route; do
echo “0” > $i
done
for i in /proc/sys/net/ipv4/conf/*/accept_redirects; do
echo “0” > $i
done
for i in /proc/sys/net/ipv4/conf/*/send_redirects; do
echo “0” > $i
done
6、iptables的NAT功能
NAT 的全名是 Network Address Translation,字面上的意思是『网路位址的转换』。什么是 NAT? SNAT? DNAT?
NAT 主机的重点就在于 NAT table 的两条重要的链∶PREROUTING 与 POSTROUTING。 那这两条链有什么重要的功能呢?重点在于修改 IP 嘛!但是这两条链修改的 IP 是不一样的! POSTROUTING 在修改来源 IP ,PREROUTING 则在修改目标 IP 。 由于修改的 IP 不一样,所以就称为 来源 NAT (Source NAT, SNAT) 及目标 NAT (Destination NAT, DNAT)。在实际使用中,来源NAT一般用来给局域网机器提供internet上网服务。目标NAT一般用来提供DMZ区提供网际网络服务(Ftp,http,mail等)。
7、范例。
[root@linux ~]# mkdir -p /usr/local/virus/iptables
[root@linux ~]# cd /usr/local/virus/iptables
[root@linux iptables]# vi iptables.rule
#!/bin/bash
# 请先输入您的相关参数,不要输入错误了!
EXTIF=”eth1″ # 这个是可以连上 Public IP 的网路介面
INIF=”eth0″ # 内部 LAN 的连接介面;若无请填 “”
INNET=”192.168.1.0/24″ # 内部 LAN 的网域,若没有内部 LAN 请设定为 “”
export EXTIF INIF INNET
# 第一部份,针对本机的防火墙设定!###########################
# 1. 先设定好核心的网络防攻击功能∶
echo “1” > /proc/sys/net/ipv4/tcp_syncookies
echo “1” > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
for i in /proc/sys/net/ipv4/conf/*/rp_filter; do
echo “1” > $i
done
for i in /proc/sys/net/ipv4/conf/*/log_martians; do
echo “1” > $i
done
for i in /proc/sys/net/ipv4/conf/*/accept_source_route; do
echo “0” > $i
done
for i in /proc/sys/net/ipv4/conf/*/accept_redirects; do
echo “0” > $i
done
for i in /proc/sys/net/ipv4/conf/*/send_redirects; do
echo “0” > $i
done
# 2. 清除规则、设定预设政策及开放 lo 与相关的设定值
PATH=/sbin:/usr/sbin:/bin:/usr/bin; export PATH
iptables -F
iptables -X
iptables -Z
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state –state RELATED -j ACCEPT
# 3. 启动额外的防火墙 script 模组
if [ -f /usr/local/virus/iptables/iptables.deny ]; then
sh /usr/local/virus/iptables/iptables.deny
fi
if [ -f /usr/local/virus/iptables/iptables.allow ]; then
sh /usr/local/virus/iptables/iptables.allow
fi
if [ -f /usr/local/virus/httpd-err/iptables.http ]; then
sh /usr/local/virus/httpd-err/iptables.http
fi
iptables -A INPUT -m state –state ESTABLISHED -j ACCEPT
# 4. 允许某些类型的 ICMP 封包进入
AICMP=”0 3 3/4 4 11 12 14 16 18″
for tyicmp in $AICMP
do
iptables -A INPUT -i $EXTIF -p icmp –icmp-type $tyicmp -j ACCEPT
done
# 5. 允许某些服务的进入,请依照您自己的环境开启
# iptables -A INPUT -p TCP -i $EXTIF –dport 22 -j ACCEPT # SSH
# iptables -A INPUT -p TCP -i $EXTIF –dport 25 -j ACCEPT # SMTP
# iptables -A INPUT -p UDP -i $EXTIF –sport 53 -j ACCEPT # DNS
# iptables -A INPUT -p TCP -i $EXTIF –sport 53 -j ACCEPT # DNS
# iptables -A INPUT -p TCP -i $EXTIF –dport 80 -j ACCEPT # WWW
# iptables -A INPUT -p TCP -i $EXTIF –dport 110 -j ACCEPT # POP3
# iptables -A INPUT -p TCP -i $EXTIF –dport 443 -j ACCEPT # HTTPS
# 第二部份,针对后端主机的防火墙设定!##############################
# 1. 先载入一些有用的模组
modules=”ip_tables iptable_nat ip_nat_ftp ip_nat_irc ip_conntrack ip_conntrack_ftp ip_conntrack_irc”
for mod in $modules
do
testmod=`lsmod | grep “${mod} “`
if [ “$testmod” == “” ]; then
modprobe $mod
fi
done
# 2. 清除 NAT table 的规则吧!
iptables -F -t nat
iptables -X -t nat
iptables -Z -t nat
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
# 3. 开放成为路由器,且为 IP 分享器!
if [ “$INIF” != “” ]; then
iptables -A INPUT -i $INIF -j ACCEPT #这一行在让 NAT 主机可接受来自内部LAN数据包
echo “1” > /proc/sys/net/ipv4/ip_forward #这一行则是在让你的 Linux 具有 router 能力
if [ “$INNET” != “” ]; then
for innet in $INNET
do
iptables -t nat -A POSTROUTING -s $innet -o $EXTIF -j MASQUERADE
# 这一行最关键!就是加入 nat table 封包伪装。重点在那MASQUERADE !这个设定值 就是『 IP #伪装成为封包出去 (-o) 的那块装置上的 IP 』!以上面的例子来说,就是 $EXTIF ,也就是 #eth1 啦! 所以封包来源只要来自$innet (也就是内部 LAN 的其他主机) ,只要该封包可透过 #eth1 传送出去, 那就会自动的修改 IP 的来源表头成为 eth1 的 public IP
done
fi
fi
# 如果你的 MSN 一直无法连线,或者是某些网站 OK 某些网站不 OK,
# 可能是 MTU 的问题,那你可以将底下这一行给他取消注解来启动 MTU 限#制范围
# iptables -A FORWARD -p tcp -m tcp –tcp-flags SYN,RST SYN -m tcpmss
# –mss 1400:1536 -j TCPMSS –clamp-mss-to-pmtu
# 4. 内部服务器的设定∶
# iptables -t nat -A PREROUTING -p tcp -i $EXTIF –dport 80 -j DNAT –to 192.168.1.210:80
# iptables -t nat -A PREROUTING -p tcp –dport 80 -j REDIRECT –to-ports 8080
# 倒数第二行将访问80的数据映射到192.168.1.210.最后一行是将访问80端口的数据重定向#到8080端口。
[root@linux iptables]# vi iptables.allow
#!/bin/bash
# 底下则填写你允许进入本机的其他网域或主机啊!
iptables -A INPUT -i $EXTIF -s 140.116.44.0/24 -j ACCEPT
# 底下则是关于抵挡的档案设定法!
[root@linux iptables]# vi iptables.deny
#!/bin/bash
# 底下填写的是『你要抵挡的那个咚咚!』
iptables -A INPUT -i $EXTIF -s 140.116.44.254 -j DROP
[root@linux iptables]# chmod 700 iptables.*
如果你希望一开机就自动执行这个 script 的话,请将这个档案的完整档名写入 /etc/rc.d/rc.local 当中,有点像底下这样∶
[root@linux ~]# vi /etc/rc.d/rc.local
…..其他省略…..
# 1. Firewall
/usr/local/virus/iptables/iptables.rule
…..其他省略…..
OK。

sql server 2000安装 cd-key的需要问题

在2003系统上安装SQL Server 2000需要输入序列号
今天在测试机上安装SQL Server 2000时发现需要输入序列号。这种情况以前也遇到过,从网上找一个SN即可通过。可今天找的几个SN都提示无法通过验证,想必不是序列号的问题了。我的系统是Windows 2003 Server with SP2,以前都是在XP、2000系统下安装的,没有问题,会不会是系统差异导致的?
google了一下,发现果然是和操作系统有关。据说微软也发布了相关的KB,不过我没有找到原文。解决方法如下:
打开注册表的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager,将SafeDLLSearchMode这个DWORD的键值改为0,如果没有的话就创建这个DWORD类型的键值。
然后就可以继续安装了。

附:SQL Server 2000中文版的安装序列号
M4FMF-7FBWJ-QW39C-4HDXR-MWHMD
JCYFH-BYJMR-C4PVV-VD9G3-VXDYG

CSS Selector – CSS选择符详解,必看

一、类型选择符
什么是类型选择符?指以网页中已有的标签类型作为名称的行径符。body是网页中的一个标签类型,div,p,span都是。
如下:

 Example Source Code
body {}
div {}
p {}
span {}

二、群组选择符
对于XHMTL对象,可以对一组同时进行了相同的样式指派。
使用逗号对选择符进行了分隔,这样书写的优点在于同样的样式只需要书写一次即可,减少代码量,改善CSS代码结构。
使用时应该注意“逗号”是在半角模式下,并非中文全角模式。
如下:

 Example Source Code
h1,h2,h6,p,span
{
    font-size:12px;
    color:#FF0000;
    font-family: arial;
}

三、包含选择符
对某对象中的子对象进行样式指点定,这样选择方式就发挥了作用。
需要注意的是,仅对此对象的子对象标签有效,对于其它单独存在或位于此对象以外的子对象,不应用此样式设置。
这样做的优点在于,帮我们避免过多的id、class设置,直接对所需的元素进行定义。
如下:

 Example Source Code
h2 span
{
    color:red;
}
如下:
body h1 span strong
{
    font-weight:bold;
}

四、id选择符
根据DOM文档对象模型原理所出现的选择符,对于一个XHTML文件,其中的每一个标签都可以使用一个id=””的形式进行一个名称指派,但需要注意,在一个XHTML文件中id是具有唯一性而不可以重复的。
在div css布局的网页中,可以针对不同的用途进行命名,如头部为header、底部为footer。
XHTML如下:

 Example Source Code
<div id=”content”></div>

CSS如下:

 Example Source Code
#content
{
    font-size:14px;
    line-height:120%;
}

五、class选择符
其实id是对于XHTML标签的扩展,而class是对SHTML多个标签的一种组合,class直译的意思是类或类别。
对于XHTML标签使用class=””进行名称指派。与id不同,class可以重复使用,对于多个样式相同的元素,可以直接定义为一个class。
使用class的优点已不言自明,它对CSS代码重用性有良好的体现,众多的标签均可以使用一个样式来定义而不需要每一个编写一个样式代码。
XHTML如下:

 Example Source Code
<p class=”he”></p>
<span class=”he”></span>
<h5 class=”he”></h5>

CSS如下:

 Example Source Code
.he
{
    margin:10px;
    background-color:red;
}

六、标签指定式的选择符
如果想同时使用id和class,也想同时使用标签选择符,可以使用如下的方式:

 Example Source Code
h1#content {}
/*表示所有id为content的h1标签*/
h1.p1 {}
/*表示所有class为p1的h1标签*/

标签指定式选择符的精度介于标签选择符及id/class选择符之间,是常用的选择符之一。

七、组合选择符
对于上面的所有选择符而言,进行组合使用。如下:

 Example Source Code 继续阅读

meta http-equiv=”content-language” content=”zh-CN”

content-language 属性值 — 定义页面语言
content-language用于定义页面所使用的语言代码
content-language出现在http-equiv属性中,使用content属性表示页面的语言以及国家代码

content-language语法
language-code = primary-code ( “-” subcode )*

content-language示例
<meta http-equiv=”content-language” content=”zh-CN” />
zh中文语言,CN中国版本

例如:language-code为”en”时,代表English英文,而language-code为”en-US”时,代表the U.S. version of English美国版本的英文.
primary-code为语言代码,subcode为国家代码

使用http-equiv的content-type可以提供网页的编码信息
charset示例
使用UTF8编码(国际化编码)
<meta http-equiv=”content-type” content=”text/html; charset=UTF-8″ />

使用中文gb2312编码
<meta http-equiv=”content-type” content=”text/html; charset=gb2312″ />

下面这些编码方式,比如:中文 GBK ,繁体中文 Big5 ,日文 EUC-JP ,韩文 EUC-KR 等,每种语言的编码方式是不同的,所以需要使用charset为网页提供了一种编码方式,否则页面很可能出现乱码.
UTF-8 是没有国家的编码,也就是独立于任何一种语言,任何语言都可以使用

padding和margin的区别

1、就像墙上挂着的两个相框,margin指的是相框与相框的距离,padding指的是每个相框里照片与相框边框的距离。

2、

padding用在容器内部,margin指容器外部

比如:
padding-top:10px;是指容器内的内容距离容器的顶部有10个像素,是包含在容器内的;
margin-top:10px;是指容器本身的顶部距离其他容器有10个像素,不饱含在容器内。

 

有下面一句话
* { word-wrap: break-word; }
我估计意思是页面内所有的元素都使用这个属性
但是FIREFOX下ERROR CONSOLE会提示这个有问题。
有人知道哪里有说明么?

在IE下,*是通用选择器,也就是所有标签。等同于 body,table,tr,td,div,span,ul……(所有标签) { xxxxxxxxx }
ff不支持这个,所以ff的错误控制台读出错误,这个也是ie和ff在css兼容方面常用的区别标记。

div和span的区别,块对象和内联对象

div与span的区别——块对象与内联对象的区别

  在用CSS做页面的时候,有时我们会感觉到,对于div标签,和span标签在某些情况下是没有区别的。

  比如下列代码

<div style=”wdith:400px; height:200px; background-color:#FFFF00; color:#FF0000; text-align:center;”>
这是一个div标记
</div>

  如果把div替换为span,两者的显示效果是一样的。

<span style=”wdith:400px; height:200px; background-color:#FFFF00; color:#FF0000; text-align:center;”>
这是一个span标记
</span>

  点击查看实例

  那div和span有什么区别呢?看下下面这个例子。

  我们在建立三个div,并在每个div里面插入一张图片。
<p>div标记不同行:</p>
<div><img src=”http://coolhtml.cn/skin/redsky/images/logo.gif”></div>
<div><img src=”http://coolhtml.cn/skin/redsky/images/logo.gif”></div>
<div><img src=”http://coolhtml.cn/skin/redsky/images/logo.gif”></div>
<p>span标记同一行:</p>
<span><img src=”http://coolhtml.cn/skin/redsky/images/logo.gif”></span>
<span><img src=”http://coolhtml.cn/skin/redsky/images/logo.gif”></span>
<span><img src=”http://coolhtml.cn/skin/redsky/images/logo.gif”></span>
  我们会看到,这个结果就是div排列的图片,是每张站一行的。而span排列的图片,三张都在同一行。

  点击查看实例

  从上面的例子我们可以看出,div默认的是一个行外标记,一个块对象,默认情况下,一个div是站一行的。而span是一个行内的标记,一个内联的对象,默认情况下,span嵌套在任何页面中,在不超过父模块边界的情况下,是在同一行显示的。

  这就涉及到了块对象和内联对象。
  所谓的块对象,就是指从新的一行开始且能包含其他块对象和内联对象的可视文档对象,块对象默认宽度是100%(继承自父元素),如果没有采用“float:left/right;”样式,相邻的两个块对象就会分排在不同的两行上。比如div就是一个块对象。  而内联对象不会从新的行开始,而且其能够包含的内容也只能是内联对象和数据。就像文字,只要你不换行,他就会一个连着一个的往后面排,直到你换行或者到外部块对象的边界。内联对象的宽度取决于其内部元素的宽度与padding样式值之和,不可直接指定其宽度与高度,比如”a”标签,是一个内联对象,它就没有高度和宽度可言,但是在某些情况下需要我们来为内联标对象设定宽度和高度,这就涉及到了内联对象和块对象之间的转化。

  块对象和内联对象我们可以通过display属性来进行强行的转化(display:inline是表示内联对象;display:block表示块对象),个人而言,我主要是用在把内联对象转为块对象上,比如”a”标签,或者”span”标签。我们也可以通过float:left/right;来将其转为块对象,因为float属性默认的就是display:block;也就是一个对象只要添加上了float属性,就相当于也同时添加了display:block;属性。

load_file()函数的他用

load_file() 入侵时查看常用敏感信息文件

1、 replace(load_file(0x2F6574632F706173737764),0x3c,0x20)

2、replace(load_file(char(47,101,116,99,47,112,97,115,115,119,100)),char(60),char(32))
上面两个是查看一个PHP文件里完全显示代码.有些时候不替换一些字符,如 “<” 替换成”空格” 返回的是网页.而无法查看到代码.

3、 load_file(char(47)) 可以列出FreeBSD,Sunos系统根目录

4、/etc/httpd/conf/httpd.conf或/usr/local/apche/conf/httpd.conf 查看linux APACHE虚拟主机配置文件

5、c:\Program Files\Apache Group\Apache\conf \httpd.conf 或C:\apache\conf \httpd.conf    查看WINDOWS系统apache文件

6、c:/Resin-3.0.14/conf/resin.conf 查看jsp开发的网站 resin文件配置信息.

7、c:/Resin/conf/resin.conf     /usr/local/resin/conf/resin.conf 查看linux系统配置的JSP虚拟主机

8、d:\APACHE\Apache2\conf\httpd.conf  

9、C:\Program Files\mysql\my.ini

10、../themes/darkblue_orange/layout.inc.php    phpmyadmin 爆路径  

11、    c:\windows\system32\inetsrv\MetaBase.xml 查看IIS的虚拟主机配置文件

12、 /usr/local/resin-3.0.22/conf/resin.conf    针对3.0.22的RESIN配置文件查看

13、 /usr/local/resin-pro-3.0.22/conf/resin.conf 同上

14 、/usr/local/app/apache2/conf/extra/httpd-vhosts.conf APASHE虚拟主机查看

15、 /etc/sysconfig/iptables 本看防火墙策略

16 、 usr/local/app/php5/lib/php.ini    PHP 的相当设置

17 、/etc/my.cnf    MYSQL的配置文件

18、 /etc/redhat-release 红帽子的系统版本

19 、C:\mysql\data\mysql\user.MYD 存在MYSQL系统中的用户密码

20、/etc/sysconfig/network-scripts/ifcfg-eth0 查看IP.

21、/usr/local/app/php5/lib/php.ini //PHP相关设置

22、/usr/local/app/apache2/conf/extra/httpd-vhosts.conf //虚拟网站设置

23、c:\Program Files\RhinoSoft.com\Serv-U\ServUDaemon.ini

24、c:\windows\my.ini

mysql的hex()和unhex()函数

select   hex(‘love’);  
  “6C6F7665”       
  select   unhex(hex(‘love’));      或者 select x’6C6F7665′;或者select 0x6C6F7665;
  “love”

说明:

十六进制值

MySQL支持十六进制值。在数字上下文中,十六进制数如同整数(64位精度)。在字符串上下文,如同二进制字符串,每对十六进制数字被转换为一个字符:mysql> SELECT x’4D7953514C’;
-> ‘MySQL’
mysql> SELECT 0xa+0;
        -> 10
mysql> SELECT 0x5061756c;
        -> ‘Paul’
十六进制值的默认类型是字符串。如果想要确保该值作为数字处理,可以使用CAST(…AS UNSIGNED):
mysql> SELECT 0x41,CAST(0x41 AS UNSIGNED);
        -> ‘A’,65
0x语法基于ODBC。十六进制字符串通常用于ODBC以便为BLOB列提供值。x’hexstring’语法基于标准SQL。
可以用HEX()函数将一个字符串或数字转换为十六进制格式的字符串:
mysql> SELECT HEX(‘cat’);
        -> ‘636174’
mysql> SELECT 0x636174;
        -> ‘cat’