Linux(CentOS)安装 Nginx

news/2024/11/14 2:53:29/

CentOS版本:CentOS 7

Nginx版本:1.24.0

两种安装方式:

一、通过 yum 安装,最简单,一键安装,全程无忧。

二、通过 编译源码包安装,需具备配置相关操作。

 一、通过 yum 安装

需要 root 权限,普通用户使用 sudo 进行命令操作

参考:https://nginx.org/en/linux_packages.html#RHEL

1、安装依赖

sudo yum install yum-utils

2、创建仓库文件

在 /etc/yum.repos.d 目录下创建仓库文件 nginx.repo,并在文件中添加以下内容:

sudo vim /etc/yum.repos.d/nginx.repo

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

3、安装 Nginx

默认情况下,安装 Stable version 当前稳定版本

【sudo yum-config-manager --enable nginx-mainline 不会设置,暂时不会安装指定版本】

sudo yum install nginx

 

查看 nginx 安装目录

whereis nginx

/usr/sbin 目录存放 nginx 启动程序

/etc/nginx 目录存放 nginx 配置文件

/usr/share/html 目录存放网站项目文件 

4、开放端口 80

 检查端口是否开放

sudo firewall-cmd --zone=public --query-port=80/tcp

开放端口

sudo firewall-cmd --zone=public --add-port=80/tcp --permanent

重新加载

sudo firewall-cmd --reload

再检查端口是否开放

sudo firewall-cmd --zone=public --query-port=80/tcp

5、启动 Nginx

sudo nginx

6、验证 Nginx

在远程终端,打开浏览器,输入ip,回车

二、通过编译源码包安装

需要 root 权限,使用 root 用户进行命令操作

编译源码包:.tar.gz 或 .tar 包文件

1、下载 Nginx

在远程终端计算机上,打开Nginx官网:https://nginx.org/,下载文件

2、上传 Nginx 文件到 CentOS

使用FinalShell远程登录工具,并且使用 root 用户连接登录(注意这里说的root用户连接登录是指这样的)

 

--------------------------------------------------------------------------------------------------------------------------------

也可以使用 wget 命令直接下载到 CentOS,前提需要安装好 wget

获取下载地址:​​​​​https://nginx.org/download/nginx-1.26.2.tar.gz

wget https://nginx.org/download/nginx-1.26.2.tar.gz

 

--------------------------------------------------------------------------------------------------------------------------------

 3、解压 Nginx 

创建目录 /export/server

mkdir -p /export/server

解压到目录 /export/server

.tar.gz 格式的为打包压缩,使用 tar -zxvf,解压后是一个与文件名同名的目录。

.tar 格式的为打包不压缩,使用 tar -xvf,解压后是相关的文件,不是目录。

tar -zxvf nginx-1.24.0.tar.gz -C /export/server

查看解压后情况

ls -l /export/server

 4、安装编译环境和依赖

安装 gcc-c++ 编译器

因为 nginx 是使用C语言开发的,所以需要安装相关的编译环境来对其进行编译安装

yum -y install gcc-c++

 

yum install -y openssl openssl-devel

 

 

安装 pcre 

PCRE(Perl Compatible Regular Expressions)是一个用C语言编写的正则表达式函数库,nginx 对其有依赖

yum install -y pcre pcre-devel

安装 zlib 

zlib 是一个提供数据压缩的函数库,nginx 对其有依赖

yum install -y zlib zlib-devel

5、安装 Nginx

 进入到解压后的 nginx 目录下 /export/server/nginx-1.24.0

cd /export/server/nginx-1.24.0

查看目录内容

ls -l

配置安装目录,将安装到 /export/server/nginx 这个目录下

./configure --prefix=/export/server/nginx

执行 make 和 make install 命令进行编译安装 

编译

make

安装 

make install

查看安装后的情况,目录  /export/server 中多了 nginx 目录

ls -l /export/server

6、开放端口 80

检查端口是否开放

firewall-cmd --zone=public --query-port=80/tcp

开放端口

firewall-cmd --zone=public --add-port=80/tcp --permanent

重新加载

firewall-cmd --reload

再检查端口是否开放

firewall-cmd --zone=public --query-port=80/tcp

7、启动 Nginx

进入到 nginx 安装目录下的 sbin,即是目录 /export/server/nginx/sbin

cd /export/server/nginx/sbin

 启动 nginx

./nginx

 查看 nginx 相关的进程

ps -ef | grep nginx

8、验证 Nginx

在其他终端,打开浏览器,输入ip,回车

9、删除编译源码包和安装解压目录 

删除编译源码包 nginx-1.24.0.tar.gz

rm /root/nginx-1.24.0.tar.gz

删除安装解压目录 /export/server/nginx-1.24.0

rm -rf /export/server/nginx-1.24.0


http://www.ppmy.cn/news/1546363.html

相关文章

ubuntu22.04 安装ffmpeg

ubuntu22.04 安装ffmpeg wget https://ffmpeg.org/releases/ffmpeg-7.0.1.tar.xz tar -xvf ffmpeg-7.0.1.tar.xz sudo apt-get install gcc g cmake make pkgconf -y mkdir -p ~/util/ffmpeg/lib cd ffmpeg-7.0.1 ./configure --prefix"/home/ip3/util/ffmpeg" --en…

机器学习——排序特征(Ranking Features)原理详解

排序特征(Ranking Features) 在机器学习中用于排序任务。它们的核心思想是利用特征来判断不同样本的相对顺序,这在信息检索、推荐系统等领域十分常见。排序特征背后的底层原理和实现方式相对复杂,下面从底层原理、常用方法以及代码…

案例精选 | 河北省某检察院安全运营中异构日志数据融合的实践探索

河北省某检察院是当地重要的法律监督机构,肩负着维护法律尊严和社会公平正义的重要职责。该机构依法独立行使检察权,负责对犯罪行为提起公诉,并监督整个诉讼过程,同时积极参与社会治理,保护公民权益,推动法…

WPF Prism中的区域(Region)管理

Prism框架中的区域(Region)管理是一个核心功能,它允许开发者将用户界面划分为多个逻辑区域,每个区域可以动态地加载和显示不同的视图(View)。以下是Prism区域管理的一些关键特性和使用方法: 1.…

Go语言中的`io.Copy`函数:高效的数据复制解决方案

在Go语言中,io.Copy函数是一个强大而高效的工具,用于将数据从一个io.Reader复制到一个io.Writer。这篇文章将深入探讨io.Copy函数的工作原理、使用方法及其在实际应用中的优势。无论您是后端开发人员还是对Go语言感兴趣的程序员,这篇文章都将…

JS爬虫实战之TikTok_Shop验证码

TikTok_Shop验证码逆向 逆向前准备思路1- 确认接口2- 参数确认3- 获取轨迹参数4- 构建请求5- 结果展示 结语 逆向前准备 首先我们得有TK Shop账号,否则是无法抓取到数据的。拥有账号后,我们直接进入登录。 TikTok Shop 登录页面 思路 逆向步骤一般分为…

dns欺骗

[[Ettercap]] 少不了这个 arp 毒化和流量截取的中间人工具。 dns欺骗原理 什么是 DNS 欺骗? DNS 欺骗(DNS Spoofing) 是一种网络攻击技术,攻击者通过修改 DNS 响应,将目标用户的 DNS 查询结果篡改,指向攻…

从 ES Kafka Mongodb Restful ... 取到 json 之后

json 是个好东西,它可以使用公共的文本形式承载了丰富的结构化数据的信息。现代很多技术都在喜欢使用 json 作为数据传输格式,比如 Elastic Search,Restful,Kafka 等,Mongodb 这类对性能较在意的技术则使用了二进制化的 json。 结构化的数据…