文章目录

  • 介绍
  • 对比apache
  • nginx的工作原理与模块介绍
  • nginx能做什么?
  • 安装与使用
  • 安装
  • 简单的使用

介绍


Nginx(engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的http://Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。 其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。 Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。


对比apache

nginx相对于apache的优点:

  1. 轻量级,同样起web 服务,比apache占用更少的内存及资源 抗并发,nginx 处理请求是异步非阻塞的,而apache则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能高度模块化的设计,编写模块相对简单提供负载均衡
  2. 社区活跃,各种高性能模块出品迅速

apache 相对于nginx 的优点:

  1. apache的 rewrite 比nginx 的强大 ;
  2. 支持动态页面;
  3. 支持的模块多,基本涵盖所有应用;
  4. 性能稳定,而nginx相对bug较多。

两者优缺点比较:

  1. Nginx 配置简洁, Apache 复杂 ;
  2. Nginx 静态处理性能比 Apache 高 3倍以上 ;
  3. Apache 对 PHP 支持比较简单,Nginx 需要配合其他后端用;Apache 的组件比 Nginx 多 ;
  4. apache是同步多进程模型,一个连接对应一个进程;nginx是异步的,多个连接(万级别)可以对应一个进程;
  5. nginx处理静态文件好,耗费内存少;
  6. 动态请求由apache去做,nginx只适合静态和反向;
  7. Nginx适合做前端服务器,负载性能很好;
  8. Nginx本身就是一个反向代理服务器 ,且支持负载均衡

nginx的工作原理与模块介绍

工作原理

NGINX以高性能的负载均衡器,缓存,和web服务器闻名。Nginx由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单,当它接到一个HTTP请求时,仅仅通过查找配置文件将客户端请求映射到一个location block(location是Nginx配置中的一个指令,用于URL匹配),而在这个location中所配置的每个指令将会启动不同的模块去完成相应的工作。

模块介绍

Nginx的模块从结构上分为核心模块、基础模块和第三方模块:

  • 核心模块:HTTP模块、EVENT模块和MAIL模块
  • 基础模块:HTTP Access模块、HTTP FastCGI模块、HTTP Proxy模块和HTTP Rewrite模块,
  • 第三方模块:HTTP Upstream Request Hash模块、Notice模块和HTTP Access Key模块。

nginx能做什么?

  1. 反向代理
  2. 负载均衡
  3. HTTP服务器(包含动静分离)

安装与使用

安装

点击进入nginx官网

nginx的介绍与安装使用_nginx

点击进入下载页,下载自己想要的版本即可

Windows下的nginx安装只是简单的解压即可

简单的使用

方法1:

可以通过打开nginx.exe开启服务

nginx的介绍与安装使用_nginx_02

方法2

进入到nginx的文件夹中,然后cmd打开

nginx的介绍与安装使用_服务器_03

在cmd中输入​​start nginx​​开启服务

nginx的介绍与安装使用_apache_04

验证是否开启服务,在浏览器中输入​​127.0.0.1​​,如若这样显示,则服务开启成功

nginx的介绍与安装使用_nginx_05

如果是这样的话,则未开启成功,请重新操作,实在不行就重启

nginx的介绍与安装使用_服务器_06

nginx常用的dos指令:

  • 启动指令:start nginx
  • 快速停止:nginx -s stop
  • 保存再停止(常用于生产环境):nginx -s quit
  • 重新加载配置文件然后启动:nginx -s reload
  1. 首先需要执行:验证配置是否正确: nginx -t,这样就可以获取到配置文件所在的路径了
  2. 重新给nginx指向其需要的配置文件(即是nginx.conf): nginx -c D:\tools\nginx-1.6.3/conf/nginx.conf
  3. 重新开启一个新的黑窗体并执行(且必须是在D:/tools/nginx-1.6.3/目录下):
  4. nginx -s reload 即可重新加载配置文件启动了



更多内容详见微信公众号:Python研究所

nginx的介绍与安装使用_nginx_07