本文介绍: Nginx概述一款高新能、轻量级Web服务软件稳定性高系统资源消耗低对HTTP并发连接处理能力高单台物理服务器支持30 000~50 000个并发请求。Nginx功能介绍静态web资源服务html图片jscsstxt静态资源http/https协议反向代理 7层结合FastCGI/uWSGI/SCGI等协议反向代理动态资源请求tcp/udp协议请求转发(反向代理) 4层基础特性模块化设计,较好的扩展性高可靠性。

目录

一、Nginx概述

二、Nginx三大作用:反向代理、负载均衡、动静分离

三、Nginx和Apache

3.1Nginx和Apache的差异 

3.2Nginx和Apache的优缺点比较

四、编译安装niginx

五、创建Nginx 自启动文件 

 六、Nginx的信号使用

6.1信号

七、升级 nginx1.18 nginx1.20


一、Nginx概述

Nginx概述

Nginx 功能介绍

基础特性

Web 服务相关的功能

二、Nginx三大作用:反向代理负载均衡、动静分离

反向代理

服务端 配置客户端 访问服务器A ,服务器A 为代理服务器 ,将客户服务再转发到服务器B 

作用缓存,将服务器的响应缓存自己内存中,减少服务器压力;

           负载均衡,将用户请求分配给多个服务器;

           访问控制

正向代理

客户端 配置配置完了再去访问具体服务,即代理服务器 代理了客户端 ,再去和目标服务器 进行交互

 作用提高访问速度

            隐藏客户端真实IP地址

负载均衡:分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务

三、Nginx和Apache

3.1Nginx和Apache的差异 

3.2Nginx和Apache的优缺点比较

nginx相对于apache的优点∶

轻量级,同样起web服务,比Apache占用更少的内存及资源。
高并发,Nginx处理请求异步阻塞的,而Apache是阻塞型的在高并发下,Nginx能保持低资源低消耗高性能
高度模块化的设计。
编写模块相对简。
社区活跃,各种高性能模块出品速度
apache相对于nginx的优点∶

rewritenginxrewrite强大
模块多,基本想到的都可以找到
bug, Nginx的bug相对较超稳定

四、编译安装niginx

安装依赖

yum -y install gcc pcredevel openssldevel zlibdevel openssl  openssldevel

下载安装

nginx安装官网https://nginx.org/en/download.html

wget http://nginx.org/download/nginx-1.18.0.tar.gz

 新建运行用户、组

 编译安装nginx

tar xf nginx-1.18.0.tar.gz 
cd nginx-1.18.0/
mkdir /apps/nginx -p
 
./configureprefix=/apps/nginx
user=nginx
group=nginx
–with-http_ssl_module
–with-http_v2_module
–with-http_realip_module
–with-http_stub_status_module
–with-http_gzip_static_module
–with-pcre
–with-stream
–with-stream_ssl_module
–with-stream_realip_module
 
 
make -j2 && make install
 
chown -R nginx.nginx /apps/nginx

 创建软连接后直接 nginx启动

ln –s /apps/nginx/sbin/nginx /usr/sbin/

 

五、创建Nginx 自启动文件 

vim /usr/lib/systemd/system/nginx.service
 
[Unit]
Description=nginx – high performance web server
Documentation=http://nginx.org/en/docs/
After=networkonline.target remotefs.target nsslookup.target
Wants=networkonline.target
[Service]
Type=forking
PIDFile=/apps/nginx/logs/nginx.pid
ExecStart=/apps/nginx/sbin/nginx –c /apps/nginx/conf/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID
[Install]
WantedBy=multiuser.target

 

 重新加载配置设置开机自启并开启服务

  1. systemctl daemon-reload               重新加载配置

  2. systemctl enablenow nginx         设置开机自起

  3. systemctl status nginx.service        查看服务状态

 若出现

问题其一(1) 如果卡主是应为logs下有 nginx.pid  文件  删除即可

问题其二(2)检查80端口是否占用

 六、Nginx的信号使用

6.1信号

nginx 命令支持向其发送信号实现不同功能

nginx 当做单独命令使用有以下选项

信号 意义
nginx -v 显示版本
显示编译详细情况、模块信息
检查语法格式
打印当前配置
发送信号
立即关闭
优雅退出,不影响业务
重新加载配置文件
分割日制
优雅升级
信号 意义
nginx -v 显示版本
nginx -V 显示编译详细情况、模块信息
nginx -t 检查语法格式
nginx -T 打印当前配置
nginx -s 发送信号
nginx -s stop 立即关闭
nginx -s quit 优雅退出,不影响业务
nginx -s reload 重新加载配置文件
nginx -s  USR1 分割日制
nginx -s  USR2 优雅升级
nginx -g ‘user lisi;’ lisi身份运行默认是以nginx身份
nginx -g ‘daemon off;’ 前台运行命令

七、升级 nginx1.18 nginx1.20

  1. 将旧Nginx文件换成新Nginx文件(注意备份)

  2. master进程发送USR2信号

  3. master进程修改pid文件名,加后缀.oldbin

  4. master进程用新Nginx文件启动master进程,系统中将有新旧两个Nginx主进程共同提供Web服务

  5. 向旧的Nginx服务进程发送WINCH信号,使旧的Nginx worker进程平滑停止,并删除Nginx.pid.oldbin文件

  6. 向旧master进程发送QUIT信号,关闭老master

  7. 如果发现升级问题,可以回滚向老master发送HUP,向新master发送QUIT

 

 

 添加模块

 

原文地址:https://blog.csdn.net/Besteady/article/details/132494818

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_14435.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注