Ubuntu 安装Nginx服务

news2025/2/26 7:31:54

文章目录

  • 前言
  • 一、Nginx安装
    • 1. Nginx默认安装
    • 2. Nginx指定版本安装
    • 3. Nginx验证
    • 4. Nginx服务控制
      • 4.1 查看服务状态
      • 4.2 停止服务
      • 4.3 启动服务
      • 4.4 重启服务
    • 5. Nginx文件存放目录
  • 二、自己编译Nginx
    • 1. 下载源码
    • 2. 依赖配置
    • 3. 编译
  • 三、Nginx卸载
  • 总结


前言

  Nginx(发音为"engine-x")是一个高性能的开源Web服务器和反向代理服务器,也可以用作负载均衡器、HTTP缓存以及作为前端服务器用于处理静态文件、媒体流、以及其他网络协议(如SMTP、POP3和IMAP)。Nginx最初由Igor Sysoev开发,并于2004年首次发布,目前由Nginx公司进行维护。

Nginx以其出色的性能和高可靠性而闻名,常用于大流量的网站和应用程序,如互联网公司、电子商务平台、内容分发网络(CDN)等。它的设计目标是解决C10K问题,即同时处理成千上万个并发连接的能力。Nginx采用了事件驱动的架构和异步I/O模型,能够高效地处理大量并发请求,同时占用较少的系统资源。

Nginx的主要特点包括:

  • 高性能:Nginx采用了高效的事件驱动和异步I/O模型,能够在高负载下保持出色的性能,处理大量并发请求。

  • 灵活的配置:Nginx使用简洁、易于理解的配置语法,支持灵活的配置选项和模块化的架构,可以根据需要进行定制化配置。

  • 反向代理和负载均衡:Nginx可以作为反向代理服务器,将请求转发给后端服务器,同时支持负载均衡功能,有效分发流量到多个后端服务器上。

  • HTTP缓存:Nginx可以作为HTTP缓存服务器,缓存静态文件和动态内容,减轻后端服务器的负载,提高网站性能。

  • 安全性:Nginx具有强大的安全特性,支持SSL/TLS协议,能够进行HTTPS加密通信,以及提供访问控制、防止DDoS攻击等安全功能。

  • 可扩展性:Nginx提供了丰富的第三方模块和插件,支持动态加载模块,可以扩展其功能,满足不同应用场景的需求。

  总之,Nginx是一个高性能、灵活、可靠和安全的Web服务器和反向代理服务器,适用于处理大量并发请求和高流量的网站和应用程序。它的出色性能和丰富的功能使其成为当前互联网架构中不可或缺的重要组件之一。


一、Nginx安装

1. Nginx默认安装

# 更新索引
sudo apt update
# 安装nginx
sudo apt install nginx

这种方法最方便,直接输入命令,等待完成就完事了。

2. Nginx指定版本安装

# 更新索引
sudo apt update
# 查看当前可用的版本
sudo apt-cache show nginx

查询结果如下:

Package: nginx
Architecture: amd64
Version: 1.18.0-6ubuntu14.4
Priority: optional
Section: web
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Nginx Maintainers <pkg-nginx-maintainers@alioth-lists.debian.net>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 49
Depends: nginx-core (<< 1.18.0-6ubuntu14.4.1~) | nginx-full (<< 1.18.0-6ubuntu14.4.1~) | nginx-light (<< 1.18.0-6ubuntu14.4.1~) | nginx-extras (<< 1.18.0-6ubuntu14.4.1~), nginx-core (>= 1.18.0-6ubuntu14.4) | nginx-full (>= 1.18.0-6ubuntu14.4) | nginx-light (>= 1.18.0-6ubuntu14.4) | nginx-extras (>= 1.18.0-6ubuntu14.4)
Breaks: libnginx-mod-http-lua (<< 1.18.0-6ubuntu5)
Filename: pool/main/n/nginx/nginx_1.18.0-6ubuntu14.4_amd64.deb
Size: 3872
MD5sum: c50a1bfb0a399eeda5a918bad2b7826c
SHA1: db65e7261f613c2145ffb9e6477ee9ef15e9f994
SHA256: 38660dc920b2203436ee75788d9c12d064b9a49984eb7edd61dd572d95a65243
SHA512: 099e1a145adcb5a8543f41caa40a335c1d59bf1150368208829da6ab5b3484415d895223638d628eed3c14532b6302f824a2ff0b6a79163c07b2102453056e1a
Homepage: https://nginx.net
Description-en: small, powerful, scalable web/proxy server
 Nginx ("engine X") is a high-performance web and reverse proxy server
 created by Igor Sysoev. It can be used both as a standalone web server
 and as a proxy to reduce the load on back-end HTTP or mail servers.
 .
 This is a dependency package to install either nginx-core (by default),
 nginx-full, nginx-light or nginx-extras.
Description-md5: 902443ddbee17249123a068e7ca7c6d8

Package: nginx
Architecture: amd64
Version: 1.18.0-6ubuntu14.3
Priority: optional
Section: web
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Nginx Maintainers <pkg-nginx-maintainers@alioth-lists.debian.net>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 49
Depends: nginx-core (<< 1.18.0-6ubuntu14.3.1~) | nginx-full (<< 1.18.0-6ubuntu14.3.1~) | nginx-light (<< 1.18.0-6ubuntu14.3.1~) | nginx-extras (<< 1.18.0-6ubuntu14.3.1~), nginx-core (>= 1.18.0-6ubuntu14.3) | nginx-full (>= 1.18.0-6ubuntu14.3) | nginx-light (>= 1.18.0-6ubuntu14.3) | nginx-extras (>= 1.18.0-6ubuntu14.3)
Breaks: libnginx-mod-http-lua (<< 1.18.0-6ubuntu5)
Filename: pool/main/n/nginx/nginx_1.18.0-6ubuntu14.3_amd64.deb
Size: 3882
MD5sum: e7457ada9637842d2fcedd602668af4f
SHA1: 5be8b5ec8e832ef7b13adbcd8a39bd9cf328d2d4
SHA256: 940f9d64167ae5bd58c088aa85303687c5b0dfa8b4f6590b9be2a3bc3ed58ac5
SHA512: d18450a685ce0b86a41c596af05a751012b61245e4d5a1b4d276a66ca70c731ac09dacb34a7e4dd203292f1c113ea3ff1bff70484546b05122f39f973362071e
Homepage: https://nginx.net
Description-en: small, powerful, scalable web/proxy server
 Nginx ("engine X") is a high-performance web and reverse proxy server
 created by Igor Sysoev. It can be used both as a standalone web server
 and as a proxy to reduce the load on back-end HTTP or mail servers.
 .
 This is a dependency package to install either nginx-core (by default),
 nginx-full, nginx-light or nginx-extras.
Description-md5: 902443ddbee17249123a068e7ca7c6d8

Package: nginx
Architecture: amd64
Version: 1.18.0-6ubuntu14
Priority: optional
Section: web
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Nginx Maintainers <pkg-nginx-maintainers@alioth-lists.debian.net>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 48
Depends: nginx-core (<< 1.18.0-6ubuntu14.1~) | nginx-full (<< 1.18.0-6ubuntu14.1~) | nginx-light (<< 1.18.0-6ubuntu14.1~) | nginx-extras (<< 1.18.0-6ubuntu14.1~), nginx-core (>= 1.18.0-6ubuntu14) | nginx-full (>= 1.18.0-6ubuntu14) | nginx-light (>= 1.18.0-6ubuntu14) | nginx-extras (>= 1.18.0-6ubuntu14)
Breaks: libnginx-mod-http-lua (<< 1.18.0-6ubuntu5)
Filename: pool/main/n/nginx/nginx_1.18.0-6ubuntu14_amd64.deb
Size: 3884
MD5sum: a87d97c1546b3cdf48fc705efd14a414
SHA1: 64d4cee238fe7ffefc34f211a7a02f85627c9b3e
SHA256: a7408f7ce51117543ccf42dfd21c0065f214250986d162fc053ee790bd6a386e
SHA512: 59425c26fded38ff92440b65f131bfd0f051d1a87082faedabead517516ac492eed810abc9e8ef7fbf5ca10a79f3bbd769346d572deb9411a45bd0bbe4706c8c
Homepage: https://nginx.net
Description-en: small, powerful, scalable web/proxy server
 Nginx ("engine X") is a high-performance web and reverse proxy server
 created by Igor Sysoev. It can be used both as a standalone web server
 and as a proxy to reduce the load on back-end HTTP or mail servers.
 .
 This is a dependency package to install either nginx-core (by default),
 nginx-full, nginx-light or nginx-extras.
Description-md5: 902443ddbee17249123a068e7ca7c6d8

查看查询结果找到版本号:

Version: 1.18.0-6ubuntu14.4
Version: 1.18.0-6ubuntu14.3
Version: 1.18.0-6ubuntu14

安装指定版本:

# 等于号后面给出来指定版本号即可
sudo apt install nginx=1.18.0-6ubuntu14.4

命令执行结果:
在这里插入图片描述

3. Nginx验证

使用curl命令访问服务:

# 使用curl命令访问服务
curl http://127.0.0.1

如果找不到命令,如下图所示:
在这里插入图片描述

先安装一下curl命令:

sudo apt install curl

然后再验证服务:

# 使用curl命令访问服务
curl http://127.0.0.1

出现以下内容说明服务安装成功:

ubuntu@ubuntu:~$ curl http://127.0.0.1
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

4. Nginx服务控制

4.1 查看服务状态

systemctl status nginx

如下图所示,表示服务正在运行:

在这里插入图片描述

4.2 停止服务

sudo systemctl stop nginx

可看服务状态,下图表示服务停止成功:

在这里插入图片描述

4.3 启动服务

sudo systemctl start nginx

可看服务状态,下图表示服务启动成功:

在这里插入图片描述

4.4 重启服务

sudo systemctl restart nginx

可看服务状态,下图表示服务重启成功:

在这里插入图片描述

5. Nginx文件存放目录

路径描述
/var/log/nginxnginx运行日志的目录
/var/www/htmlweb项目目录
/usr/sbin/nginx服务文件
/etc/nginx配置文件目录

二、自己编译Nginx

1. 下载源码

下载页面:https://nginx.org/en/download.html
下载地址:https://nginx.org/download/nginx-1.24.0.tar.gz

curl -O https://nginx.org/download/nginx-1.24.0.tar.gz

-O 为大写字母

2. 依赖配置

sudo apt install gcc make libpcre3-dev zlib1g-dev openssl libssl-dev

3. 编译

解压源代码:

tar -zxvf nginx-1.24.0.tar.gz

生成编译脚本:

cd nginx-1.24.0/ 
./configure --prefix=/usr/local/nginx --with-http_ssl_module

编译:

make

编译完成:
在这里插入图片描述

安装:

make install

查看验证:

ls /usr/local/nginx
ls /usr/local/nginx/sbin/
sudo /usr/local/nginx/sbin/nginx -t

在这里插入图片描述

三、Nginx卸载

执行卸载命令:

sudo apt purge nginx

执行结果:
在这里插入图片描述
卸载完以后/var/log/nginx、/var/www/html、/etc/nginx这3个目录并不会删除,如果需要删除可以执行删除命令:

sudo rm -rf /var/log/nginx /var/www/html /etc/nginx

注意:删除文件要再三确认!

可以再删除依赖项:

sudo apt autoremove

总结

✍结尾 ❤️ 感谢您的支持和鼓励关注不迷路✍

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

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

相关文章

时序分解 | Matlab实现CPO-VMD基于冠豪猪优化算法(CPO)优化VMD变分模态分解时间序列信号分解

时序分解 | Matlab实现CPO-VMD基于冠豪猪优化算法(CPO)优化VMD变分模态分解时间序列信号分解 目录 时序分解 | Matlab实现CPO-VMD基于冠豪猪优化算法(CPO)优化VMD变分模态分解时间序列信号分解效果一览基本介绍程序设计参考资料 效果一览 基本介绍 【原创】CPO-VMD【24年新算法…

LeetCode做题总结 15. 三数之和、18. 四数之和 (Java)

不会做&#xff0c;参考了代码随想录和力扣官方题解&#xff0c;对此题进行整理。 X数之和 15. 三数之和代码思路20240103重写错误1错误2Java语言点总结 18. 四数之和代码思路20240104&#xff08;伪&#xff09;错误1 第一次剪枝错误2 第二次剪枝错误3 溢出 15. 三数之和 代码…

python中parsel模块的css解析

一、爬虫页面分类 1.想要爬取的内容全部在标签中&#xff0c;可以使用xpath去进行解析如下图 2.想要爬取的内容呈现json的数据特征&#xff0c;用.json()转换为字典格式 3.页面不规则&#xff0c;标签中包含大括号&#xff0c;如下面想要获取键值内容怎么做&#xff0c;先用re正…

Hive学习(13)lag和lead函数取偏移量

hive里面lag函数 在数据处理和分析中&#xff0c;窗口函数是一种重要的技术&#xff0c;用于在数据集中执行聚合和分析操作。Hive作为一种大数据处理框架&#xff0c;也提供了窗口函数的支持。在Hive中&#xff0c;Lag函数是一种常用的窗口函数&#xff0c;可以用于计算前一行…

R 批量对多个变量进行单因素方差分析 批量计算均值±标准差

多个变量批量进行单因素方差 R实现 文章目录 一、批量生成均值标准差 P值二、添加协变量单因素方差分析&#xff0c;生成校正P值三、在分层情况下进行单因素方差分析四、添加协变量和交互项的单因素方差分析&#xff0c;生成交互项的P值 一、批量生成均值标准差 P值 数据结构如…

设计模式之单例模式的懒饿汉

懒汉式 说白了就是你不叫我我不动&#xff0c;你叫我我才动。 类初始化模式&#xff0c;也叫延迟占位模式。在单例类的内部由一个私有静态内部类来持有这个单例类的实例。因为在 JVM 中&#xff0c;对类的加载和类初始化&#xff0c;由虚拟机保证线程安全。 public class Singl…

【Proteus仿真】【Arduino单片机】水箱液位监控系统

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真Arduino单片机控制器&#xff0c;使用LCD1602液晶、按键、蜂鸣器、液位传感器、ADC转换器、水泵等。 主要功能&#xff1a; 系统运行后&#xff0c;LCD1602显示当前水位、上下限阈…

支持 input 函数的在线 python 运行环境 - 基于队列

支持 input 函数的在线 python 运行环境 - 基于队列 思路两次用户输入三次用户输入 实现前端使用 vue element uiWindows 环境的执行器子进程需要执行的代码 代码仓库参考 本文提供了一种方式来实现支持 input 函数&#xff0c;即支持用户输的在线 python 运行环境。效果如下图…

[NAND Flash 5.2] SLC、MLC、TLC、QLC、PLC NAND_闪存颗粒类型

依公知及经验整理&#xff0c;原创保护&#xff0c;禁止转载。 专栏 《深入理解NAND Flash》 <<<< 返回总目录 <<<< 前言 闪存最小物理单位是 Cell, 一个Cell 是一个晶体管。 闪存是通过晶体管储存电子来表示信息的。在晶体管上加入了浮动栅贮存电子…

网络调试 TCP,开发板用静态地址-入门7

用两台电脑&#xff08;无线网络&#xff09;做实验 1.1, 在电脑A上设置为Server如下&#xff1a; 选择TCP Server后&#xff0c;直接跳出用本机IP做为“本地主机地址” 1.2在 电脑B上设置为Client, 远程主机地址设置为Server的 IP 1.3, 在A, B两台电脑上能够互相发送数据 用…

Pyinstaller 打包的文件过大,根本原因在于包含了无用的依赖文件

环境要求&#xff1a;Windows&#xff0c;Pyinstaller 6.3.0 (不是这个版本的话&#xff0c;请逐步校对以下我在运行过程中的截图) 本文所使用代码不开源&#xff0c;觉得本文的思路可行的话&#xff0c;请加 QQ - 1398173074 购买 (&#xffe5;30&#xff0c;注明来意)&…

算力-计算量,关于TOPS和FLOPS,及FLOPs

目录 一、易混淆的三个点 二、芯片算力单位详解 四、模型算力单位详解 五、算力单位量级变换 六、计算机存储单位换算 七、科学计算单位换算 一、易混淆的三个点 关于TOPS和FLOPS&#xff0c;及FLOPs&#xff0c;这里有3个易混淆的点。 1、最大的混淆点&#xff0c…

MybatisPlus—快速入门

目录 1.使用MybatisPlus的基本步骤 1.1引入MybatisPlus的起步依赖 1.2 定义Mapper 2.MybatisPlus常用注解 2.1 TableName 2.2 TableId 2.3 TableField 2.4 小结 3. 常用配置 4. 总结 1.使用MybatisPlus的基本步骤 1.1引入MybatisPlus的起步依赖 MyBatisPlus官方提…

(04)刻蚀——选择刻蚀材料创建所需图形

01、光“堆叠”可不行 前期我们了解了如何制作“饼干模具”。本期,我们就来讲讲如何采用这个“饼干模具”印出我们想要的“饼干”。这一步骤的重点,在于如何移除不需要的材料,即“刻蚀(Etching)工艺”。 ▲ 图1: 移除饼干中间部分,再倒入巧克力糖浆 让我们再来回想一下…

im6ull学习总结(三-3)freetype

1、Freetype简介 FreeType是一个开源的字体渲染引擎&#xff0c;主要用于将字体文件转换为位图或矢量图形&#xff0c;并在屏幕上渲染出高质量的字体。它提供了一组API&#xff0c;使开发者能够在自己的应用程序中使用和呈现字体。 FreeType最初是作为一个独立项目开发的&…

基于X86的助力智慧船载监控系统

船载综合监控系统结合雷达、AIS、CCTV、GPS等探测技术&#xff0c;以及高度融合的实时态势与认知技术&#xff0c;实现对本船以及范围内船舶的有效监控&#xff0c;延伸岸基监控中心监管范围&#xff0c;保障行船安全&#xff0c;为船舶安全管理部门实现岸基可控的数据通信和动…

程序员必知!责任链模式的实战应用与案例分析

责任链模式让多个对象依次处理请求&#xff0c;降低发送者和接收者的耦合度&#xff0c;以在线购物为例&#xff0c;用户提交订单需经多步验证&#xff0c;通过责任链模式&#xff0c;验证器按顺序处理请求&#xff0c;先用户身份&#xff0c;再支付方式&#xff0c;最后配送地…

odoo16 连接postgresql错误

odoo16 连接postgresql错误 odoo16 用odoo15的环境出错&#xff0c;看到是psycopg2.OperationalError分析是postgresql版本问题&#xff0c;安装了13版本&#xff0c;还是出错&#xff0c;多版本共存问题如下&#xff1a; Traceback (most recent call last):File "D:\o…

@JsonFormat与@DateTimeFormat

JsonFormat注解很好的解决了后端传给前端的格式&#xff0c;我们通过使用 JsonFormat可以很好的解决&#xff1a;后台到前台时间格式保持一致的问题 其次&#xff0c;另一个问题是&#xff0c;我们在使用WEB服务的时&#xff0c;可 能会需要用到&#xff0c;传入时间给后台&am…

书生·浦语大模型实战营第一次课堂笔记

书生浦语大模型全链路开源体系。大模型是发展通用人工智能的重要途径,是人工通用人工智能的一个重要途径。书生浦语大模型覆盖轻量级、重量级、重量级的三种不同大小模型,可用于智能客服、个人助手等领域。还介绍了书生浦语大模型的性能在多个数据集上全面超过了相似量级或相近…