Linux(CentOS)安装 Nginx

CentOS版本:CentOS 7

Nginx版本:1.24.0

两种安装方式:

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

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

最后附+:设置 Nginx 服务开机启动

 一、通过 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

查看目录 /export/server/nginx 的内容

ls -l /export/server/nginx

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
ls -l

 启动 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

附+:设置 Nginx 服务开机启动

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

原理:利用 systemctl 管理服务

1、新建服务

在 /usr/lib/systemd/system 目录下,新建 nginx.service 文件,配置内容

vim /usr/lib/systemd/system/nginx.service

配置内容如下: 

[Unit]
Description=Nginx Server
After=nginx.service[Service]
User=root
Group=root
Type=forking
ExecStart=/export/server/nginx/sbin/nginx -c /export/server/nginx/conf/nginx.conf
ExecStop=/export/server/nginx/sbin/nginx -s quit
ExecReload=/export/server/nginx/sbin/nginx -s reload
Restart=on-failure
PrivateTmp=true[Install]
WantedBy=multi-user.target

2、重新加载 systemctl

systemctl daemon-reload

3、启动 Nginx

systemctl start nginx.service;ps -ef | grep nginx

4、设置 Nginx 开机启动

设置开机启动

systemctl enable nginx.service

查看设置情况

systemctl is-enabled nginx

5、重启计算机

reboot

6、验证 Nginx 开机启动

systemctl status nginx.service;ps -ef | grep nginx

附+:Nginx 的其他命令

1、取消 Nginx 开机启动

systemctl disable nginx.service

2、重启 Nginx

当前 Nginx 运行或停止状态都可以 restart

systemctl restart nginx.service

 只能在当前 Nginx 运行状态 reload

systemctl reload nginx.service

3、停止 Nginx

systemctl stop nginx.service

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

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

相关文章

深度学习项目启动(笔记用)

深度学习项目启动 项目配置虚拟环境 项目配置虚拟环境

万字长文解读深度学习——卷积神经网络CNN

推荐阅读: 卷积神经网络(CNN)详细介绍及其原理详解 CNN笔记:通俗理解卷积神经网络 文章目录 🌺深度学习面试八股汇总🌺主要组件输入层卷积层 (Convolutional Layer)批归一化层(Batch Normalizat…

交易术语汇总(Technical Trading Dictionary)

Arbitrage (套利) --- 一种利用交易所之间的差价获利的方法。 Accumulation (累积) --- 在一种资产中建立头寸的过程。 Ask/Bid (询价/竞价) --- 卖出订单是询价(Ask),买入订单是出价(Bid)。 ATH(历史最高价) --- All-time high 全时高。 Bearish MS…

搭建高效稳定的ChatGPT网络环境:从网络专线到IP地址管理的全流程解析

随着人工智能技术的迅猛发展,ChatGPT作为自然语言处理领域的前沿应用,已经在各行各业得到广泛使用。无论是企业的客户服务系统,还是个人用户的智能助手,ChatGPT的稳定运行都离不开一个高效的网络环境。在企业级部署或私有化使用的…

VBA10-处理Excel的动态数据区域

一、end获取数据边界 1、基本语法 1-1、示例: 2、配合row和column使用 2-1、示例1 2-2、示例2 此时,不管这个有数值的区域,怎么增加边界,对应的统计数据也会跟着变的! 二、end的缺陷 若是数据区域不连贯,则…

【CICD】GitLab Runner 和执行器(Executor

GitLab Runner 和执行器(Executor)是 GitLab CI/CD 管道中的两个重要组成部分。理解它们之间的关系有助于更好地配置和使用 CI/CD 流水线。runer是gitlab的ci-agent对接gitlab,而执行器是接受runer下发的ci的任务来干活的。也就是说gitrunner…

Spring boot + Vue2小项目基本模板

Spring boot Vue2小项目基本模板 基本介绍基本环境安装项目搭建最终效果展示 基本介绍 项目来源哔哩哔哩的青戈,跟着学习搭建自己的简单vue小项目;看别人的项目总觉得看不懂,需要慢慢打磨 这里目前只简单的搭建了菜单导航和表格页面&#x…

“箱体分析”,箱体支撑压力位,分析市场方向 通达信主图 源码

使用技巧 该指标用于在通达信的K线图上绘制箱体分析图形,主要通过支撑位、波浪顶、箱体上下限等多个技术指标来识别股票的支撑和压力区域。 支撑位分析:可以帮助用户识别股价的支撑区域,并判断是否会反弹。 箱体震荡区间识别:通…

PostgreSQL 锁判断

我们在使用 PostgreSQL 的时候经常会遇到有关锁的信息。那么如何判断是否有死锁或者锁等待呢&#xff1f; WITH lock_pid AS ( SELECT DISTINCT pid FROM pg_locks WHERE pid <> pg_backend_pid() ) SELECT psa.* FROM pg_stat_activity psa INNER JOIN lock_pid lp ON …

hadoop大数据平台

java环境 java-1.8.0-openjdk-devel jvm虚拟机 hadoop软件解压即可用 JAVA_HOME是java的安装路径 hadoop对主机名强依赖&#xff0c;意思是主机名hostname要能ping通 jar命令 是运行一个jar文件 hadoop要运行&#xff0c;主要依赖两个的配置 JAVA_HOME HADOOP_CONF_DIR hadoop里…

深入Zookeeper节点操作:高级功能与最佳实践

Zookeeper之节点基本操作&#xff08;二&#xff09; 在《Zookeeper之节点基本操作&#xff08;一&#xff09;》中&#xff0c;我们介绍了如何创建、读取、更新、删除节点的基本操作。接下来将进一步探讨Zookeeper中节点的进阶操作和更多细节&#xff0c;包括节点的监视&…

PICO+Unity MR视频透视

官方链接&#xff1a;视频透视 | PICO 开发者平台 在 PXR_Manager (Script) 面板上&#xff0c;勾选 Video Seethrough 选框 2.将 Clear Flags 设置为 Solid Color。颜色设置为黑色&#xff0c;Alpha 通道设置为完全透明 3.在代码中开启透视 using System.Collections; usin…

Linux系统中,列出当前目录下所有文件和文件夹的大小,并按大小从大到小排序

du -sh * | sort -nr用于列出当前目录下所有文件和文件夹的大小&#xff0c;并按大小从大到小排序。 du -sh *&#xff1a;du&#xff08;disk usage&#xff09; 是一个用于检查文件和目录在磁盘上占用空间的命令。 -s&#xff08;summarize&#xff09; 选项意味着只显示每个…

单例模式详解:如何优雅地实现线程安全的单例

一、什么是单例模式&#xff1f; 单例模式是一种常用的设计模式&#xff0c;目的就是确保某个类在程序中只有一个实例&#xff0c;并且提供一个全局访问入口。通过这个模式&#xff0c;我们能够保证全局共享同一个对象实例&#xff0c;避免了多次实例化同一个对象&#xff0c;…

如何对PHP的API接口权限认证

对PHP的API接口进行权限认证是确保只有授权的用户或应用程序可以访问特定API资源的重要环节。以下是一些常用的PHP API接口权限认证方法&#xff1a; 一、API密钥&#xff08;API Key&#xff09; API密钥是一种简单的鉴权方式&#xff0c;通常用于限制对API的访问。每个用户…

git config 保存密码

在 Git 中保存密码可以通过几种不同的方式来实现&#xff0c;这样可以避免每次与远程仓库交互时都需要输入用户名和密码。以下是一些常用的方法&#xff1a; 使用 credential.helper Git 提供了 credential.helper 功能&#xff0c;可以用来存储和自动填充用户名和密码。 对…

大学生福音!用gpt-4o和o1大模型拿捏大学化学作业

文章目录 零、前言一、使用GPT操作指导作业拍照使用o1-preview大模型小结 二、感受 零、前言 昨天发了gpt-4o拿捏大学物理作业&#xff0c;群友说&#xff0c;急需要一位化学老师指导 虚竹哥是宠粉的&#xff0c;连夜请了一位博士级的化学老师~ 一、使用GPT 操作指导 ChatG…

2024-11-12 学习人工智能的Day25 scikit-learn库初见

简简单单的数据集 from sklearn.datasets import load_iris/fectch 简单的引用世界数据集和玩具数据集方式 #下面是在获取数据集后常用的值 feature feature_names DESCR target target_names filename from sklearn.datasets import load_iris import numpy as np import…

容器技术在持续集成与持续交付中的应用

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 容器技术在持续集成与持续交付中的应用 容器技术在持续集成与持续交付中的应用 容器技术在持续集成与持续交付中的应用 引言 容器…

【项目场景】请求数据时测试环境比生产环境多花了1秒是怎么回事?

威哥&#xff0c;第一次给你发消息就是求教一个问题呢&#xff0c;近期我在优化系统查询的时候&#xff0c;在测试环境优化达标&#xff0c;但是发布到生产后&#xff0c;发现从客户端发起请求到接收响应&#xff0c;多花了1秒&#xff08;测试环境的库数据量和生产一致&#x…