Nginx是一款轻量级的Web服务器、反向代理服务器,由于它的内存占用少,启动极快,高并发能力强,在互联网项目中广泛应用。
1.yum 安装 nginx
[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 额外软件包
yum install epel-release
yum clean all
yum makecache
yum install nginx -y
- 通过新增yum 源
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的编译和运行
yum install -y wget gcc-c++ pcre-devel zlib-devel openssl-devel
2.2 下载Nginx 并解压
从Nginx官网下载最新的稳定版本。下载链接https://nginx.org/en/download.html。
# 例如,下载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 编译和安装
cd nginx-1.24.0
# 编译前的配置和依赖检查
./configure
# 编译安装
make && make install
Nginx安装完成后,默认自动创建 /usr/local/nginx 目录,并创建必要的文件和目录,包括配置文件、日志文件、HTML文件等。
2.4 防火墙设置
如果您的系统启用了防火墙,需要关闭防火墙
# 查看防火墙状态
systemctl status firewalld
# 关闭防火墙
systemctl stop firewalld
# 开机禁用防火墙
systemctl disable firewalld
3. 启动Nginx
3.1 手动启动 与 关闭
# 进入Nginx的安装目录:
cd /usr/local/nginx/sbin
# 启动Nginx服务器:
./nginx
启动后 通过浏览器访问您的服务器的IP地址或域名, 如下则来验证Nginx已正常工作。
# 关闭
/usr/local/nginx/sbin/nginx -s stop
3.2 配置 Nginx 为系统服务
将 Nginx 制作成系统服务让你无需手动到 Nginx 安装目录下执行命令来启动它,而是系统会在开机时自动启动 Nginx,让启动过程更加方便和自动化。
配置 Nginx 服务文件
在 /etc/systemd/system/ 目录下创建一个新的服务文件,例如 nginx.service:
vi /etc/systemd/system/nginx.service
在打开的文件中,添加以下内容:
[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 配置文件:
systemctl daemon-reload
执行以下命令启动 Nginx 服务:
systemctl start nginx
现在,Nginx 将作为系统服务在后台运行。
3.3 设置开机自启动
# 开机自启动
systemctl enable nginx
# 检查 Nginx 状态
systemctl status nginx
# 停止 Nginx 服务
systemctl stop nginx
# 重启 Nginx 服务
systemctl restart nginx
3.4 卸载 Nginx
如果需要卸载Nginx,您可以执行以下步骤:
# 停止 Nginx 服务:
systemctl stop nginx
# 确定Nginx的安装位置:
whereis nginx
# 删除Nginx安装目录:
rm -rf /usr/local/nginx
# 查找并删除相关文件:
find / -name nginx
这将搜索文件系统中所有包含 “nginx” 的文件名,并且你可以根据需要删除这些文件。
完成以上步骤后,Nginx将被完全卸载。