nginx

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > nginx > Nginx网站服务

Nginx网站服务过程详解

作者:狮子跑了

Nginx是一款高性能、异步非阻塞工作模式、轻量级Web服务软件,这篇文章主要介绍了Nginx网站服务的相关知识,需要的朋友可以参考下

一.关于Nginx的特点

二.编译安装nginx服务

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

systemctl stop firewalld
systemctl disable firewalld
setenforce 0
nginx-1.12.0.tar.gz

2.安装依赖包

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

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的操作命令

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 <PID号
kill -s QUIT <PID号>
killall -3 nginx
killall -s QUIT nqinx

重载

kill -l <PID号>
kill -s HUP <PID号>
killall -1 nginx
killall -s HUP nginx

日志分割,重新打开日志文件

kill -USR1 <PID号>

平滑升级

kill -USR2 <PID号>

新版本升级

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

6.添加Nginx系统服务

方法一

方法二

三.认识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已安装的所有模块

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;
      }

3.重启服务,访问测试

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

到此这篇关于Nginx网站服务的文章就介绍到这了,更多相关Nginx网站服务内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文