首页 > 系统 > Linux > 正文

在 Linux 上安装 Nginx 创建属于自己的 Web 服务器

2024-08-27 23:54:53
字体:
来源:转载
供稿:网友
  本指南将帮助您在各种 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://www.linuxmi.com/lets-encrypt-certbot-ssl.html )。
 
  目录
 
   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:
 
  要允许 防火墙上的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
  1.
  输出如下:
 
  复制
  ● 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/
  1.
  当然,您需要替换 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 服务器会在这些配置文件中指定的文档根目录中查找网站文件。

(编辑:武林网)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表