分类目录归档:互联网上

Apache日志配置

有时候我们需要定制Apache默认日志的格式和内容,比如增加或减少日志所记录的信息、改变默认日志文件的格式等。本文介绍可以用日志记录的所有信息,以及如何设置Apache使其记录这些信息。
  
  一、定义日志格式(4月3日)
  
     很久以前,日志文件只有一种格式,这就是“公共格式”,许多人已经习惯于使用这种格式。随后出现了定制日志格式,而且看起来定制日志格式更很受欢迎,即使公共日志格式本身也重新用定制日志格式定义。本文介绍的就是如何随心所欲地定制日志文件的格式、如何让日志文件记录自己想要的信息。
  
     定制日志文件的格式涉及到两个指令,即LogFormat指令和CustomLog指令,默认httpd.conf文件提供了关于这两个指令的几个示例。
  
     LogFormat指令定义格式并为格式指定一个名字,以后我们就可以直接引用这个名字。CustomLog指令设置日志文件,并指明日志文件所用的格式(通常通过格式的名字)。
  
     LogFormat指令的功能是定义日志格式并为它指定一个名字。例如,在默认的httpd.conf文件中,我们可以找到下面这行代码:
  
    LogFormat "%h %l %u %t "%r" %>s %b" common
  
     该指令创建了一种名为“common”的日志格式,日志的格式在双引号包围的内容中指定。格式字符串中的每一个变量代表着一项特定的信息,这些信息按照格式串规定的次序写入到日志文件。
     Apache文档已经给出了所有可用于格式串的变量及其含义,下面是其译文:
     %…a: 远程IP地址
     %…A: 本地IP地址
     %…B: 已发送的字节数,不包含HTTP头
     %…b: CLF格式的已发送字节数量,不包含HTTP头。例如当没有发送数据时,写入‘-’而不是0。
     %…{FOOBAR}e: 环境变量FOOBAR的内容
     %…f: 文件名字
     %…h: 远程主机
     %…H 请求的协议
     %…{Foobar}i: Foobar的内容,发送给服务器的请求的标头行。
     %…l: 远程登录名字(来自identd,如提供的话)
     %…m 请求的方法
     %…{Foobar}n: 来自另外一个模块的注解“Foobar”的内容
     %…{Foobar}o: Foobar的内容,应答的标头行
     %…p: 服务器响应请求时使用的端口
     %…P: 响应请求的子进程ID。
     %…q 查询字符串(如果存在查询字符串,则包含“?”后面的部分;否则,它是一个空字符串。)
     %…r: 请求的第一行
     %…s: 状态。对于进行内部重定向的请求,这是指*原来*请求 的状态。如果用%…>s,则是指后来的请求。
     %…t: 以公共日志时间格式表示的时间(或称为标准英文格式)
     %…{format}t: 以指定格式format表示的时间
     %…T: 为响应请求而耗费的时间,以秒计
     %…u: 远程用户(来自auth;如果返回状态(%s)是401则可能是伪造的)
     %…U: 用户所请求的URL路径
     %…v: 响应请求的服务器的ServerName
     %…V: 依照UseCanonicalName设置得到的服务器名字
  
     在所有上面列出的变量中,“…”表示一个可选的条件。如果没有指定条件,则变量的值将以“-”取代。分析前面来自默认httpd.conf文件的LogFormat指令示例,可以看出它创建了一种名为“common”的日志格式,其中包括:远程主机,远程登录名字,远程用户,请求时间,请求的第一行代码,请求状态,以及发送的字节数。
  
     有时候我们只想在日志中记录某些特定的、已定义的信息,这时就要用到“…”。如果在“%”和变量之间放入了一个或者多个HTTP状态代码,则只有当请求返回的状态代码属于指定的状态代码之一时,变量所代表的内容才会被记录。例如,如果我们想要记录的是网站的所有无效链接,那么可以使用:
  
  LogFormat %404{Referer}i BrokenLinks
  
     反之,如果我们想要记录那些状态代码不等于指定值的请求,只需加入一个“!”符号即可:

Apache日志:访问日志(一)
想要知道什么人在什么时候浏览了网站的哪些内容吗?查看Apache的访问日志就可以知道。访问日志是Apache的标准日志,本文详细解释了访问日志的内容以及相关选项的配置。
  
  一、访问日志的格式
  
     Apache内建了记录服务器活动的功能,这就是它的日志功能。这个《Apache日志》系列文章介绍的就是Apache的访问日志、错误日志,以及如何分析日志数据,如何定制Apache日志,如何从日志数据生成统计报表等内容。
  
     如果Apache的安装方式是默认安装,服务器一运行就会有两个日志文件生成。这两个文件是access_log(在Windows上是access.log)和error_log(在Windows上是error.log)。采用默认安装方式时,这些文件可以在/usr/local//logs下找到;对于Windows系统,这些日志文件将保存在Apache安装目录的logs子目录。不同的包管理器会把日志文件放到各种不同的位置,所以你可能需要找找其他的地方,或者通过配置文件查看这些日志文件配置到了什么地方。
  
     正如其名字所示,访问日志access_log记录了所有对Web服务器的访问活动。下面是访问日志中一个典型的记录:
  
  216.35.116.91 – – [19/Aug/2000:14:47:37 -0400] "GET / HTTP/1.0" 200 654
  
    这行内容由7项构成,上面的例子中有两项空白,但整行内容仍旧分成了7项。
  
     第一项信息是远程主机的地址,即它表明访问网站的究竟是谁。在上面的例子中,访问网站的主机是216.35.116.91。随便说一句,这个地址属于一台名为si3001.inktomi.com的机器(要找出这个信息,可以使用nslookup工具查找DNS),inktomi.com是一家制作Web搜索软件的公司。可以看出,仅仅从日志记录的第一项出发,我们就可以得到有关访问者的不少信息。
  
     默认情况下,第一项信息只是远程主机的IP地址,但我们可以要求Apache查出所有的主机名字,并在日志文件中用主机名字来替代IP地址。然而,这种做法通常不值得推荐,因为它将极大地影响服务器记录日志的速度,从而也就减低了整个网站的效率。另外,有许多工具能够将日志文件中的IP地址转换成主机名字,因此要求Apache记录主机名字替代IP地址是得不偿失的。
  
     然而,如果确实有必要让Apache找出远程主机的名字,那么我们可以使用如下指令:
  
  HostNameLookups on
  
     如果HostNameLookups设置成double而不是on,日志记录程序将对它找到的主机名字进行反向查找,验证该主机名字确实指向了原来出现的IP地址。默认情况下HostNameLookups设置为off。
  
     上例日志记录中的第二项是空白,用一个“-”占位
符替代。实际上绝大多数时候这一项都是如此。这个位置用于记录浏览者的标识,这不只是浏览者的登录名字,而是浏览者的email地址或者其他唯一标识符。这个信息由identd返回,或者直接由浏览器返回。很早的时候,那时Netscape 0.9还占据着统治地位,这个位置往往记录着浏览者的email地址。然而,由于有人用它来收集邮件地址和发送垃圾邮件,所以它未能保留多久,很久之前市场上几乎所有的浏览器就取消了这项功能。因此,到了今天,我们在日志记录的第二项看到email地址的机会已经微乎其微了。
  
     日志记录的第三项也是空白。这个位置用于记录浏览者进行身份验证时提供的名字。当然,如果网站的某些内容要求用户进行身份验证,那么这项信息是不会空白的。但是,对于大多数网站来说,日志文件的大多数记录中这一项仍旧是空白的。
  
     日志记录的第四项是请求的时间。这个信息用方括号包围,而且采用所谓的“公共日志格式”或“标准英文格式”。因此,上例日志记录表示请求的时间是2000年8月19日星期三14:47:37。时间信息最后的“-0400”表示服务器所处时区位于UTC之前的4小时。
  
     日志记录的第五项信息或许是整个日志记录中最有用的信息,它告诉我们服务器收到的是一个什么样的请求。该项信息的典型格式是“METHOD RESOURCE PROTOCOL”,即“方法 资源 协议”。
  
     在上例中,METHOD是GET,其他经常可能出现的METHOD还有POST和HEAD。此外还有不少可能出现的合法METHOD,但主要就是这三种。
  
     RESOURCE是指浏览者向服务器请求的文档,或URL。在这个例子中,浏览者请求的是“/”,即网站的主页或根。大多数情况下,“/”指向DocumentRoot目录的index.html文档,但根据服务器配置的不同它也可能指向其他文件。
  
     PROTOCOL通常是HTTP,后面再加上版本号。版本号或者是1.0,或者是1.1,但出现1.0的时候比较多。我们知道,HTTP协议是Web得以工作的基础,HTTP/1.0是HTTP协议的早期版本,而1.1是最近的版本。当前大多数Web客户程序仍使用1.0版本的HTTP协议。
  
     日志记录的第六项信息是状态代码。它告诉我们请求是否成功,或者遇到了什么样的错误。大多数时候,这项值是200,它表示服务器已经成功地响应浏览器的请求,一切正常。此处不准备给出状态代码的完整清单以及解释它们的含义,请参考相关资料了解这方面的信息。但一般地说,以2开头的状态代码表示成功,以3开头的状态代码表示由于各种不同的原因用户请求被重定向到了其他位置,以4开头的状态代码表示客户端存在某种错误,以5开头的状态代码表示服务器遇到了某个错误。
  
     日志记录的第七项表示发送给客户端的总字节数。它告诉我们传输是否被打断(即,该数值是否和文件的大小相同)。把日志记录中的这些值加起来就可以得知服务器在一天、一周或者一月内发送了多少数据。
  
  二、配置访问日志
  
     访问日志文件的位置实际上是一个配置选项。如果我们检查httpd.conf配置文件,可以看到该文件中有如下这行内容:
  
  CustomLog /usr/local/apache/logs/access_log common
     注意,对于版本较早的Apache服务器,这行内容可能略有不同。它使用的可能不是CustomLog指令,而是TransferLog指令。如果你的服务器属于这类情况,建议你尽可能地早日升级服务器。
  
     CustomLog指令指定了保存日志文件的具体位置以及日志的格式。至于如何定制日志文件的格式以及内容,我们将在这个《Apache日志》系列文章的后面几篇讨论。上面这行指令指定的是common日志格式,自从有了Web服务器开始,common格式就是它的标准格式。由此我们也可以理解,虽然几乎不再有任何客户程序向服务器提供用户的标识信息,但访问日志却还保留着第二项内容。
  
     CustomLog指令中的路径是日志文件的路径。注意,由于日志文件是由HTTP用户打开的(用User指令指定),因此必须注意这个路径要有安全保证,防止该文件被随意改写。
  
     《Apache日志》系列文章的后面几篇将继续介绍:Apache错误日志,定制日志的格式和内容,如何将日志内容写入指定的程序而不是文件,如何从日志文件获得一些非常有用的统计信息,等等。

Apache日志:访问日志(二)

3. 进程统计
  
  UNIX可以跟踪每个用户运行的每条命令,如果想知道昨晚弄乱了哪些重要的文件,进程统计子系统可以告诉你。它对还跟踪一个侵入者有帮助。与连接时间日志不同,进程统计子系统缺省不激活,它必须启动。在Linux系统中启动进程统计使用accton命令,必须用root身份来运行。Accton命令的形式accton file,file必须先存在。先使用touch命令来创建pacct文件:touch /var/log/pacct,然后运行accton: accton /var/log/pacct。一旦accton被激活,就可以使用lastcomm命令监测系统中任何时候执行的命令。若要关闭统计,可以使用不带任何参数的accton命令。
  
  lastcomm命令报告以前执行的文件。不带参数时,lastcomm命令显示当前统计文件生命周期内纪录的所有命令的有关信息。包括命令名、用户、tty、命令花费的CPU时间和一个时间戳。如果系统有许多用户,输入则可能很长。下面的例子:
  
  crond F root ?? 0.00 secs Sun Aug 20 00:16
  promisc_check.s S root ?? 0.04 secs Sun Aug 20 00:16
  promisc_check root ?? 0.01 secs Sun Aug 20 00:16
  grep root ?? 0.02 secs Sun Aug 20 00:16
  tail root ?? 0.01 secs Sun Aug 20 00:16
  sh root ?? 0.01 secs Sun Aug 20 00:15
  ping S root ?? 0.01 secs Sun Aug 20 00:15
  ping6.pl F root ?? 0.01 secs Sun Aug 20 00:15
  sh root ?? 0.01 secs Sun Aug 20 00:15
  ping S root ?? 0.02 secs Sun Aug 20 00:15
  ping6.pl F root ?? 0.02 secs Sun Aug 20 00:15
  sh root ?? 0.02 secs Sun Aug 20 00:15
  ping S root ?? 0.00 secs Sun Aug 20 00:15
  ping6.pl F root ?? 0.01 secs Sun Aug 20 00:15
  sh root ?? 0.01 secs Sun Aug 20 00:15
  ping S root ?? 0.01 secs Sun Aug 20 00:15
  sh root ?? 0.02 secs Sun Aug 20 00:15
  ping S root ?? 1.34 secs Sun Aug 20 00:15
  locate root ttyp0 1.34 secs Sun Aug 20 00:15
  accton S root ttyp0 0.00 secs Sun Aug 20 00:15
  
  进程统计的一个问题是pacct文件可能增长的十分迅速。这时需要交互式的或经过cron机制运行sa命令来保持日志数据在系统控制内。sa命令报告、清理并维护进程统计文件。它能把/var/log/pacct中的信息压缩到摘要文件/var/log/savacct和/var/log/usracct中。这些摘要包含按命令名和用户名分类的系统统计数据。sa缺省情况下先读它们,然后读pacct文件,使报告能包含所有的可用信息。sa的输出有下面一些标记项:
  
  avio–每次执行的平均I/O操作次数
  cp–用户和系统时间总和,以分钟计
  cpu–和cp一样
  k–内核使用的平均CPU时间,以1k为单位
  k*s
ec–CPU存储完整性,以1k-core秒
  re–实时时间,以分钟计
  s–系统时间,以分钟计
  tio–I/O操作的总数
  u–用户时间,以分钟计
  
  例如:
  
  842 173.26re 4.30cp 0avio 358k
  2 10.98re 4.06cp 0avio 299k find
  9 24.80re 0.05cp 0avio 291k ***other
  105 30.44re 0.03cp 0avio 302k ping
  104 30.55re 0.03cp 0avio 394k sh
  162 0.11re 0.03cp 0avio 413k security.sh*
  154 0.03re 0.02cp 0avio 273k ls
  56 31.61re 0.02cp 0avio 823k ping6.pl*
  2 3.23re 0.02cp 0avio 822k ping6.pl
  35 0.02re 0.01cp 0avio 257k md5sum
  97 0.02re 0.01cp 0avio 263k initlog
  12 0.19re 0.01cp 0avio 399k promisc_check.s
  15 0.09re 0.00cp 0avio 288k grep
  11 0.08re 0.00cp 0avio 332k awk
  
  用户还可以根据用户而不是命令来提供一个摘要报告。例如sa -m显示如下:
  
  885 173.28re 4.31cp 0avk
  root 879 173.23re 4.31cp 0avk
  alias 3 0.05re 0.00cp 0avk
  qmailp 3 0.01re 0.00cp 0avk
  
  4. Syslog设备
  
  Syslog已被许多日志函数采纳,它用在许多保护措施中–任何程序都可以通过syslog 纪录事件。Syslog可以纪录系统事件,可以写到一个文件或设备中,或给用户发送一个信息。它能纪录本地事件或通过网络纪录另一个主机上的事件。
  
  Syslog设备依据两个重要的文件:/etc/syslogd(守护进程)和/etc/syslog.conf配置文件,习惯上,多数syslog信息被写到/var/adm或/var/log目录下的信息文件中(messages.*)。一个典型的syslog纪录包括生成程序的名字和一个文本信息。它还包括一个设备和一个优先级范围(但不在日之中出现)。
  
  每个syslog消息被赋予下面的主要设备之一:
  
  LOG_AUTH–认证系统:login、su、getty等
  LOG_AUTHPRIV–同LOG_AUTH,但只登录到所选择的单个用户可读的文件中
  LOG_CRON–cron守护进程
  LOG_DAEMON–其他系统守护进程,如routed
  LOG_FTP–文件传输协议:ftpd、tftpd
  LOG_KERN–内核产生的消息
  LOG_LPR–系统打印机缓冲池:lpr、lpd
  LOG_MAIL–电子邮件系统
  LOG_NEWS–网络新闻系统
  LOG_SYSLOG–由syslogd(8)产生的内部消息
  LOG_USER–随机用户进程产生的消息
  LOG_UUCP–UUCP子系统
  LOG_LOCAL0~LOG_LOCAL7–为本地使用保留
  
  Syslog为每个事件赋予几个不同的优先级:
  
  LOG_EMERG–紧急情况
  LOG_ALERT–应该被立即改正的问题,如系统数据库破坏
  LOG_CRIT–重要情况,如硬盘错误
  LOG_ERR–错误
  LOG_WARNING–警告信息
  LOG_NOTICE–不是错误情况,但是可能需要处理
  LOG_INFO–情报信息
  LOG_DEBUG–包含情报的信息,通常旨在调试一个程序时使用
  
  syslog.conf文件指明syslogd程序纪录日志的行为,该程序在启动时查询配置文件。该文件由不同程序或消息分类的单个条目组成,每个占一行。对每类消息提供一个选择域和一个动作域。这些域由tab隔开:选择域指明消息的类型和优先级;动作域指明syslogd接收到一个与选择标准相匹配的消息时所执行的动作。每个选项是由设备和优先级组成。当指明一个优先级时,syslogd将纪录一个拥有相同或更高优先级的消息。所以如果指明"crit",那所有标为crit、alert和emerg的消息将被纪录。每行的行动域指明当选择域选择了一个给定消息后应该把他发送到哪儿。例如,如果想把所有邮件消息纪录到一个文件中,如下:
  
  #Log all the mail messages in one place
  mail.* /var/log/maillog
  
  其他设备也有自己的日志。UUCP和news设备能产生许多外部消息。它把这些消息存到自己的日志(/var/log/spooler)中并把级别限为"err"或更高。例如:
  
  # Save mail and news errors of level err and higher in aspecial file.
  uucp,news.crit /var/log/spooler
  
  当一个紧急消息到来时,可能想让所有的用户都得到。也可能想让自己的日志接收并保存。
  
  #Everybody gets emergency messages, plus log them on anther machine
  *.emerg *
  *.emerg @linuxaid.com.cn
  
  alert消息应该写到root和tiger的个人账号中:
  
  #Root and Tiger get alert and higher messages
  *.alert root,tiger
  
  有时syslogd将产生大量的消息。例如内核("kern"设备)可能很冗长。用户可能想把内核消息纪录到/dev/console中。下面的例子表明内核日志纪录被注释掉了:
  
  #Log all kernel messages to the console
  #Logging much else clutters up the screen
  #kern.* /dev/console
  
  用户可以在一行中指明所有的设备。下面的例子把info或更高级别的消息送到/var/log/messages,除了mail以外。级别"none"禁止一个设备:
  
  #Log anything(except mail)of level info or higher
  #Don't log private authentication messages!
  *.info:mail.none;authpriv.none /var/log/messages
  
  在有些情况下,可以把日志送到打印机,这样网络入侵者怎么修改日志都没有用了。通常要广泛纪录日志。Syslog设备是一个攻击者的显著目标。一个为其他主机维护日志的系统对于防范服务器攻击特别脆弱,因此要特别注意。
  
  有个小命令logger为syslog(3)系统日志文件提供一个shell命令接口,使用户能创建日志文件中的条目。用法:logger 例如:logger This is a test!
  
  它将产生一个如下的syslog纪录:Aug 19 22:22:34 tiger: This is a test!
  
  注意不要完全相信日志,因为攻击者很容易修改它的。
  
  5. 程序日志
  
  许多程序通过维护日志来反映系统的安全状态。su命令允许用户获得另一个用户的权限,所以它的安全很重要,它的文件为sulog。同样的还有sudolog。另外,想Apache有两个日志:access_log和error_log。
  

关于GOOGLE 的 恶意网站检测

在使用GOOGEL 的时候,有时候会提示,网页存在病毒或恶意软件可能会损害您的计算机等等。这种时候我们当然会感谢Google提醒,随着现在随着恶意站点的层出不穷,我们有时候还是会在搜索引擎中无意打开恶意站点,并可能感染上病毒。Google干脆正式公布了这个恶意网页报告地址,你可以自行登陆页面报告你发现的恶意软件,但是Google会核准之后才会正式在搜索引擎中进行屏蔽。

这可以说是不一个不错的提醒,这个技术上百度就做不到了,虽然GOOGLE 的检测有时候可能会误判,但是对于网名来说也无疑是一个好的提醒,可以稍微防止访问带有恶意软件,或者木马的网站。

google 点击率高账户会被停用吗?

2007 年 10 月期间我们在全国6个城市举办了 AdSense 产品介绍会,期间有很多的发布商朋友提出了很多很好的意见和建议。这里我们就针对很多用户提出的点击率和无效点击的问题谈一些我们的想法。

点击率的高低和是否产生无效点击没有直接的联系。有的网站虽然点击率非常低,但可能包含了大量的无效点击,而有的网站虽然点击率较高,却都是用户对广告自然产生兴趣的结果,并没有产生无效点击。

一般而言,行业类网站在 AdSense 广告有比较好投放的情况下会有相对较高的点击率。论坛、娱乐性网站的点击率整体会低一点。但是这也并非绝对,网站优化非常重要。对网站的用户习惯和和他们对网站关注情况的理解,将会有助于您将广告投放到最佳的板块,在为用户提供有效信息的同时,增强广告效果,为广告主带来更好的投资回报率。这样广告主也将会更加乐意在您的网站投放 AdSense 广告,从而提高您的收益。

内容充实,拥有优质用户的网站一般情况下每天页面展示量和点击率的数据都会比较平稳。如果您发现您的网站统计数据在一段时间内发生比较剧烈的变化,请仔细查看网站日志,了解相关信息,并通过帮助中心将您发现的详细信息告诉我们。

避免无效点击的另外一种途径是查阅并遵守我们的条款和计划政策,按照 Google AdSense 要求投放广告,将会有效减少无效点击,在为广告主提高回报率的同时让您通过 Google AdSense 获得更好的收益,保障您的账户安全。

http://adsense.googlechinablog.com/2007/11/blog-post_20.html

2008年将货币政策

中新网12月5日电 中国央行今日透露,根据中央经济工作会议要求,2008年,中国央行将实行从紧的货币政策,综合运用多种货币政策工具,采取有力措施,加强流动性管理,进一步完善人民币汇率形成机制,更好地调节社会总需求和改善国际收支平衡状况,促进国民经济又好又快发展。

据央行网站消息:12月5日下午,中国人民银行党委书记、行长周小川主持召开人民银行党委会议,传达学习中央经济工作会议精神,研究部署贯彻落实的具体措施。

人民银行党委认为,中央经济工作会议全面贯彻落实党的十七大精神,从全局和战略的高度,分析了当前国际国内形势,明确提出了明年经济工作的指导思想、目标任务和方针政策,为明年的经济金融工作指明了方向。2008年是全面贯彻党的十七大精神的第一年,也是改革开放三十周年,又是举办奥运会之年。按照中央经济工作会议的部署,全面做好2008年金融工作,对于推进改革开放,加强和改进宏观调控,推动科学发展,促进社会和谐,实现国民经济又好又快发展,具有十分重要的意义。

人民银行党委强调,根据中央经济工作会议要求,2008年,人民银行将全面贯彻党的十七大精神,高举中国特色社会主义伟大旗帜,以邓小平理论和“三个代表”重要思想为指导,深入贯彻落实科学发展观,紧紧围绕转变经济发展方式和完善社会主义市场经济体制,继续加强和改善宏观调控,进一步发挥货币政策在宏观调控中的重要作用,实行从紧的货币政策,综合运用多种货币政策工具,采取有力措施,加强流动性管理,进一步完善人民币汇率形成机制,更好地调节社会总需求和改善国际收支平衡状况,促进国民经济又好又快发展。

人民银行党委要求,人民银行系统要认真学习、深刻领会、全面贯彻中央经济工作会议精神,统一认识,明确任务,抓紧研究部署明年各项工作。(完)

google adsense 新政的难道阿里妈妈惹的祸?

google为什么放着好好的赚钱模式不用,转而用现在的非整块点击呢,因为这样能为广告主省钱,

为什么google现在要讨好广告客户呢,因为阿里妈妈这个不要脸的来抢夺市场了,而且阿里妈妈沿用了国内联盟以广告主的利益为中心的模式,分级别发放广告,基本上歧视中小网站,不给你好广告,给你个5块钱就把你打发了,。

google担心他们那套以站长为中心的模式失去广告客户所以就发布新政了,唉,倒霉的就是中小站长们了。。。

所以,我们应该抵制的是阿里妈妈的广告,让她去死吧,没有网站帮她贴广告,她就没有广告主上门,阿里妈妈一死,goolge没有了对手,肯定要回归原来的政策的,有钱不赚嘛!!

所以我们各个网站从现在做起撤掉阿里妈妈吧,掐死阿里妈妈,让goolge垄断把,哈哈~

(以上仅为分析,仅作参考, )

来源:http://www.im286.com/thread-2285641-1-1.html

什么是MSN/ msn什么意思

TAGS:什么是MSN msn什么意思

微软出品的 ICQ 类软件。是一套类似ICQ的线上即时通讯软件。以最简单的方式为您提供强有力的即时消息支持。它能使 Microsoft Outlook Express(R) 和 MSNHotmail(R)变得更简单易用。 Messenger Service 还可使您与朋友的联机交谈变得更加轻松愉快!
优秀的通信工具!
了解谁在联机并交换即时消息
查看您的朋友何时联机并与其交换即时消息。您可与他们进行单独的聊天,或者在同一个对话窗口中与多达四个的联系人进行聊天。自动的输入指示器可让您知道何时您的朋友正在输入答复。
进行全球电话呼叫
以非常低的费用呼叫世界的任何地方。您可以选择您要使用的电话服务提供商!请从服务提供商的列表中选择最适合您的提供商。
用交谈取代输入
别再敲键盘了!使用计算机上的话筒和扬声器就可以和位于世界各地的朋友进行交谈。
呼叫朋友
将文本消息发送到朋友的移动电话和传呼机上!
此特性仅适用于美国和加拿大。
加入聊天
进入“聊天室”结识新朋友,或加入与名人聊天。
此特性不是在所有地区都适用。
共享图片或其他任何文件
使用 MSN Messenger 与朋友交换照片或喜爱的音乐,或者任何其他文件。
监视新的电子邮件
查看您有多少新的电子邮件。并在您收到新的 MSN Hotmail? 电子邮件时得到通知。
邀请朋友玩游戏
使用 MSN Messenger 邀请朋友联机进行 DirectPlay? 兼容游戏

Apache服务器配置技巧

Apache服务器配置技巧

  1、如何设置请求等待时间
  在httpd.conf里面设置:
  TimeOut n
  其中n为整数,单位是秒。
  设置这个TimeOut适用于三种情况:
  
  2、如何接收一个get请求的总时间
  接收一个post和put请求的TCP包之间的时间
  TCP包传输中的响应(ack)时间间隔

  3、如何使得apache监听在特定的端口
  修改httpd.conf里面关于Listen的选项,例如:
  Listen 8000
  是使apache监听在8000端口
  而如果要同时指定监听端口和监听地址,可以使用:
  Listen 192.170.2.1:80
  Listen 192.170.2.5:8000
  这样就使得apache同时监听在192.170.2.1的80端口和192.170.2.5的8000端口。
  当然也可以在httpd.conf里面设置:
  Port 80
  这样来实现类似的效果。

  4、如何设置apache的最大空闲进程数
  修改httpd.conf,在里面设置:
  MaxSpareServers n
  其中n是一个整数。这样当空闲进程超过n的时候,apache主进程会杀掉多余的空闲进程而保持空闲进程在n,节省了系统资源。如果在一个apache非常繁忙的站点调节这个参数才是必要的,但是在任何时候把这个参数调到很大都不是一个好主意。
  同时也可以设置:
  MinSpareServers n
  来限制最少空闲进程数目来加快反应速度。

  5、apache如何设置启动时的子服务进程个数
  在httpd.conf里面设置:
  StartServers 5
  这样启动apache后就有5个空闲子进程等待接受请求。
  也可以参考MinSpareServers和MaxSpareServers设置。

  6、如何在apache中设置每个连接的最大请求数
  在httpd.conf里面设置:
  MaxKeepAliveRequests 100
  这样就能保证在一个连接中,如果同时请求数达到100就不再响应这个连接的新请求,保证了系统资源不会被某个连接大量占用。但是在实际配置中要求尽量把这个数值调高来获得较高的系统性能。

  7、如何在apache中设置session的持续时间
  在apache1.2以上的版本中,可以在httpd.conf里面设置:
  KeepAlive on
  KeepAliveTimeout 15
  这样就能限制每个session的保持时间是15秒。session的使用可以使得很多请求都可以通过同一个tcp连接来发送,节约了网络资源和系统资源。

  8、如何使得apache对客户端进行域名验证
  可以在httpd.conf里面设置:
  HostnameLookups on|off|double
  如果是使用on,那么只有进行一次反查,如果用double,那么进行反查之后还要进行一次正向解析,只有两次的结果互相符合才行,而off就是不进行域名验证。
  如果为了安全,建议使用double;为了加快访问速度,建议使用off。

  9、如何使得apache只监听在特定的ip
  修改httpd.conf,在里面使用
  BindAddress 192.168.0.1
  这样就能使得apache只监听外界对192.168.0.1的http请求。如果使用:
  BindAddress *
  就表明apache监听所有网络接口上的http请求。
  当然用防火墙也可以实现。

  10、apache中如何限制http请求的消息主体的大小
  在httpd.conf里面设置:
  LimitRequestBody n
  n是整数,单位是byte。
  cgi脚本一般把表单里面内容作为消息的主体提交给服务器处理,所以现在消息主体的大小在使用cgi的时候很有用。比如使用cgi来上传文件,如果有设置:
  LimitRequestBody 102400
  那么上传文件超过100k的时候就会报错。

  11、如何修改apache的文档根目录
  修改httpd.conf里面的DocumentRoot选项到指定的目录,比如:
  DocumentRoot /www/htdocs
  这样http://localhost/index.html就是对应/www/htdocs/index.html

  12、如何修改apache的最大连接数
  在httpd.conf中设置:
  MaxClients n
  n是整数,表示最大连接数,取值范围在1和256之间,如果要让apache支持更多的连接数,那么需要修改源码中的httpd.h文件,把定义的HARD_SERVER_LIMIT值改大然后再编译。

  13、如何使每个用户有独立的cgi-bin目录
  有两种可选择的方法:
  (1)在Apache配置文件里面关于public_html的设置后面加入下面的属性:
  ScriptAliasMatch ^/~([^/]*)/cgi-bin/(.*) /home//cgi-bin/
  (2)在Apache配置文件里面关于public_html的设置里面加入下面的属性:
  
    Options ExecCGI
    SetHandler cgi-script
  

  14、如何调整Apache的最大进程数
  Apache允许为请求开的最大进程数是256,MaxClients的限制是256.如果用户多了,用户就只能看到Waiting for
  reply….然后等到下一个可用进程的出现。这个最大数,是Apache的程序决定的–它的NT版可以有1024,但Unix版只有256,你可以在src/include/httpd.h中看到:

  ??#ifndef HARD_SERVER_LIMIT
  ??#ifdef WIN32
  ??#define HARD_SERVER_LIMIT 1024
  ??#else
  ??#define HARD_SERVER_LIMIT 256
  ??#endif
  ??#endif
  ??你可以把它调到1024,然后再编译你的系统。

  15、如何屏蔽来自某个Internet地址的用户访问Apache服务器
  可以使用deny和allow来限制访问,比如要禁止202.202.202.xx网络的用户访问:
  
  order deny,allow
  deny from 202.202.202.0/24
  

  16、如何在日志里面记录apache浏览器和引用信息
  你需要把mod_log_config编译到你的Apache服务器中,然后使用下面类似的配置:
  CustomLog logs/access_log "%h %l %u %t "%r" %s %b "%i"
  "%i""

  17、如何修改Apache返回的头部信息
  问题分析:当客户端连接到Apache服务器的时候,Apache一般会返回服务器版本、非缺省模块等信息,例如:
  Server: /1.3.26 (Unix) mod_perl/1.26
  解决:
  你可以在Apache的配置文件里面作如下设置让它返回的关于服务器的信息减少到最少:
  ServerTokens Prod
  注意:
  这样设置以后Apache还会返回一定的服务器信息,比如:
  Server: Apache
  但是这个不会对服务器安全产生太多的影响,因为很多扫描软件是扫描的时候是不顾你服务器返回的头部信息的。你如果想把服务器返回的相关信息变成:
  Server: It iS a nOnE-aPaCHe Server
  那么你就要去修改源码了。

Notepad2 替换windows xp默认记事本

系统自带的记事本notepad.exe软件的缺点不言而喻,我们可能想使用notexpad.exe等功能更强的程序来代替系统自带的记事本(notepad.exe),但是仅将原notepad.exenotexpad.exe替换后,系统重启动后会变会原来的notepad.exe, 原因是有一个隐藏的 system32/dllcache 目录下 (没有发现这个文件夹,需要把 隐藏受文件保护的文件或文件夹去掉,不然看不到的),还存有会自动刷新记事本版本的同名文件.

注意:
1.
windows xp / 2003 下,我直接用这个notepad.exe替换 /system32 下的文件,即可,但是重启系统后,会恢复原来的旧记事本。原因是有一个隐藏的 system32/dllcache 目录下,还存有会自动刷新记事本版本的同名文件,还需要把紫色notepad.exe同时替换到该目录下。这个目录在运行中输入“c:Windowssystem32dllcache”,然后替换。这样重启就没问题了。

2.windows 2000 下大同小义,只不过进入的目录是c:Winntsystem32dllcache

上面的在替换 dllcache 目录下的同名文件时,系统会弹出对话框告诉你系统和序被替换,可能会不稳定,要求插入安装盘恢复旧的文件。这个不用理它,因为想恢复的时候,只是用备份好的旧记事本复制回去就行了。
然后,在开始”-“附件”-“记事本中打开,就行了。嘻嘻。

 

这是转载的,具体出处不知道了

notepad2.rar下载

342

DIV+CSS 一行两列的最简单代码<ul> <li>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
<!–
.list-class {
 LINE-HEIGHT: 18px; TEXT-ALIGN: left; margin:10px 0 0 20px;
}
.list-class UL {
 padding:0px ;width:600px;
}
.list-class li {
 padding:2px 0px 2px 22px; width:250px; display:block; float:left;
}
}
–>
</style>
</head>
<body>
<DIV class=list-class>
<UL >
<LI>列表信息一</li>
<LI>列表信息一</li>
<LI>列表信息一</li>
<LI>列表信息一</li>
<LI>列表信息一</LI>
<LI>列表信息一</li>
<LI>列表信息一</li>
<LI>列表信息一</li>
<LI>列表信息一</li>
<LI>列表信息一</LI>
</UL>
</DIV>
</body>
</html>