Nginx入门教程

一、Nginx简介

Nginx (“engine x”) 是一个高性能的 HTTP 和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。

  • 高性能:高响应高并发
  • IMAP/POP3/SMTP:邮件服务器
  • 反向代理:隐藏真实的服务端,如百度https://www.baidu.com/有多个服务器,用户访问同一个域名,对背后服务器调度是没有感知的。

二、Nginx特点

  • 反向代理
  • 负载均衡
  • 动静分离

反向代理:
Nginx入门教程_第1张图片
负载均衡:
即是将负载分摊到不同的服务单元。

  1. 轮询 :将请求按顺序轮流地分配到后端服务器上,它均衡地对待后端的每一台服务器,而不关心服务器实际的连接数和当前的系统负载。
  2. 加权轮询 :不同的后端服务器可能机器的配置和当前系统的负载并不相同,因此它们的抗压能力也不相同。给配置高、负载低的机器配置更高的权重,让其处理更多的请求;而配置低、负载高的机器,给其分配较低的权重,降低其系统负载.
  3. ip_hash :根据获取客户端的IP地址,通过哈希函数计算得到一个数值,用该数值对服务器列表的大小进行取模运算,得到的结果便是客服端要访问服务器的序号。

动静分离:
把动态页面和静态页面有不同的服务器来解析,加快解析速度。

  • 一种是纯粹把静态文件独立成单独的域名,放在独立的服务器上,也是目前主流推崇的方案
  • 另外一种就是动态跟静态文件混合在一起发布,通过nginx来分开

三、nginx.conf配置

# 全局配置
一般配置Nginx用户、用户组、引用文件、错误日志等

events {
# 事件配置
}

http {
# http配置
设定mime类型等
#导入文件
include  vhosts/*.conf;
include  new-vhosts/*.conf;

  upstream XXX {
  # 负载均衡配置
  server 127.0.0.1:8080 weight=2;
  server 127.0.0.1:8081 weight=1;
  }


  server
  #配置虚拟机
  {
    listen 80;#http默认80端口、https默认443端口
    server_name XXX.cn.com; #访问域名,即客户访问的域名
    location / {
      #设置被代理服务器的端口或套接字,以及URL
      #proxy_pass http://127.0.0.1:8080;
      proxy_pass http://XXX; 
     }
   }
 }

四、Nginx常用命令

* nginx #启动nginx

* nginx -s stop #强制退出nginx

* nginx -s quit #安全退出nginx

* nginx -s reload #重新加载nginx配置

你可能感兴趣的:(nginx)