nginx相对于apache的区别是:轻量级,同样起web服务,比apache占用更少的内存及资源抗并发,nginx处理请求是异步非阻塞的,而apache则是阻塞型的,在高并发下nginx能保持低资源低消耗高性能高度模块化的设计,编写模块相对简单社区活跃,各种高性能模块出品迅速apache相对于nginx的优点:rewrite,比nginx的rewrite强大模块超多,基本想到的都可以找到少bug,nginx的bug相对较多存在就是理由,一般来说,需要性能的web服务,用nginx。如果不需要性能只求稳定,那就apache吧。后者的各种功能模块实现得比前者,例如ssl的模块就比前者好,可配置项多。这里要注意一点,epoll(freebsd上是kqueue)网络io模型是nginx处理性能高的根本理由,但并不是所有的情况下都是epoll大获全胜的,如果本身提供静态服务的就只有寥寥几个文件,apache的select模型或许比epoll更高性能。当然,这只是根据网络io模型的原理作的一个假设,真正的应用还是需要实测了再说的。