Nginx网站服务

一.关于Nginx的特点

  • 一款高性能、异步非阻塞工作模式、轻量级Web服务软件
  • 稳定性高
  • 系统资源消耗低
  • 对HTTP并发连接的处理能力高
  • 单台物理服务器可支持30000~50000个并发请求

二.编译安装nginx服务

1.关闭防火墙,将安装nginx所需软件包传到/opt目录下

systemctl stop firewalld
systemctl disable firewalld
setenforce 0

nginx-1.12.0.tar.gz

Nginx网站服务_第1张图片

在这里插入图片描述

Nginx网站服务_第2张图片

2.安装依赖包

yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++ make

Nginx网站服务_第3张图片

3.创建运行用户、组(nginx服务程序默认以 nobody 身份运行,建议为其创建专门的用户账号,以便更准确地控制其访问权限)

useradd -M -s /sbin/nologin nginx

在这里插入图片描述

4.编译安装Nginx

cd /opt
tar zxvf nginx-1.12.0.tar.gz -C /opt/
cd nginx-1.12.0/
./configure \
--prefix=/usr/local/nginx \       #指定nainx的安装路径
--user=nginx \                    #指定用户名
--group=nginx \                   #指定组名
--with-http_stub status_module    #启用 http_stub_status_module 模块以支持状态统计
make && make install
In -s /usr/local/nginx/sbin/nginx /usr/local/sbin/    #让系统识别nginx的操作命令

Nginx网站服务_第4张图片

Nginx网站服务_第5张图片

在这里插入图片描述

5.检查、启动、重启、停止 nginx服务

  • 启动
nginx
nginx -t                                     #开启nginx服务一些方法
/usr/local/nginx/sbin/nginx

在这里插入图片描述

  • 停止
cat /usr/local/nginx/logs/nginx.pid    #查看nginx的PID号的几种方法
netstat -lntp | grep nginx
ss -lntp | grep nginx
ps aux | grep nginx
kill -3 
killall -3 nginx
killall -s QUIT nqinx

在这里插入图片描述

Nginx网站服务_第6张图片

  • 重载
kill -l 
kill -s HUP 
killall -1 nginx
killall -s HUP nginx
  • 日志分割,重新打开日志文件
kill -USR1 
  • 平滑升级
kill -USR2 
  • 新版本升级
tar -zxvf nqinx-1.xx.xx.tar.gz
cd nginx-1.xx.xx
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module \
--with-http_ssl_module

make
mv/usr/local/nqinx/sbin/nqinx/usr/local/nginx/sbin/nqinxold
cp objs/nqinx /usr/local/nqinx/sbin/nginx
make upgrade

Nginx网站服务_第7张图片

Nginx网站服务_第8张图片

6.添加Nginx系统服务

  • 方法一

在这里插入图片描述

Nginx网站服务_第9张图片

  • 方法二

在这里插入图片描述

Nginx网站服务_第10张图片

三.认识Nginx服务的主配置文件 nginx.conf

1.全局配置

vim /usr/local/nginx/conf/nginx.conf
#user nobody;			      	#运行用户,若编译时未指定则默认为nobody
worker_processes 1;			  	#工作进程数量,一般设置为和cPu核数一样;设置为auto,nginx将会自己获取这个数值
#error_log logs/error.log;		#错误曰志文件的位置
#pid logs/ nginx.pid;			#PID 文件的位置
worker_rlinit_nofile 60000;		#设置所有worker进程最大可以打开的文件数,默认为1024

2.I/O 事件配置

	use epoll;					#使用epoll I/o模型,2.6及以上版本的系统内核,建议使用epoll模型以提高性能
	worker_connections 60000 ;	#每个进程处理60000个连接
	multi_accept on;			#是否一次性将监听到的连接全接收进来,默认为off,关闭时一次接收一条连接
	accept_mutex on;			#默认为on,开启时表示以串行方式接入新连接,否则将通报给所有worker。这可能会浪费资源并产生不可预计的后果,例如惊群问题

3.HTTP 配置

vim /usr/local/nginx/conf/nginx.conf

4.server块:配置虚拟主机的相关参数,一个http 块中可以有多个server块;

5.location块:用于配置匹配的 uri;

6.upstream:配置后端服务器具体地址,负载均衡配置不可或缺的部分

四.访问状态统计配置

1.查看已安装的Nginx 是否包HTTP_STUB_STATUS 模块

/usr/local/nginx/sbin/nginx -V 
cat /opt/nginx-1.12.2/auto/options | grep YES     #可查看nginx已安装的所有模块

在这里插入图片描述

Nginx网站服务_第11张图片

2.修改nginx.conf配置文件,指定访问位置并添加stub_status 配置

cd /usr/local/nginx/conf
cp nginx.conf nginx.conf.bak
vim /usr/local/nginx/conf/nginx.conf
      location /status {
      stub status on;
      access log off;
      }

在这里插入图片描述

Nginx网站服务_第12张图片

3.重启服务,访问测试

systemctl daemon- reload
systemctl restart nginx
浏览器访问http://192.168.247.131/status
curl -s http://192.168.247.131/status

Nginx网站服务_第13张图片

Nginx网站服务_第14张图片

Nginx网站服务_第15张图片

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