Nginx Web服务应用
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常用功能配置
。。。