nginx网站服务

一、nginx的相关概念

1、定义:高性能,轻量级的web服务软件

(1)高性能:对http并发连接的处理能力很高,单台物理服务器可以支持30000-50000个并发请求(在实际操作中,为了维护服务器的稳定,一般设置在20000个左右)

(2)轻量级:nginx软件很小,安装所需的空间也很小

2、特点:稳定性强,对系统资源消耗低

3、nginx的主要功能

(1)处理静态网页:html、htm、图像

(2)支持反向代理(负载均衡)。负载均衡依靠算法实现

(3)处理动态内容

(4)虚拟主机:一个nginx可以配置多个虚拟主机,每一个虚拟主机都可以作为一个域名和站点,每个虚拟主机都可以拥有独立的配置和资源(可以配置多个网站)

(5)URL重定向:可以对URL的请求进行修改和重定向

(6)缓存机制,可以缓存静态文件和动态内容

(7)自带日志记录(主要是服务日志,包括访问日志和报错日志;而控制日志还是在/var/log/messages中)

(8)代理服务器:通过代理可以访问其他的后端服务器

二、安装nginx(编译安装)

关闭防火墙和安全机制

(二)安装依赖包

(三)创建运行用户、组(不创建家目录,不让用户登录)

useradd -M -s /sbin/nologin nginx

(四)编译安装Nginx

nginx网站服务_第1张图片

nginx网站服务_第2张图片

(五)修改权限

1、conf:保存nginx的所有配置文件

(1)nginx.conf:nginx的主配置文件

2、html:保存nginx的web文件,包括.html结尾的文件、图片

(1)50x.html:nginx默认的报错提示页面

3、logs:保存日志的目录(路径可以改)

(1)access.log:记录的是访问日志记录

(2)error.log:记录的是报错日志,403,404,500

4、sbin:保存nginx的二进制的启动脚本

nginx网站服务_第3张图片

添加系统配置服务

nginx网站服务_第4张图片

nginx网站服务_第5张图片

(七)修改配置文件

nginx网站服务_第6张图片

nginx网站服务_第7张图片nginx网站服务_第8张图片

1、 nginx的命令:

-t:检测nginx配置文件以及配置文件语法是否正确

-v:显示版本

-V:显示版本和当前nginx支持的模块

-s stop/restart/reload:给nginx的主程序发送信号,不能开启nginx服务

三、nginx的配置文件内容(重点)

(一)全局块:全局配置,对所有用户生效

(二)events模块:配置影响Nginx服务器与用户的网络连接(配置并发数)

(三)http模块(核心):配置代理、缓存、日志、虚拟主机和第三方模块

(四)server模块:配置虚拟主机的设置(在一个http模块中可以有多个server)

(五)location模块:location模块只能配置在server模块当中,匹配uri

一个server模块当中可以有多个location

——nginx的功能模块

1、proxy:代理功能,核心功能模块之一,配置反向代理的功能

语法:proxy_pass 指定(只能定义在location模块中)

2、headers:处理请求和头部的响应信息,主要用于获取客户端的真实ip

3、upstream:支持七层反向代理模块,只能配置在http模块中,或者stream模块中(不属于server和location模块)

4、stream:四层反向代理模块(不能写在http模块中,只能写在全局配置中)

(五)vim /usr/local/nginx/conf/nginx.conf

——全局配置

nginx网站服务_第9张图片

修改并发连接数,至vim /etc/security/limits.conf:限制打开文件个数(重启生效)

nginx网站服务_第10张图片

——http模块

nginx网站服务_第11张图片

——server模块

nginx网站服务_第12张图片

——location模块

nginx网站服务_第13张图片

nginx网站服务_第14张图片

/ :表示nginx的默认家目录:/usr/local/nginx/html

/test;表示/usr/local/nginx/html/test

root:拼接,默认路径和URI路径拼接

alias:必须是完整路径

(四)统计nginx的访问状态

nginx网站服务_第15张图片

nginx网站服务_第16张图片

Active connection:2    #表示当前活动的连接数

server accepts          #已经处理的连接数

handled               #成功的tcp握手次数

requests               #已经处理的请求数

reading:0             #服务端正在从客户端读取数据,正在读取客户端请求的连接数

writing:1          #服务端正在将响应数据发给客户端,正在向客户端写入响应的连接数

waiting:1          #表示有连接处于空闲状态,当前等待客户端请求的连接数。time_wait

五、配置nginx的虚拟主机

(一)基于域名的虚拟主机

1、配置nginx

nginx网站服务_第17张图片

nginx网站服务_第18张图片

2、配置工作目录

nginx网站服务_第19张图片

nginx网站服务_第20张图片

nginx网站服务_第21张图片

3、用域名来访问必须做映射(一个主机可以映射多个网站)

4、在虚拟机中访问测试

nginx网站服务_第22张图片

nginx网站服务_第23张图片

(二)基于ip的虚拟主机

1、添加虚拟网卡

2、配置nginx

nginx网站服务_第24张图片

nginx网站服务_第25张图片

3、在浏览器查看

nginx网站服务_第26张图片

nginx网站服务_第27张图片

(三)基于端口的虚拟主机

1、修改端口号

nginx网站服务_第28张图片

nginx网站服务_第29张图片

2、测试

nginx网站服务_第30张图片nginx网站服务_第31张图片

(四)基于客户端(ip地址)的访问控制

1、设置nginx

nginx网站服务_第32张图片

2、测试

nginx网站服务_第33张图片

nginx网站服务_第34张图片nginx网站服务_第35张图片

你可能感兴趣的:(nginx,运维)