一般编译nginx时,都要先安装pcre、zlib等外部支持程序,然后编译安装nginx时指定这些外部支持程序的位置,这样nginx在每次启动的时候,就会去动态加载这些东西了。

下面介绍的是另一种方式,即将这些程序编译到nginx里面去,这样nginx启动时就不会采用动态加载的方式去load。从古谱中可获知,这种方式会比动态加载有更高的效率。

需要下载的东西:

  1. wget http://www.openssl.org/source/openssl-0.9.8l.tar.gz
  2. wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.00.tar.bz2
  3. wget http://www.zlib.net/zlib-1.2.3.tar.bz2
  4. wget http://nginx.org/download/nginx-0.8.30.tar.gz
把这些玩意都解压缩后,就会有:

  1. openssl-0.9.8l
  2. pcre-8.00
  3. zlib-1.2.3
  4. nginx-0.8.30

这几个目录,我把它们都放在/data/download/里,按原先的方式,需要进openssl、pcre、zlib目录里去编译安装它们,现在不用了,直接进nginx目录。

  1. cd nginx-0.8.30
  2. ./configure --prefix=/data/nginx --with-http_realip_module --with-http_sub_module --with-http_flv_module --with-http_dav_module --with-http_gzip_static_module --with-http_stub_status_module --with-http_addition_module --with-pcre=/data/download/pcre-8.00 --with-openssl=/data/download/openssl-0.9.8l --with-http_ssl_module --with-zlib=/data/download/zlib-1.2.3
  3. make
  4. make install

就可安装完成,这种方式安装的时间会较长,因为需要先编译外部程序,值得注意的是,make时不能加-j多进程方式,只能用单进程make,不然没法通过。如果你的应用不需要openssl,那么可以不下载openssl并在configure时将其去掉。另外,nginx的google_perftools_module还不能用这种方式编译进去,所以还是要先在外部安装google_perftools。
by 大尾巴 | 来自 sudone.com | 不指定 2010/03/12 16:45 | 学习 | 评论(0) | 引用(0) | 阅读(197)
lvs和nginx都可以用作多机负载的方案,它们各有优缺,在生产环境中需要好好分析实际情况并加以利用。

首先提醒,做技术切不可人云亦云,我云即你云;同时也不可太趋向保守,过于相信旧有方式而等别人来帮你做垫被测试。把所有即时听说到的好东西加以钻研,从而提高自己对技术的认知和水平,乃是一个好习惯。

下面来分析一下两者:

一、lvs的优势:

1、抗负载能力强,因为lvs工作方式的逻辑是非常之简单,而且工作在网络4层仅做请求分发之用,没有流量,所以在效率上基本不需要太过考虑。在我手里的lvs,仅仅出过一次问题:在并发最高的一小段时间内均衡器出现丢包现象,据分析为网络问题,即网卡或linux2.4内核的承载能力已到上限,内存和cpu方面基本无消耗。

2、配置性低,这通常是一大劣势,但同时也是一大优势,因为没有太多可配置的选项,所以除了增减服务器,并不需要经常去触碰它,大大减少了人为出错的几率。

3、工作稳定,因为其本身抗负载能力很强,所以稳定性高也是顺理成章,另外各种lvs都有完整的双机热备方案,所以一点不用担心均衡器本身会出什么问题,节点出现故障的话,lvs会自动判别,所以系统整体是非常稳定的。

4、无流量,上面已经有所提及了。lvs仅仅分发请求,而流量并不从它本身出去,所以可以利用它这点来做一些线路分流之用。没有流量同时也保住了均衡器的IO性能不会受到大流量的影响。

5、基本上能支持所有应用,因为lvs工作在4层,所以它可以对几乎所有应用做负载均衡,包括http、数据库、聊天室等等。

另:lvs也不是完全能判别节点故障的,譬如在wlc分配方式下,集群里有一个节点没有配置VIP,会使整个集群不能使用,这时使用wrr分配方式则会丢掉一台机。目前这个问题还在进一步测试中。所以,用lvs也得多多当心为妙。

二、nginx和lvs作对比的结果

1、nginx工作在网络的7层,所以它可以针对http应用本身来做分流策略,比如针对域名、目录结构等,相比之下lvs并不具备这样的功能,所以nginx单凭这点可利用的场合就远多于lvs了;但nginx有用
by 大尾巴 | 来自 http://www.sudone.com/ | 不指定 2010/03/12 16:33 | 学习 | 评论(0) | 引用(0) | 阅读(156)
程序员设计的程序里 有在php中嵌入ssi的代码
  1. <!--#include file="abc.html" -->
但是 必须将php解析为ssi才能运行
如果解析为ssi 则又将无法执行php代码

所以需要先解析为php执行一次 然后再执行ssi代码

apache可以通过在<document />内加入
AddOutputFilter Includes .php
来实现
具体请看
http://blog.daweiba.com/read.php/223.htm

nginx则无资料
于是摸索了下终于搞定

在nginx.conf中 location php的部分里加入
  1. ssi on;
  2. ssi_silent_errors on;
即可

此时.php文件
Tags: , ,
by 大尾巴 | 来自 本站原创 | 不指定 2010/03/12 15:55 | 实践 | 评论(0) | 引用(0) | 阅读(282)

无线网络加密技术应该是所有无线网民索要想要了解的,但是对于大多数普通的无线网络用户都不是很清楚,或许不知道在什么情况下应该用哪一种方法。那么下面就将为大家介绍3种方法。

无线网络加密技术 之 WEP(有线等效加密)
 
尽管从名字上看似乎是一个针对有线网络的安全选项,其实并不是这样。WEP标准在无线网络的早期已经创建,目标是成为无线局域网WLAN的必要的安全防护层,但是WEP的表现无疑令人非常失望。它的根源在于设计上存在缺陷。
 
在使用WEP的系统中,在无线网络中传输的数据是使用一个随机产生的密钥来加密的。但是,WEP用来产生这些密钥的方法很快就被发现具有可预测性,这样对于潜在的入侵者来说,就可以很容易的截取和破解这些密钥。即使是一个中等技术水平的无线黑客也可以在两到三分钟内迅速的破解WEP加密。

IEEE 802.11的动态有线等效保密(WEP)模式是二十世纪九十年代后期设计的,当时功能强大的无线网络加密技术作为有效的武器受到美国严格的出口限制。由于害怕强大的加密算法被破解,无线网络产品是被被禁止出口的。然而,仅仅两年以后,动态有线等效保密模式就被发现存在严重的缺点。但是二十世纪九十年代的错误不应该被当着无线网络安全或者IEEE 802.11标准本身,无线网络产业不能等待电气电子工程师协会修订标准,因此他们推出了临时密钥完整性协议TKIP(动态有线等效保密的补丁版本)。
 
尽管WEP已经被证明是过时且低效的,但是今天在许多现代的无线访问点和路由器中,它依然被支持。不仅如此,它依然是被个人或公司所使用的最多的加密方法之一。如果你正在使用WEP无线网络加密技术,如果你对你的网络的安全性非常重视的话,那么以后尽可能的不要再使用WEP,因为那真的不是很安全。

无线网络加密技术 之 WPA-PSK(TKIP)

无线网络最初采用的安全机制是WEP(有线等效私密),但是后来发现WEP是很不安全的,802.11组织开始着手制定新的安全标准,也就是后来的802.11i协议。但是标准的制定到最后的发布需要较长的时间,而且考虑到消费者不会因为为了网络的安全性而放弃原来的无

by 大尾巴 | 来自 本站原创 | 不指定 2010/03/12 10:16 | 学习 | 评论(0) | 引用(0) | 阅读(142)

一、介绍Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”, 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.
二、Location语法语法:location [=|~|~*|^~] /uri/ { … }
注:
1、~   为区分大小写匹配
2、~* 为不区分大小写匹配
3、!~和!~*分别为区分大小写不匹配及不区分大小写不匹配
示例一:
location  / { }
匹配任何查询,因为所有请求都以 / 开头。但是正则表达式规则将被优先和查询匹配。
示例二:
location =/ {}
仅仅匹配/
示例三:
location ~* \.(gif|jpg|jpeg)$ {
rewrite \.(gif|jpg)$ /logo.png;

注:不区分大小写匹配任何以gif,jpg,jpeg结尾的文件
三、ReWrite语法
last - 基本上都用这个Flag。
break - 中止Rewirte,不在继续匹配
redirect - 返回临时重定向的HTTP状态302
permanent - 返回永久重定向的HTTP状态301
1、下面是可以用来判断的表达式:
-f和!-f用来判断是否存在文件
-d和!-d用来判断是否存在目录
-e和!-e用来判断是否存在文件或目录
-x和!-x用来判断文件是否可执行
2、下面是可以用作判断的全局变量
例:http://localhost:88/test1/test2/test.php
$host:localhost
$server_port:88
$request_uri:http://localhost:88/test1/test2/test.php
$document_u

Tags:
by 大尾巴 | 来自 本站原创 | 不指定 2010/03/10 22:45 | 学习 | 评论(2) | 引用(0) | 阅读(124)
分页: 5/47 第一页 上页 1 2 3 4 5 6 7 8 9 10 下页 最后页 [ 显示模式: 摘要 | 列表 ]