在 Ubuntu 22.04 上安装和配置 Nginx 的完整指南

Nginx 是一款高性能的开源 Web 服务器软件,它可以用于反向代理、负载均衡、静态文件服务等。本指南将带您逐步完成在 Ubuntu 22.04 上安装和配置 Nginx 的过程。

步骤 1:更新软件包索引

在安装任何新软件之前,首先确保您的系统上的软件包索引是最新的。打开终端并运行以下命令:

sudo apt update

步骤 2:安装 Nginx

在 Ubuntu 22.04 上,可以通过 apt 包管理器轻松安装 Nginx。运行以下命令:

sudo apt install nginx

安装完成后,可以使用以下命令来检查 Nginx 是否已成功安装并正在运行:

systemctl status nginx

步骤 3:配置防火墙

如果您的服务器启用了防火墙(如 UFW),则需要允许 HTTP 和 HTTPS 流量通过。您可以使用以下命令开启这些服务:

sudo ufw allow 'Nginx HTTP'

sudo ufw allow 'Nginx HTTPS'

步骤 4:基本 Nginx 配置

Nginx 的配置文件位于/etc/nginx目录下。以下是一些基本配置:

    • 主配置文件:/etc/nginx/nginx.conf
    • 站点配置文件目录:/etc/nginx/sites-available 和 /etc/nginx/sites-enabled

通常,您可以将您的站点配置文件放在sites-available目录中,并通过创建符号链接到sites-enabled目录来启用它们。例如,您可以通过以下命令创建一个简单的站点配置文件:

sudo nano /etc/nginx/sites-available/my_site

在文件中添加以下内容作为示例站点配置:

server {

listen 80;

listen :::80;

复制代码
server\_name example.com www.example.com;

root /var/www/html;
index index.html index.htm;

location / {
    try\_files $uri $uri/ =[404](https://www.codesou.cn/tag/404 "404");
}

}

保存并关闭文件。然后创建符号链接:

sudo ln -s /etc/nginx/sites-available/my_site /etc/nginx/sites-enabled/

步骤 5:测试 Nginx 配置

在重新加载 Nginx 配置之前,您可以使用以下命令检查配置是否存在语法错误:

sudo nginx -t

如果没有错误,您会看到类似于以下的输出:

nginx: configuration file /etc/nginx/nginx.conf test is successful

步骤 6:重新加载 Nginx

一旦配置文件通过了语法检查,您可以通过以下命令重新加载 Nginx 以应用新的配置:

sudo systemctl reload nginx

结论

现在,您已经成功在 Ubuntu 22.04 上安装和配置了 Nginx。您可以通过浏览器访问您的服务器的 IP 地址或域名来验证是否正常运行。通过编辑 Nginx 的站点配置文件,您可以轻松地添加新的站点或更改现有站点的配置。祝您使用 Nginx 愉快!

原文链接:在 Ubuntu 22.04 上安装和配置 Nginx 的完整指南-

相关推荐
qetfw38 分钟前
UOS DHCP Relay:跨网段分配与 IP、DNS、网关验证
linux·服务器·网络·tcp/ip·uos
叼烟扛炮3 小时前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip
ynchyong3 小时前
Linux 有两个 “版本“
linux·发行版·内核版本
叼烟扛炮3 小时前
Linux 学习笔记(四十四):HTTP 协议解析与极简 Web 服务器实战
linux·服务器·学习
叼烟扛炮3 小时前
Linux 学习笔记(四十三):网络编程进阶——自定义协议解决 TCP 粘包与守护进程
linux·开发语言·网络·笔记·tcp/ip
Escalating_xu3 小时前
【Linux 网络编程】DNS 与 ICMP:从域名解析到 ping、traceroute,把“网络通不通”问清楚
linux·网络·php
Lsetea5 小时前
Certbot webroot申请SSL证书总是404:Nginx挑战目录与路径映射检查
运维·nginx·https·ssl证书·certbot
如若1235 小时前
Windows SSH + Headscale/Tailscale 组网及免密登录完整配置教程
运维·windows·ubuntu·ssh·内网穿透
一枕槐安4875 小时前
大模型限流、重试、超时处理:API 调用健壮性方案
linux·服务器·php·大模型api·指数退避·限流控制·超时预算
西索斯coding6 小时前
gpt-image-2.5-sunburst 和 gemini-3.1-flash-image 差多少?60 组项目素材的成功成本评测框架
java·linux·gpt·ai