帮助中心
如何在CentOS 7上安装Nginx



Nginx发音引擎x是一个免费的、开源的、高性能的HTTP和反向代理服务器,负责处理互联网上一些大型网站的负载。

Nginx可以作为一个独立的Web服务器使用,也可以作为Apache和其他Web服务器的反向代理使用。

与Apache相比,Nginx可以处理大量的并发连接,并且每个连接的内存占用较小。

本教程将教你如何在CentOS 7机器上安装和管理Nginx。

前提条件


在开始本教程之前,请确保你以具有sudo权限的用户身份登录,并且没有在80或443端口运行Apache或其他任何服务。

在CentOS上安装Nginx


按照下面的步骤,在CentOS服务器上安装Nginx:

Nginx软件包可以在EPEL软件库中找到。如果你还没有安装EPEL软件库,你可以通过键入来完成:

$ sudo yum install epel-release

通过输入以下yum命令来安装Nginx:

$ sudo yum install nginx

如果这是你第一次从EPEL仓库安装软件包,yum可能会提示你导入EPEL GPG密钥:

Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
Importing GPG key 0x352C64E5:
Userid     : "Fedora EPEL (7) <epel@fedoraproject.org>"
Fingerprint: 91e9 7d7c 4a5e 96f1 7f3e 888f 6a2f aea2 352c 64e5
Package    : epel-release-7-9.noarch (@extras)
From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
Is this ok [y/N]:

如果是这样的话,输入y并点击回车。

安装完成后,启用并启动Nginx服务:

$ sudo systemctl enable nginx$ sudo systemctl start nginx

用以下命令检查Nginx服务的状态:

$ sudo systemctl status nginx

输出结果应该是这样的:

nginx.service - The nginx HTTP and reverse proxy server
  Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
  Active: active (running) since Mon 2018-03-12 16:12:48 UTC; 2s ago
  Process: 1677 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
  Process: 1675 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
  Process: 1673 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)
Main PID: 1680 (nginx)
  CGroup: /system.slice/nginx.service
          ├─1680 nginx: master process /usr/sbin/nginx
          └─1681 nginx: worker process

如果你的服务器有防火墙保护,你需要打开HTTP(80)和HTTPS(443)两个端口。

使用下面的命令来打开必要的端口:

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

为了验证Nginx的安装,在你选择的浏览器中打开http://YOUR_IP,你会看到默认的Nginx欢迎页面,如下图所示:




用systemctl管理Nginx服务


你可以用与其他systemd单元相同的方式管理Nginx服务。

要停止Nginx服务,请运行

$ sudo systemctl stop nginx

要再次启动它,输入

$ sudo systemctl start nginx

要重新启动Nginx服务:

$ sudo systemctl restart nginx

在做了一些配置修改后,重新加载Nginx服务:

$ sudo systemctl reload nginx

如果你想禁止Nginx服务在启动时启动:

$ sudo systemctl disable nginx

并再次重新启用它

$ sudo systemctl enable nginx


Nginx配置文件的结构和最佳做法

  • 所有的Nginx配置文件都位于/etc/nginx/目录下。
  • 主要的Nginx配置文件是/etc/nginx/nginx.conf。
  • 为了使Nginx配置更容易维护,建议为每个域创建一个单独的配置文件。
  • 新的Nginx服务器块文件必须以.conf结尾,并存储在/etc/nginx/conf.d目录下。你可以根据需要拥有尽可能多的服务器块。
  • 遵循一个标准的命名规则是个好主意,例如,如果你的域名是mydomain.com,那么你的配置文件应该命名为/etc/nginx/conf.d/mydomain.com.conf
  • 如果你在你的域名服务器块中使用可重复的配置段,那么最好创建一个名为/etc/nginx/snippets的目录,将这些段重构为片段,并将片段文件包含在服务器块中。
  • Nginx的日志文件(access.log和error.log)位于/var/log/nginx/目录中。建议为每个服务器块设置不同的访问和错误日志文件。
  • 你可以将你的域文件根目录设置为任何你想要的位置。webroot最常见的位置包括:/home///var/www/。/var/www/html//opt/。/opt//usr/share/nginx/html


结语

恭喜你,你已经在CentOS 7服务器上成功安装了Nginx。现在你可以开始部署你的应用程序,并使用Nginx作为网络或代理服务器。

文章相关标签: Nginx CentOS
购物车
业务咨询:
售后服务: