如何安装和配置Nginx Web服务器?

译文
开源
如果您在考虑运行一个网站,更有可能选择Nginx。本文介绍了安装和设置的方法。

[[436452]]

【51CTO.com快译】本文将帮助您在各种Linux发行版上安装Nginx,您将了解重要的Nginx配置文件和目录。

由于其性能和易用性,Nginx是最受欢迎的Web 服务器系统。它是一种免费的开源高性能HTTP服务器系统。除了Web服务器功能外,Nginx还可以充当反向代理和负载均衡系统。

以下步骤将向您展示如何在Ubuntu、Debian、CentOS、Rocky Linux和AlmaLinux之类的各种Linux发行版上安装Nginx,并测试其功能。

此外,如果您想知道如何使用免费的Let's Encrypt SSL证书来保护您的Nginx,建议阅读这篇指南:《Let's Encrypt:使用Certbot获取免费的SSL证书》(https://linuxiac.com/lets-encrypt-free-ssl-certificate/)。

1. 安装Nginx

开始之前,您应该有一个拥有sudo权限的普通非root用户。

1.1 在Ubuntu或Debian上安装Nginx

Nginx在默认的Ubuntu和Debian存储库中可找到,因此您可以使用apt包管理工具轻松安装它。

不妨先确保您的系统是最新的:

  1. sudo apt update 

之后,您可以安装Nginx了:

  1. sudo apt install nginx 

1.2 在CentOS 7上安装Nginx

在CentOS 7上,Nginx包在EPEL(企业Linux的额外包)存储库中可找到。如果您还没有安装它,可以输入该命令来安装:

  1. sudo yum install epel-release  

现在您可以继续安装Nginx:

  1. sudo yum install nginx 

如果您看到该画面,请按y,然后按回车键,接受EPEL GPG密钥。

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

  1. sudo systemctl enable nginx 
  2. sudo systemctl start nginx 

最后,HTTP(80)端口和HTTPS(443)端口都需要打开。

  1. sudo firewall-cmd --permanent --zone=public --add-service=http 
  2. sudo firewall-cmd --permanent --zone=public --add-service=https 
  3. sudo firewall-cmd --reload 

1.3 在CentOS 8、Rocky Linux或AlmaLinux上安装Nginx

为了安装Nginx,我们将使用dnf包管理器,它是CentOS 8、Rocky Linux和AlmaLinux上的默认包管理器。

先更新所有可用的包:

  1. sudo dnf upgrade 

更新完成后,运行以下命令安装Nginx:

  1. sudo dnf install nginx 

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

  1. sudo systemctl enable nginx 
  2. sudo systemctl start nginx 

想允许防火墙上通过HTTP(80)和HTTPS(443)传输流量,执行以下命令:

  1. sudo firewall-cmd --permanent --zone=public --add-service=http 
  2. sudo firewall-cmd --permanent --zone=public --add-service=https 
  3. sudo firewall-cmd --reload

2.检查Nginx服务状态

想确认Nginx Web服务器正在运行,执行以下命令:

  1. sudo systemctl status nginx 

从上面显示的输出中可以得出结论,Nginx服务已启动并在运行。

此外,您可以访问默认的Nginx登录页面,通过导航到您服务器的IP地址来确认Web服务器运行正常。

如果您不知道如何查找服务器的IP地址,本文将帮助您找到地址。

这将显示默认的Nginx登录页面,表明一切正常。

3. Nginx配置文件和目录

Nginx现已安装,您应该会注意一些重要的文件夹和位置。

3.1 服务器配置文件

  • /etc/nginx:含有所有Nginx配置文件的主目录。
  • /etc/nginx/nginx.conf:主要的Nginx配置文件。
  • /etc/nginx/sites-available:定义各个网站的目录。请记住,Nginx不会使用在此目录中找到的配置文件,除非它们链接到/etc/nginx/sites-enabled目录。
  • /etc/nginx/sites-enabled:由Nginx积极提供服务的网站列表。

想激活网站以便将它们链接到/etc/nginx/sites-enable目录,使用如下所示的命令来创建网站配置的符号链接:

  1. sudo ln -s /etc/nginx/sites-available/mydomain.com.conf /etc/nginx/sites-enabled/ 

当然,您需要将mydomain.com.conf换成VirtualHost .conf文件。

3.2 Nginx日志

Nginx日志文件(access.log和error.log)位于/var/log/nginx/目录中。

  • access.log:对您Web服务器的每个请求都记录在该日志文件中。
  • error.log:记录Nginx 中生成的任何错误的日志。您的服务器未按预期运行时,可以在这里排查故障。

3.3 默认的公共Web目录

默认情况下,Nginx在其基本配置文件中设置了默认文档根目录。创建虚拟主机或服务器块时,Web服务器会在这些配置文件中指定的文档根目录中查找网站文件。

  • /var/www/html:在Ubuntu和Debian上,Nginx将文档存储在这里。
  • /usr/share/nginx/html:在CentOS、Rocky Linux和Alma Linux上,默认的Nginx网页位于此处。

结语

本教程介绍了如何在各种Linux发行版上安装Nginx,现在您可以决定想要为您的用户提供什么样的内容。

原文标题:How to Install Nginx Web Server on Linux,作者:Bobby Borisov

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

责任编辑:华轩 来源: 51CTO
相关推荐

2020-04-15 20:57:57

NginxWeb服务器

2009-07-02 13:46:17

JSP引擎Web服务器

2020-10-22 08:00:24

ApacheWeb服务器

2017-12-27 10:18:09

ApacheNginx服务器

2018-04-02 15:07:01

LinuxApacheWeb服务器

2018-08-07 08:54:18

2009-03-04 09:48:52

安装配置桌面虚拟化Xendesktop

2015-05-07 09:31:49

CollectdCollectd-We监控服务器

2021-07-28 23:32:09

Nginx服务器Https

2009-01-10 18:58:52

2018-10-23 09:58:23

ApacheNGINXWeb

2014-07-15 09:44:07

Linux Web服务Nginx

2011-08-08 14:31:49

服务器

2019-12-30 16:03:54

Web服务器Nginx

2010-12-28 15:39:38

2011-11-22 21:26:59

pfSense配置Web服务器负载均衡

2018-08-21 10:35:18

NginxWeb服务器

2018-12-13 10:16:20

NginxWeb服务器

2010-08-26 09:33:10

DHCP服务器

2017-03-17 14:05:48

LinuxUbuntuFTP服务器
点赞
收藏

51CTO技术栈公众号