Nginx介绍

nginx是一个开源的、支持高性能的、高并发的www服务以及代理服务软件

nginx的优点:

性能:占有系统资源少,支持更多的并发连接(特别是静态小文件),更高的访问效率

功能:不仅作为Web服务,还可以做反向代理负载均衡以及缓存服务

Nginx服务器的特点和三大功能

1、nginx特点

•支持高并发,能支持几万并发连接(特别是静态小文件)

•耗费资源内存少,3万并发开启10个进程内存消耗不到200m

•可以做http的反向代理以及加速缓存

•具备squid专业缓存软件的缓存功能等

•支持异步I/O事件模型epoll

2、nginx的三大功能

Web服务、反向代理和负载均衡、前端业务数据缓存服务

3、web页面存放的位置:html下

Nginx详解

•nginx强大是因为有很多功能模块,如下:

1、nginx的核心功能模块Core functionality:负责nginx的全局应用,主要对应主配置文件的Main区块和Events区块,重要的全局参数配置就在这里

2、标准的http功能模块:大部分默认安装在nginx里面

•nginx目录结构说明

├── client_body_temp
├── fastcgi.conf  # fastcgi相关参数的配置文件
├── fastcgi.conf.default  # fastcgi.conf的原始备份
├── fastcgi_params  # fastcgi的参数文件
├── fastcgi_params.default  # fastcgi参数文件的原始备份
├── fastcgi_temp  # fstcgi临时数据目录
├── html  # nginx的站点目录
│   ├── 50x.html  # 报错的时候出现的页面
│   └── index.html  #默认的首页文件
├── koi-utf
├── koi-win
├── logs  # nginx的日志文件目录
│   ├── access.log  # nginx的访问日志文件  tail -f access.log 实时查看访问
│   └── error.log  # nginx的错误日志文件
├── mime.types  # 媒体类型
├── mime.types.default
├── nginx.conf  # 主配置文件
├── nginx.conf.default
├── proxy_temp  # 临时目录
├── sbin
│   └── nginx  # nginx的启动文件
├── scgi_params  # scqi相关参数,一般用不到
├── scgi_params.default
├── scgi_temp  # 临时目录
├── uwsgi_params  # uwsqi相关参数,一般用不到
├── uwsgi_params.default
├── uwsgi_temp  # 临时目录
└── win-utf

所有结尾是default的文件全部都是备份文件

3、nginx的主配置文件解读:

整个文件是以区块形式组织的,每个区块以'{}'表示

worker_processes  1;  # 进程数量
error_log  logs/error.log;
pid        logs/nginx.pid;
## Main区块,nginx的核心功能模块

events {  ## 事件区块的开始
    worker_connections  1024;  # 每个进程支持的最大连接数
}  ## 事件区块结束
## Events区块,nginx的核心功能区块

## http区块,nginx的标准http功能模块,每个http区块中包含server区块,server区块中又包含location区块
http {  ## http区块的开始
    include       mime.types;  ##nginx的媒体类型文件
    default_type  application/octet-stream;  # 默认媒体类型
    sendfile        on;  ## 开启高效传输模式
    keepalive_timeout  65;  ## 链接超时
    server {  ##server区块的开始,表示一个独立的虚拟主机站点
        listen       80;  ## 监听的端口号
        server_name  localhost;  ## 提供服务的域名主机
        location / {  ## 第一个location区块的开始
            root   html;  ## 站点的根目录
            index  index.html index.htm;  ## 默认站点首页文件
        }  ## location区块结束
        error_page   500 502 503 504  /50x.html;  # 出现页面错误的对应码的时候,使用50x.html回应客户端
        location = /50x.html {  ## location区块的开始
            root   html;  ##指定站点目录
        }  ##location区块结束
    }  ##serve区块结束
}  ## http区块结束

4、nginx的其他配置文件:

配合动态服务(例如php服务),nginx用到FastCGI相关配置文件,是在主配置文件中嵌入include命令实现的

Nginx虚拟主机配置

•虚拟主机介绍

在一个web服务里面建立多个独立的站点,可以进行域名或者ip独立的访问,独立的对外提供服务,Apache使用标签:<VirtualHost></VirtualHost>,Nginx使用标签server{}

•虚拟主机的类型

1、基于域名的的虚拟主机:通过不同的域名进行访问,用的最多

2、基于端口的虚拟主机:通过不同的端口进行访问,用于公司内部使用

3、基于ip的虚拟主机:通过不同的ip进行访问

•基于域名的的虚拟主机配置

# 添加server部分
server {
   listen 80;
   server_name www.baoge.com; #需要添加的域名
   location / {
      root html;
      index index.html;
      }
}

•基于端口的虚拟主机

# 添加server
server {
   listen 81;
   server_name www.yetao.com;
   location / {
      root html;
      index index.html;
   }
}

•基于ip的虚拟主机

在自己的虚拟机里面添加网卡ip

ip addr add 192.168.1.2/24 dev eth0
# 添加server
server {
   listen 192.168.1.2:80;
   server_name www.yaomeng.com;
   location / {
      root html;
      index index.html;
   }
}

Nginx常用功能配置

。。。