Nginx是一个开源,高性能的HTTP和反向代理服务器,负责处理Internet上一些最大站点的负载。
它可以用作 HTTP 和非 HTTP 服务器的独立 Web 服务器、负载均衡器、内容缓存和反向代理。
与Apache相比,Nginx可以处理大量的并发连接,并且每个连接的内存占用更小。
本教程解释了如何在 CentOS 8 上安装和管理 Nginx。
先决条件
在继续之前,请确保您以具有 sudo 权限的用户身份登录,并且您没有在端口 80 或 443 上运行 Apache 或任何其他进程。
在 CentOS 8 上安装 Nginx
从 CentOS 8 开始,Nginx 软件包在默认的 CentOS 存储库中可用。
在 CentOS 8 上安装 Nginx 就像打字一样简单:
sudo yum install nginx
安装完成后,启用并启动 Nginx 服务:
sudo systemctl enable nginx
sudo systemctl start 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 Sun 2019-10-06 18:35:55 UTC; 17min ago
...
调整防火墙
FirewallD 是 Centos 8 上的默认防火墙解决方案。
在安装过程中,Nginx会创建一个防火墙服务文件,其中包含允许访问HTTP()和HTTPS()端口的预定义规则。80
443
使用以下命令永久打开必要的端口:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
现在,您可以通过在Web浏览器中打开来测试Nginx安装。您应该会看到默认的 Nginx 欢迎页面,如下图所示:http://YOUR_IP
Nginx 配置文件的结构和最佳实践
- 所有 Nginx 配置文件都位于目录中。
/etc/nginx/
- 主要的 Nginx 配置文件是 。
/etc/nginx/nginx.conf
- 为每个域创建单独的配置文件使服务器更易于维护。
- Nginx 服务器块文件必须以目录结尾并存储在目录中。您可以根据需要拥有任意数量的服务器块。
.conf
/etc/nginx/conf.d
- 遵循标准命名约定是一种很好的做法。例如,如果域名是,则应命名配置文件
mydomain.com
mydomain.com.conf
- 如果在域服务器块中使用可重复的配置段,最好将这些段重构为代码段。
- Nginx 日志文件(和)位于目录中。建议为每个服务器块使用不同的日志文件。
access.log
error.log
/var/log/nginx/
access
error
- 您可以将域文档根目录设置为所需的任何位置。网络根目录最常见的位置包括:
/home/<user_name>/<site_name>
/var/www/<site_name>
/var/www/html/<site_name>
/opt/<site_name>
/usr/share/nginx/html
结论
恭喜你,你已成功在 CentOS 8 伺服器上安裝 Nginx。您现在可以开始部署应用程序并使用Nginx作为Web或代理服务器。