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将被完全卸载。

相关推荐
耶啵奶膘1 小时前
uniapp-是否删除
linux·前端·uni-app
_.Switch2 小时前
高级Python自动化运维:容器安全与网络策略的深度解析
运维·网络·python·安全·自动化·devops
2401_850410832 小时前
文件系统和日志管理
linux·运维·服务器
JokerSZ.2 小时前
【基于LSM的ELF文件安全模块设计】参考
运维·网络·安全
XMYX-03 小时前
使用 SSH 蜜罐提升安全性和记录攻击活动
linux·ssh
芯盾时代3 小时前
数字身份发展趋势前瞻:身份韧性与安全
运维·安全·网络安全·密码学·信息与通信
心灵彼岸-诗和远方4 小时前
DevOps业务价值流:架构设计最佳实践
运维·产品经理·devops
一只哒布刘4 小时前
NFS服务器
运维·服务器
苹果醋35 小时前
Java8->Java19的初步探索
java·运维·spring boot·mysql·nginx
二十雨辰5 小时前
[linux]docker基础
linux·运维·docker