Linux:Nginx服务与搭建

这篇具有很好参考价值的文章主要介绍了Linux:Nginx服务与搭建。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、Nginx概述

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

三、Nginx和Apache

3.1Nginx和Apache的差异 

3.2Nginx和Apache的优缺点比较

四、编译安装niginx

五、创建Nginx 自启动文件 

 六、Nginx的信号使用

6.1信号

七、升级 nginx1.18 nginx1.20


一、Nginx概述

Nginx概述

  • 一款高新能、轻量级Web服务软件
  • 稳定性高
  • 系统资源消耗低
  • 对HTTP并发连接的处理能力高
  • 单台物理服务器可支持30 000~50 000个并发请求。

Nginx 功能介绍

  • 静态的web资源服务器html,图片,js,css,txt等静态资源

  • http/https协议的反向代理 7层

  • 结合FastCGI/uWSGI/SCGI等协议反向代理动态资源请求

  • tcp/udp协议的请求转发(反向代理) 4层

基础特性

  • 模块化设计,较好的扩展性

  • 高可靠性

  • 支持热部署:不停机更新配置文件,升级版本,更换日志文件

  • 低内存消耗:10000个keep-alive连接模式下的非活动连接,仅需2.5M内存

  • event-driven,aio,mmap,sendfile

Web 服务相关的功能

  • 虚拟主机(server)

  • 支持 keep-alive 和管道连接(利用一个连接做多次请求)

  • 访问日志(支持基于日志缓冲提高其性能)

  • url rewirte

  • 路径别名

  • 基于IP及用户的访问控制

  • 支持速率限制及并发数限制

  • 重新配置和在线升级而无须中断客户的工作进程

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

反向代理:

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

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

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

           访问控制;

正向代理

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

 作用:提高访问速度

            隐藏客户端真实IP地址

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

三、Nginx和Apache

3.1Nginx和Apache的差异 

  • 轻量级,Nginxt比Apache占用更少的内存及资源:
  • 静态处理,Nginx静态处理性能比Apache高;
  • Nginx可以实现无缓存的反向代理加速,提高网站运行速度;
  • Nginx支持热部署,启动速度迅速,可以在不间断服务的情况下,对软件版本或者配置进行升级;
  • Nginx高度模块化,编写模块相对简单,且组件比Apache少;
  • 高并发下Nginx能保持低资源低消耗高性能;
  • Nginx是异步进程,多个连接可以对应一个进程;Apache是同步多进程,一个连接对应一个进程;
  • Nginx的性能和可伸缩性不依赖于硬件,Apache依赖于硬件;
  • Nginx配置简洁,Apache配置复杂。

3.2Nginx和Apache的优缺点比较

nginx相对于apache的优点∶

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

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

四、编译安装niginx

安装依赖包

Linux:Nginx服务与搭建,linux,nginx,运维

yum -y install gcc pcre-devel openssl-devel zlib-devel openssl  openssl-devel

Linux:Nginx服务与搭建,linux,nginx,运维

下载安装包

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

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

Linux:Nginx服务与搭建,linux,nginx,运维

 新建运行用户、组

Linux:Nginx服务与搭建,linux,nginx,运维

 编译安装nginx

tar xf nginx-1.18.0.tar.gz 
cd nginx-1.18.0/
mkdir /apps/nginx -p
 
./configure --prefix=/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

Linux:Nginx服务与搭建,linux,nginx,运维

Linux:Nginx服务与搭建,linux,nginx,运维

Linux:Nginx服务与搭建,linux,nginx,运维

Linux:Nginx服务与搭建,linux,nginx,运维

 创建软连接后直接 nginx启动

ln -s /apps/nginx/sbin/nginx /usr/sbin/

 Linux:Nginx服务与搭建,linux,nginx,运维

Linux:Nginx服务与搭建,linux,nginx,运维

Linux:Nginx服务与搭建,linux,nginx,运维

五、创建Nginx 自启动文件 

vim /usr/lib/systemd/system/nginx.service
 
[Unit]
Description=nginx - high performance web server
Documentation=http://nginx.org/en/docs/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.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=multi-user.target

Linux:Nginx服务与搭建,linux,nginx,运维

 Linux:Nginx服务与搭建,linux,nginx,运维

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

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

  2. systemctl enable --now nginx         设置开机自起

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

Linux:Nginx服务与搭建,linux,nginx,运维

 若出现

Linux:Nginx服务与搭建,linux,nginx,运维

问题其一(1) 如果卡主是应为logs下有 nginx.pid  文件  删除即可Linux:Nginx服务与搭建,linux,nginx,运维

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

Linux:Nginx服务与搭建,linux,nginx,运维

 六、Nginx的信号使用

6.1信号

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

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

Linux:Nginx服务与搭建,linux,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

Linux:Nginx服务与搭建,linux,nginx,运维

 Linux:Nginx服务与搭建,linux,nginx,运维

Linux:Nginx服务与搭建,linux,nginx,运维

Linux:Nginx服务与搭建,linux,nginx,运维

 Linux:Nginx服务与搭建,linux,nginx,运维

Linux:Nginx服务与搭建,linux,nginx,运维 添加新模块

Linux:Nginx服务与搭建,linux,nginx,运维

 Linux:Nginx服务与搭建,linux,nginx,运维

Linux:Nginx服务与搭建,linux,nginx,运维文章来源地址https://www.toymoban.com/news/detail-671796.html

到了这里,关于Linux:Nginx服务与搭建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【运维】手把手教你在Linux/Windows系统使用Nginx部署多个前端项目【详细操作】

            需求:项目上线需要将前端的前台和后台部署在服务器上提供用户进行使用,部署在不同的服务器直接在服务器安装nginx即可。但是在内网安装还是有点麻烦,因为需要联网,如果是内网可以参考Linux安装Nginx并部署前端项目【内/外网-保姆级教程】_MXin5的博客-CSDN博

    2024年02月08日
    浏览(61)
  • linux 搭建Nginx网页(编译安装)

    ♥️ 作者:小刘在C站 ♥️ 个人主页:  小刘主页  ♥️ 不能因为人生的道路坎坷,就使自己的身躯变得弯曲;不能因为生活的历程漫长,就使求索的 脚步迟缓。 ♥️ 学习两年总结出的运维经验,以及思科模拟器全套网络实验教程。专栏: 云计算技术 ♥️ 感谢CSDN让你我相遇

    2024年02月05日
    浏览(58)
  • Linux网站搭建(nginx+php+mysql)

    目录 nginx 安装nginx服务器依赖环境 源码安装和yum安装的区别 源码安装 源码安装三步走: php 下载 安装所有扩展:(php运行所需要的环境) 编辑/etc/php.ini 开启php-fpm 在html下创建index.php,看一下是否可以网页中访问得到它 编辑nginx配置文件 重启服务 mysql 安装mysql mysql的使用

    2024年02月01日
    浏览(52)
  • Linux -- Nginx服务基础

    4.1Nginx服务基础         Nginx(发音为[engine x])专为性能优化而开发,其最知名的优点是它的稳定性和低系统资源消 耗,以及对HTTP并发连接的高处理能力(单台物理服务器可支持30000~50000个并发请求),正因 为如此,大量提供社交网络,新闻资讯、电子商务及虚拟主机等服务的

    2024年01月23日
    浏览(42)
  • Linux搭建实验环境搭建(nginx,mysql,java.tomcat)

    ♥️ 作者:小刘在C站 ♥️ 个人主页:  小刘主页  ♥️ 努力不一定有回报,但一定会有收获加油!一起努力,共赴美好人生! ♥️ 学习两年总结出的运维经验,以及思科模拟器全套网络实验教程。专栏: 云计算技术 ♥️小刘私信可以随便问,只要会绝不吝啬,感谢CSD

    2024年02月15日
    浏览(49)
  • Linux系统——nginx服务介绍

    Nginx的高并发性能优于httpd服务 Nginx是由1994年毕业于俄罗斯国立莫斯科鲍曼科技大学的同学为俄罗斯rambler.ru公司开发的,开发工作最早从2002年开始,第一次公开发布时间是2004年10月4日,版本号是0.1.02019年3月11日F5 与 NGINX达成协议,F5 将收购 NGINX 的所有已发行股票,总价值约为

    2024年02月22日
    浏览(41)
  • Linux上搭建Nacos集群 + nginx做负载均衡

    下载Nacos:访问Nacos的官方网站(https://nacos.io),在下载页面上选择适合您的操作系统和版本,下载Nacos的安装包。 解压安装包:将下载的安装包解压到指定的目录。 配置集群节点:进入解压后的Nacos目录,进入 conf 文件夹,并编辑 cluster.conf 文件。在该文件中,添加集群中每

    2024年02月09日
    浏览(74)
  • Linux服务:Nginx服务部署及基础配置

    目录 一、Nginx介绍 1、Nginx简介 2、I/O模型相关概念 3、Nginx事件驱动模型 二、部署Nginx 1、yum部署Nginx 2、编译安装Nginx 三、Nginx使用 1、基础使用 2、nginx信号 四、web服务选择及优化 1、Nginx与Apache对比 2、Nginx服务调优 1、Nginx简介 ①作用:支持七层(应用层)和四层(传输层)反向代

    2024年02月03日
    浏览(41)
  • Linux服务——nginx的配置及模块

    目录 一、nignx配置 1、nginx的配置文件 2、使用server语句块构建虚拟主机 3、alias别名 4、location语句 二、nginx模块 access模块  验证模块 自定义错误页面 日志存放位置 检测文件是否存在 长连接设置 ngx_http_autoindex_module 模块 三、nginx的高级配置 1、网页的状态页 2、变量 3、自定义

    2024年02月04日
    浏览(39)
  • Linux 配置 Nginx 服务完整详细版

    目录 前言 配置Nginx监听端口和服务器块 # 防DDoS配置 # 日志配置 # 设置服务器块 监听端口 网站根目录 默认文件 静态文件目录 图像文件目录 # 自定义错误页面 # 反向代理配置 # 配置SSL/TLS 1、获取SSL/TLS证书 2、安装证书 3、配置SSL/TLS # 配置SSL协议版本和密码套件 # 配置SSL会话缓

    2024年02月08日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包