首页 > 系统相关 >CentOS 7 下 yum 安装和配置 Nginx

CentOS 7 下 yum 安装和配置 Nginx

时间:2024-10-17 15:22:38浏览次数:9  
标签:http CentOS sudo Nginx yum port

CentOS 7 下 yum 安装和配置 Nginx 

前言

Nginx (engine x) 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 服务器。。 本例演示 CentOS 7 下安装和配置 Nginx 的基本步骤。

环境说明

CentOS 7(Minimal Install)

$ cat /etc/redhat-release 
CentOS Linux release 7.5.1804 (Core) 

步骤

步骤 1: 添加 yum 源

Nginx 不在默认的 yum 源中,可以使用 epel 或者官网的 yum 源,本例使用官网的 yum 源。

$ sudo rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

安装完 yum 源之后,可以查看一下。

$ sudo yum repolist
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
repo id                          repo name                          status
base/7/x86_64                    CentOS-7 - Base                    9,911
extras/7/x86_64                  CentOS-7 - Extras                    368
nginx/x86_64                     nginx repo                           108
updates/7/x86_64                 CentOS-7 - Updates                 1,041
repolist: 11,428

可以发现 nginx repo 已经安装到本机了。

步骤 2: 安装

yum 安装 Nginx,非常简单,一条命令。

$ sudo yum install nginx

步骤 3: 配置 Nginx 服务

设置开机启动

$ sudo systemctl enable nginx

启动服务

$ sudo systemctl start nginx

停止服务

$ sudo systemctl restart nginx

重新加载,因为一般重新配置之后,不希望重启服务,这时可以使用重新加载。

$ sudo systemctl reload nginx

步骤 4: 打开防火墙端口

默认 CentOS7 使用的防火墙 firewalld 是关闭 http 服务的(打开 80 端口)。

$ sudo firewall-cmd --zone=public --permanent --add-service=http
success
$ sudo firewall-cmd --reload
success

打开之后,可以查看一下防火墙打开的所有的服务

$ sudo firewall-cmd --list-service
ssh dhcpv6-client http

可以看到,系统已经打开了 http 服务。

反向代理

Nginx 是一个很方便的反向代理,配置反向代理可以参考 Module ngx_http_proxy_module 。本文不做累述。

需要指出的是 CentOS 7 的 SELinux,使用反向代理需要打开网络访问权限。

$ sudo setsebool -P httpd_can_network_connect on 

打开网络权限之后,反向代理可以使用了。

绑定其他端口

Nginx 默认绑定的端口是 http 协议的默认端口,端口号为:80,如果需要绑定其他端口,需要注意 SELinux 的配置

例如:绑定 8081 端口,但是会发现无法启动,一般的报错如下

YYYY/MM/DD hh:mm:ss [emerg] 46123#0: bind() to 0.0.0.0:8081 failed (13: Permission denied)

此时需要更改 SELinux 的设置。我们使用 SELinux 的管理工具 semanage 进行操作,比较方便。

安装 semanage 使用如下命令

$ sudo yum install policycoreutils-python

然后查看是否有其他协议类型使用了此端口

$ sudo semanage port -l | grep 8081
transproxy_port_t              tcp      8081

返回了结果,表明已经被其他类型占用了,类型为 transproxy_port_t

我们还要查看一下 Nginx 的在 SELinux 中的类型 http_port_t 绑定的端口

$ sudo semanage port -l | grep http_port_t
http_port_t                    tcp      80, 81, 443, 488, 8008, 8009, 8443, 9000
pegasus_http_port_t            tcp      5988

第一行 http_port_t 中没有包含 8081 这个端口。因此需要修改 8081 端口到 http_port_t 类型中。

$ sudo semanage port -m -p tcp -t http_port_t 8081

如果没有其他协议类型使用想要绑定的端口,如 8001,则我们只要新增到 SELinux 中即可。

$ sudo semanage port -l | grep 8001
$ sudo semanage port -a -p tcp -t http_port_t 8001

此时,重新启动 Nginx 即可。

结论

本文演示了 CentOS 7 下 yum 安装 Nginx,配置服务等。

标签:http,CentOS,sudo,Nginx,yum,port
From: https://www.cnblogs.com/qmxcyxt/p/18472390

相关文章

  • Linux之系列--Centos安装yum源及下载rpm包
    Linux之系列--Centos安装yum源及下载rpm包 国内yum源网易(163)yum源是国内较好的yum源之一,无论是速度还是软件版本,都非常的不错。将yum源设置为163yum,可以提升软件包安装和更新的速度,同时避免一些常见软件版本无法找到。下载对应版本repo文件,放入/etc/yum.repos.......
  • 内网Centos7.9 LibreOffice7.1安装包
    在Rag模型读取document时发现doc文件SimpleDirectoryReader无法正常读取字符,所以采用LibreOffice将doc转化为docx的方式。内网LibreOffice安装然后python循环的调用的方式来对inputdocuments进行转换,转换后的docxSimpleDirectoryReader可以正常读取。LibreOffice7.1安装参考:ht......
  • centos创建用户并仅授权访问某目录
    #!/bin/bash#检查是否以root用户运行if["$(id-u)"-ne0];thenecho"请使用root用户或sudo权限运行此脚本。"exit1fi#检查输入参数if["$#"-ne3];thenecho"用法:$0<用户名><密码><授权目录>"exit1fi......
  • Nginx 配置文件
    Nginx配置文件配置文件参考'''confupstreamtapi{server127.0.0.1:8000;}server{listen443ssl;server_nametapi.theemogen.com;ssl_certificate/etc/letsencrypt/live/hostname.com/fullchain.pem;ssl_certificate_key/etc/letsencrypt/live/......
  • 负载均衡和反向代理区别和nginx负载均衡模块
    目录负载均衡和反向代理区别相似之处:区别:负载均衡和反向代理使用什么服务 nginx的负载均衡模块 ​编辑负载均衡和反向代理区别相似之处:请求分发:两者都可以将客户端的请求分发到多个后端服务器,以提高系统的处理能力。提高性能:它们都有助于提高网络服务的性能,通过......
  • CentOS 7环境下DM8数据库的安装与配置
    一、环境准备首先,确保你的系统已经安装了CentOS7,并且具有足够的磁盘空间和内存来支持DM8数据库的运行。此外,你还需要具备管理员权限,以便进行后续的安装和配置操作。二、下载DM8安装包访问达梦数据库官方网站,下载适用于CentOS7的DM8安装包。你可以根据自己的需求选择合适的版......
  • nginx
    1.1什么是nginx?http和https区别?七层三次握手Nginx(发音同enginex)是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行。由俄罗斯的程序设计师IgorSysoev(伊戈尔·西索夫)所开发,供俄国大型的入口网站及搜索引擎Rambler......
  • CentOS高可用运维案例之---配置bond0
    案例说明:在CentOS7系统下,两个Server之间网卡部署bond0连接测试。系统版本:[root@node201~]#cat/etc/os-releaseNAME="CentOSLinux"VERSION="7(Core)"ID="centos"ID_LIKE="rhelfedora"VERSION_ID="7"PRETTY_NAME="CentOSLinu......
  • CentOS清理、巡检脚本
    清理脚本#!/bin/bash#清理缓存脚本echo"同步磁盘数据到内存"sync#清理页面缓存、目录项缓存和inode缓存echo"清理缓存..."sudosh-c"echo3>/proc/sys/vm/drop_caches"echo"清理完成"nacos清理脚本#!\bin\bash###用于定时清除nacos当天之前的日志文件###......
  • centos离线安装docker,docker-compose
    安装环境操作系统:Centos7.99内核版本:3.10.0-1160.el7.x86_64安装用户:rootdocker离线安装1下载压缩包官网下载地址:https://download.docker.com/linux/static/stable/x86_64/这里默认选择最新版本(26.0.2)。2上传压缩包并解压tarzxvfdocker-26.0.2.tgz3......