每一个问题都是机会

CentOS 7 安装 Nginx 方法以及常见 Nginx 命令和安装问题

文章目录
  1. 环境
  2. 安装
  3. 常用命令
  4. 使用 systemctl 管理 Nginx
  5. 常见问题

Nginx

环境

此教程适用于 Red Hat Enterprise Linux 及其衍生版本,如 CentOS、Oracle Linux、Rocky Linux 和 AlmaLinux。

官网教程地址: https://nginx.org/en/linux_packages.html

安装

  1. 安装 yum-utils

    sudo yum install yum-utils
  2. 设置 yum 仓库(整段执行):

    cat > /etc/yum.repos.d/nginx.repo << 'EOF'
    [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
    EOF
  3. 安装 Nginx:

    sudo yum install nginx
  4. 启动 Nginx:

    nginx
    
    或者
    
    systemctl start nginx
  5. 访问 Nginx:

    访问 IP 地址出现欢迎页安装成功 (默认 80 端口)

    问题一: Nginx 服务已打开,但是浏览器无法访问,可能是端口没有放开。

    1. 开启端口 :

      firewall-cmd --zone=public --add-port=80/tcp --permanent
    2. 重启防火墙

      firewall-cmd --reload

    问题二: 打开服务报以下错误:

    Starting nginx: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
    nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
    nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
    nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
    nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
    nginx: [emerg] still could not bind()

    问题描述:

    地址已被使用。可能 Nginx 服务卡死了,或者 Nginx 重复启动,导致端口占用,出现此错误。

    解决方法:

    nginx -s stop

    或者

    killall -9 nginx 杀掉 nginx 进程,然后重启 nginx。

常用命令

# 启动 Nginx
nginx

# 立即停止
nginx -s stop

# 执行完当前请求再停止(优雅地关闭)
nginx -s quit

# 重新加载 Nginx 配置文件,相当于 restart
nginx -s reload

# 将日志写入一个新的文件
nginx -s reopen

# 测试配置文件,nginx 检查配置的语法是否正确
nginx -t

使用 systemctl 管理 Nginx

# 启动 Nginx
systemctl start nginx

# 查看 Nginx 状态
systemctl status nginx

# 停止 Nginx
systemctl stop nginx

# 重新加载 Nginx 配置文件,相当于 restart
systemctl reload nginx

# 重启 Nginx
systemctl restart nginx

#配置开机启动
systemctl enable nginx

常见问题

如果提示 No package nginx available

问题原因:

nginx 位于第三方的 yum 源里面,而不在 centos 官方 yum 源里面

解决方法(安装 epel):

sudo yum install epel-release

重新执行安装 nginx 命令

sudo yum install nginx

CentOS 7 yum install nginx 安装位置查看

先执行下面的命令,查看所有的已安装软件名称。

rpm -qa | grep nginx

然后执行

rpm -ql 软件名称

就可以显示软件的安装路径。

nginx: Linux packages(nginx 官方安装说明)

地址 : http://nginx.org/en/linux_packages.html#stable

epel 官方网站

https://fedoraproject.org/wiki/EPEL/zh-cn

nginx 主要安装位置

主程序

/usr/sbin/nginx

配置文件 nginx.conf 所在目录

/etc/nginx
赞(2)
未经允许不得转载:技术好学屋 » CentOS 7 安装 Nginx 方法以及常见 Nginx 命令和安装问题
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址