【Linux】Nginx编译安装及系统服务添加

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

Nginx

  • 一、关于 Nginx
      • Nginx和Apache的差异
        • Apache的优势
        • Nginx的优势
  • 二. 编译安装Nginx服务
    • 1.关闭防火墙
    • 2.安装依赖包
    • 3.创建运行用户、组
    • 4.编译安装Nginx
    • 5.检查、启动、重启、停止 nginx服务
  • 三、添加 Nginx 系统服务


一、关于 Nginx

Nginx 是开源、高性能、高可靠的 Web 和反向代理服务器,而且支持热部署,几乎可以做到 7 * 24 小时不间断运行,即使运行几个月也不需要重新启动,还能在不间断服务的情况下对软件版本进行热更新
稳定性高,系统资源消耗低,对HTTP并发连接的处理能力高(单台物理服务器可支持3w~5w个并发请求

Nginx和Apache的差异

  • Nginx是一个基于事件的Web服务器,Apache是一个甚于流程的服务器
  • Nginx所有请求都由一个线程处理,Apache单个线程处理单个请求
  • Nqinx避免子进程的概念,Apache是其于子进程的
  • Ngnx在内存消耗和连接方面更好,Apache在内存消耗和连接方面一般
  • Nqinx的性能和可伸缩性不依赖于硬件,Apache依赖于CPU和内存等硬件
  • Nginx支持热部署,Apache不支持热部署
  • Nginx对于静态文件处理县有更高效率,Apache相对一般
  • Nginx在反向代理场景县有明点优势,Apache相对一般

Apache的优势

  • Rewrite比nginx的rewrite强大 (rewrite的主要功能就是实现统一资源定位符URL的跳转)
  • 模块多,基本想到的都可以找到
  • 少bug, nginx的bug相对较多
  • 超稳定
  • Nginx处理动态请求是弱项,动态请求要Apache去做。

Nginx的优势

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

二. 编译安装Nginx服务

1.关闭防火墙

systemctl stop firewalld
systemctl disable firewalld
setenforce 0

在这里插入图片描述

2.安装依赖包

#nginx的配置及运行需要pcre、zlib、openssl等软件包的支持,因此需要安装这些软件的开发包,以便提供相应的库和头文件。
yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++ mak

在这里插入图片描述

3.创建运行用户、组

useradd -M -s /sbin/nologin nginx

4.编译安装Nginx

cd /opt
tar zxvf nginx-1.24.0.tar.gz -C /opt/cd nginx-1.24.0/
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module
#启用 http_stub_status_module 模块以支持状态统计make && make installln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/		#让系统识别nginx的操作命

在这里插入图片描述
在这里插入图片描述

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

nginx -t								#检查配置文件是否配置正确
#启动
nginx									
#停止
cat /usr/local/nginx/logs/nginx.pid		#先查看nginx的PID号
kill -3 <PID号>
kill -s QUIT <PID号>
killall -3 nginx
killall -s QUIT nginx
#重载
kill -1 <PID号>
kill -s HUP <PID号>
killall -1 nginx
killall -s HUP nginx
#日志分割,重新打开日志文件
kill -USR1 <PID号>
#平滑升级
kill -USR2 <PID号

在这里插入图片描述

新版本升级:
tar -zxvf nginx-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_modulemake
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_old
cp objs/nginx /usr/local/nginx/sbin/nginx
make upgrade  #要保证当前 nginx 进程是通过 /usr/local/nginx/sbin/nginx 启动的,而不是通过查找环境变量中那个 nginx 命令启动的
#或者先 killall nginx ,再/usr/local/nginx/sbin/nginx

三、添加 Nginx 系统服务

vim /etc/init.d/nginx
#!/bin/bash
#chkconfig: - 99 20
#description:Nginx Service Control Script
COM="/usr/local/nginx/sbin/nginx"
PID="/usr/local/nginx/logs/nginx.pid"
case "$1" in
start)$COM
;;stop)kill -s QUIT $(cat $PID)
;;restart)$0 stop$0 start
;;reload)kill -s HUP $(cat $PID)
;;*)
echo "Usage: $0 {start|stop|restart|reload}"
exit 1esac
exit 0chmod +x /etc/init.d/nginx
chkconfig --add nginx							#添加为系统服务
systemctl stop nginx
systemctl start nginx

在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/351982.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

清华大学刘知远教授:如何写一篇合格的NLP论文

作者 | 刘知远 编辑 | NewBeeNLP 来源 | 左下角阅读原文处 周末重读&分享清华大学刘知远老师的干货文章&#xff0c;虽然题目是如何写一篇合格的NLP文章&#xff0c;但是可以适用于人工智能相关的其他领域&#xff0c;以下是原文&#xff0c;希望也对你有帮助~ 前几天刚过…

[当人工智能遇上安全] 2.清华张超老师 - GreyOne: Discover Vulnerabilities with Data Flow Sensitive Fuzzing

您或许知道&#xff0c;作者后续分享网络安全的文章会越来越少。但如果您想学习人工智能和安全结合的应用&#xff0c;您就有福利了&#xff0c;作者将重新打造一个《当人工智能遇上安全》系列博客&#xff0c;详细介绍人工智能与安全相关的论文、实践&#xff0c;并分享各种案…

我的程序人生——初识代码,从学好C语言开始

我正在参与CSDN《新程序员》有奖征文&#xff0c;本次活动的地址为&#xff1a;《新程序员》有奖征文 文章目录 从学好C语言开始稀里糊涂就进入实验室从烙铁杀手到主要程序员竞赛中的坎坷大学中我的建议1. 绩点很重要2. 从事本专业或许是你最容易的选择 聊聊我自己吧&#xff0…

研究生期间如何成为科研大佬?

作者 | 叶小飞北美奔驰研究员 整理 | NewBeeNLP 由于不清楚小伙伴们的研究方向&#xff0c;以下分享只针对ML/DL/CV/NLP方向。 先泼个冷水&#xff0c;如果你本科积累不多&#xff0c;也不是天赋异禀&#xff0c;硕士成为真正的科研大佬是不太可能的&#xff0c;成为“灌水大…

野生瓜还是裂口瓜?

这是学习笔记的第 2404篇文章 最近刷视频的时候看到了《杀瓜》的片段&#xff0c;虽然我在豆瓣确认了下这电影的分数不高&#xff0c;但是里面有一段话感觉很不错&#xff1a; 瓜农陈草&#xff1a;“今年啊&#xff0c;我这地里的裂口瓜特别多&#xff0c;你说这是为什么呢&am…

清华NLP实验室刘知远:如何写一篇合格的NLP论文

Datawhale干货 作者&#xff1a;刘知远&#xff0c;清华大学&#xff0c;来源&#xff1a;大数据文摘 本文作者刘知远为清华大学计算机科学与技术系副教授 。刘老师总结了研究者在写NLP论文时常见的几类问题&#xff0c;并写成了这篇文章。除了对于NLP研究者&#xff0c;这篇文…

打开程序员心理B面,这些黑红话题他们亲自回应丨1024特辑

1024对于程序员的特殊意义大概只有程序员才懂&#xff0c;正如外界对程序员的刻板印象永远停留在“高收入”、“低情商”、“发际线”、“格子衫”等特殊标签上&#xff0c;无论是光环还是恶名&#xff0c;背后实际都藏着太多只有程序员才懂的无奈与辛酸。 不求被全世界理解是程…

让人瞩目的插画设计秘诀在哪?为你揭开3D辅助绘画技术面纱!

插画设计秘诀到底在哪&#xff1f;3D技术如何辅助绘画技术&#xff1f;今天&#xff0c;硅谷洞察&#xff08;原硅谷密探, ID:guigudiyixian&#xff09;有幸请来了疯景老师&#xff0c;并对他进行了一次独家的专访。希望可以对喜欢和从事插画的你们得到一些帮助和启发。 —— …

安卓不知道怎么学?看十年码农如何回答这个问题。

有很多朋友问过怎么学习 Framework&#xff0c;之前写了三篇文章&#xff0c;主要说的是之前开发应用的如何过渡到开发 Framework 。喜欢的可以通过下面的链接阅读。 Android 如何从应用深入到Framework &#xff08;一&#xff09; Android 如何从应用深入到Framework &…

对话南科大沈平:在人工智能开源中,高校能扮演什么角色?

2021-04-20 01:47:54 作者 | 陈彩娴 采访整理 | 刘冰一 2020年被称为深度学习框架开源的元年。 那一年&#xff0c;继百度飞桨之后&#xff0c;旷视开源天元&#xff08;MegEngine&#xff09;&#xff0c;华为推出MindSpore&#xff0c;清华大学计算机系的图形学实验室也发…

创造天赋:达·芬奇的7种天才特质

心理学家与专业魔术师迈克尔格尔博提出了“达芬奇与众不同的7种天才特质”。他阐述为好奇心、悟性、艺术和科学、关联、开阔、细致和合作精神。然而&#xff0c;这些特质本身并没有什么超前性&#xff0c;它们却使达芬奇能够从不同的角度看事物&#xff0c;从而能够去思考不同的…

网络安全入门必学内容

随着时代的发展&#xff0c;经济、社会、生产、生活越来越依赖网络。而随着万物互联的物联网技术的兴起&#xff0c;线上线下已经打通&#xff0c;虚拟世界和现实世界的边界正变得模糊。这使得来自网络空间的攻击能够穿透虚拟世界的边界&#xff0c;直接影响现实世界的安全。 网…

时序数据库InfluxDB快速入门使用

推荐博客&#xff1a; Influxdb中文文档 linux安装influxdb Influxdb安装、启动influxdb控制台、常用命令、Influx命令使用、Influx-sql使用举例、Influxdb的数据格式、Influxdb客户端工具 1.安装 1、influxdb数据库官网的下载链接&#xff1a; https://portal.influxdata.c…

数据分析--Numpy初级(二)

Numpy初级 Numpy数组属性Numpy的routines函数 Numpy数组属性 Numpy数组的维数成为秩&#xff08;rank&#xff09;&#xff0c;即轴的数量&#xff0c;一维数组的秩为1…。在Numpy中&#xff0c;每一个线性的数组称为是一个轴&#xff08;axis&#xff09;&#xff0c;也就是维…

桶装水小程序怎么做

微信送水小程序是一款基于微信平台开发的送水服务应用程序&#xff0c;它可以帮助用户方便快捷地订购水产品&#xff0c;并且提供上门配送服务。下面我们来介绍微信送水小程序的主要功能。 一、商品展示 微信送水小程序提供了丰富的水产品展示&#xff0c;包括矿泉水、纯净水…

小程序开发同步缓存、异步缓存

目录 一、uni.setStorage(Object) 二、uni.setStorageSync(Key, Data) 三、使用 四、uni.getStorage(OBJECT) 五、uni.getStorageInfo(OBJECT) 一、uni.setStorage(Object) 将数据存储在本地缓存中指定的 key 中&#xff0c;会覆盖掉原来该 key 对应的内容&…

草图大师模型 sketchup模型下载 sketchup模型免费下载 SU模型下载

草图模型网提供最全面的SU模型资源下载,为广大sketchup设计师打造一个高精度实用SU素材库,有上万个sketchup模型,并且每天更新!让你更快的找到想要SU模型。像草图模型网,个人很少去这个网站模型较为过时,还有定鼎网、sketchup博客、3DNEW、谷歌草图模型库等等诸如此类的设计网站…

Tomcat部署

目录 Tomcat 什么是 servlet&#xff1f; 什么是 JSP? Tomcat 功能组件结构&#xff1a; Container 结构分析&#xff1a; Tomcat 请求过程&#xff1a; ---------------------Tomcat 服务部署------------------------- 1.关闭防火墙&#xff0c;将安装 Tomcat 所需软…

SU插件|TopoShaper生成地形 免费下载及介绍(SketchUp草图大师必备)!

TopoShaper&#xff08;生成地形&#xff09; —————— 插件基本描述&#xff1a; 这是一个生成地形的插件&#xff0c;常用于景观、建筑专业建模&#xff0c;从CAD或者其他绘图工具中制作好的等高线、高程点导入SketchUp&#xff0c;此插件可以快速使用线条或点云直接生…

sketchup 2018下载与安装教程

sketchup 2018下载地址&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1iH7gISr6sTJRRNFPzsIF0A 提取码&#xff1a;duf4 注意&#xff1a;安装之前应该检查电脑是不是64位的操作系统&#xff0c;本软件只针对64位操作系统。 安装步骤&#xff1a; 1.下载完成之后&am…