如何在 Linux 上安装 Nginx Web 服务器

本指南将帮助您在各种 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 证书

目录

  • 1. 安装 Nginx
    • 1.1 在 Ubuntu 或 Debian 上安装 Nginx
    • 1.2 在 CentOS 7 上安装 Nginx
    • 1.3 在 CentOS 8、Rocky Linux 或 AlmaLinux 上安装 Nginx
  • 2.检查Nginx服务状态
  • 3. Nginx 配置文件和目录
    • 3.1 服务器配置文件
    • 3.2 Nginx 日志
    • 3.3 默认公共 Web 目录
  • 结论

1. 安装 Nginx

在开始之前,您应该拥有一个具有sudo特权的常规非 root 用户。

1.1 在 Ubuntu 或 Debian 上安装 Nginx

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

让我们首先确保您的系统是最新的:

sudo apt update

之后,您可以安装 Nginx:

sudo apt install nginx

1.2 在 CentOS 7 上安装 Nginx

在 CentOS 7 上,Nginx 包在EPEL(企业 Linux 的额外包)存储库中可用。如果你还没有安装它,你可以输入:

sudo yum install epel-release

现在您可以继续安装 Nginx:

sudo yum install nginx

如果您看到这一点,请按y ,然后 按 Enter 接受 EPEL GPG 键。

安装完成后,启用并启动 Nginx 服务:
sudo systemctl enable nginx
sudo systemctl start nginx

最后,您需要同时打开 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

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

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

首先,更新所有可用的包:

[linuxmi@localhost www.linuxmi.com]$ sudo dnf upgrade

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

[linuxmi@localhost www.linuxmi.com]$ sudo dnf install nginx
 安装完成后,启用并启动 Nginx 服务:
[linuxmi@localhost www.linuxmi.com]$ sudo systemctl enable nginx
Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /usr/lib/systemd/system/nginx.service.
[linuxmi@localhost www.linuxmi.com]$ sudo systemctl start nginx

要允许 防火墙上的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

2.检查Nginx服务状态

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

[linuxmi@localhost www.linuxmi.com]$ sudo systemctl status nginx

输出如下:

● nginx.service - The nginx HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor prese>
   Active: active (running) since Sun 2021-12-12 20:37:40 EST; 1min 18s ago
  Process: 3715 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
  Process: 3713 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
  Process: 3712 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status>
 Main PID: 3717 (nginx)
    Tasks: 2 (limit: 23372)
   Memory: 6.5M
   CGroup: /system.slice/nginx.service
           ├─3717 nginx: master process /usr/sbin/nginx
           └─3718 nginx: worker process

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

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

这将显示默认的 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 目录,请使用下面显示的命令创建网站配置的符号链接:

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

当然,您需要替换 mydomain.com.conf 为您的虚拟主机.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。现在由您决定要为用户提供哪些内容。

相关:如何配置 Nginx 以通过 PHP-FPM 使用 PHP

如果您想了解有关 Nginx 及其工作原理的更多信息,可以查看 Nginx 官方文档

The post 如何在 Linux 上安装 Nginx Web 服务器 first appeared on Linux迷.

版权声明:
作者:ht
链接:https://www.techfm.club/p/9140.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>