Install Nginx in Linux

Nginx是一款轻量级的Web服务器、反向代理服务器,由于它的内存占用少,启动极快,高并发能力强,在互联网项目中广泛应用。

1.yum 安装 nginx

javascript 复制代码
[root@VM-8-7-centos nginx]# yum install -y nginx
Loaded plugins: fastestmirror, langpacks
Repository epel is listed more than once in the configuration
Loading mirror speeds from cached hostfile
No package nginx available.
Error: Nothing to do

参考了一些方法:

-通过 epel-release 额外软件包

javascript 复制代码
yum install epel-release
yum clean all
yum makecache
yum install nginx -y
  • 通过新增yum 源
javascript 复制代码
vi /etc/yum.repos.d/nginx.repo

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1

都没有成功 o(╥﹏╥)o

2.手动安装

安装依赖项

在开始安装Nginx之前,首先需要安装一些依赖项,以确保Nginx编译和运行正常。打开终端并执行以下命令:

2.1 安装必要的工具和库,以支持Nginx的编译和运行
javascript 复制代码
yum install -y wget gcc-c++ pcre-devel zlib-devel openssl-devel
2.2 下载Nginx 并解压

从Nginx官网下载最新的稳定版本。下载链接https://nginx.org/en/download.html

javascript 复制代码
# 例如,下载Nginx 1.21.0版本
wget https://nginx.org/download/nginx-1.21.0.tar.gz

# 并解压
tar -zxvf nginx-1.21.0.tar.gz
2.3 编译和安装
bash 复制代码
cd nginx-1.24.0

# 编译前的配置和依赖检查
./configure

# 编译安装
make && make install

Nginx安装完成后,默认自动创建 /usr/local/nginx 目录,并创建必要的文件和目录,包括配置文件、日志文件、HTML文件等。

2.4 防火墙设置

如果您的系统启用了防火墙,需要关闭防火墙

bash 复制代码
# 查看防火墙状态
systemctl status firewalld

# 关闭防火墙
systemctl stop firewalld

# 开机禁用防火墙
systemctl disable firewalld

3. 启动Nginx

3.1 手动启动 与 关闭
python 复制代码
# 进入Nginx的安装目录:
cd /usr/local/nginx/sbin

# 启动Nginx服务器:
./nginx

启动后 通过浏览器访问您的服务器的IP地址或域名, 如下则来验证Nginx已正常工作。

python 复制代码
# 关闭
/usr/local/nginx/sbin/nginx -s stop
3.2 配置 Nginx 为系统服务

将 Nginx 制作成系统服务让你无需手动到 Nginx 安装目录下执行命令来启动它,而是系统会在开机时自动启动 Nginx,让启动过程更加方便和自动化。

配置 Nginx 服务文件

在 /etc/systemd/system/ 目录下创建一个新的服务文件,例如 nginx.service:

python 复制代码
vi /etc/systemd/system/nginx.service

在打开的文件中,添加以下内容:

javascript 复制代码
[Unit]
Description=Nginx HTTP Server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
PrivateTmp=true

[Install]
WantedBy=multi-user.target

执行以下命令重新加载 systemd 配置文件:

javascript 复制代码
systemctl daemon-reload

执行以下命令启动 Nginx 服务:

javascript 复制代码
systemctl start nginx

现在,Nginx 将作为系统服务在后台运行。

3.3 设置开机自启动
bash 复制代码
# 开机自启动
systemctl enable nginx

# 检查 Nginx 状态
systemctl status nginx


# 停止 Nginx 服务
systemctl stop nginx

# 重启 Nginx 服务
systemctl restart nginx
3.4 卸载 Nginx

如果需要卸载Nginx,您可以执行以下步骤:

python 复制代码
# 停止 Nginx 服务:
systemctl stop nginx

# 确定Nginx的安装位置:
whereis nginx

# 删除Nginx安装目录:
rm -rf /usr/local/nginx

# 查找并删除相关文件:
find / -name nginx

这将搜索文件系统中所有包含 "nginx" 的文件名,并且你可以根据需要删除这些文件。

完成以上步骤后,Nginx将被完全卸载。

相关推荐
IT成长日记3 小时前
【Nginx开荒攻略】Nginx虚拟主机配置:从域名、端口到IP的完整指南
linux·运维·服务器·nginx·虚拟主机
taxunjishu3 小时前
DeviceNet 转 Modbus TCP 协议转换在 S7-1200 PLC化工反应釜中的应用
运维·人工智能·物联网·自动化·区块链
迎風吹頭髮5 小时前
UNIX下C语言编程与实践53-UNIX 共享内存控制:shmctl 函数与共享内存管理
服务器·c语言·unix
迎風吹頭髮5 小时前
Linux内核架构浅谈8-Linux内核与UNIX的传承:设计思想与特性差异
linux·运维·架构
黑马金牌编程5 小时前
Linux 服务器常见的性能调优
linux·运维·服务器·性能优化
jieyu11195 小时前
网络、主机安全扫描工具
linux·安全·系统安全
tianyuanwo5 小时前
Linux进程管理中的T状态问题分析与解决体系
linux·运维·进程管理·t状态
liuyao_xianhui6 小时前
Linux_基本指令1
linux·运维·服务器
守望时空337 小时前
Linux挂载NTFS分区指南
linux
shan~~7 小时前
linux达梦数据库操作
linux·数据库·chrome