Nginx 入门:反向代理的第一课

举报
yd_234268181 发表于 2026/11/04 23:45:53 2026/11/04
【摘要】 面向新手的 Nginx 入门教程:介绍 Nginx 是什么、能做什么,演示安装步骤,并给出最基本的反向代理配置示例和常见使用场景。

如果你刚开始接触网站部署,一定会听到一个名字:Nginx。它读作“engine x”,是一款轻量、高性能的开源 Web 服务器和反向代理服务器。很多网站、接口服务和小程序后端,背后都站着 Nginx。今天这篇入门教程,就带你认识它,并动手配出第一个反向代理。


一、Nginx 是什么


简单理解,Nginx 就是站在用户和你的应用之间的“接待员”。用户在浏览器里输入域名,请求先到达 Nginx,再由 Nginx 转交给真正的应用处理,最后把结果返回给用户。你不需要一开始就搞懂所有配置,先记住这个流程就够了。


二、Nginx 能做什么


第一,做静态网站服务器:直接把写好的 HTML、CSS、图片文件交给 Nginx 对外提供访问,简单又快速。

第二,做反向代理:把用户的请求转发到本地或内网的应用,比如跑在 3000 端口的 Node 服务,或者 8080 端口的后端接口。

第三,做负载均衡:当一台服务器不够用时,Nginx 可以把请求轮流分给多台后端服务器,分担压力。

第四,做简单的缓存和安全防护:比如统一处理 HTTPS、限制访问频率、隐藏真实的后端地址。


三、安装 Nginx


在常见的 Linux 服务器上,安装并不复杂。以 Ubuntu 为例,先更新软件源,再安装并启动:


sudo apt update

sudo apt install nginx

sudo systemctl start nginx

sudo systemctl enable nginx


安装完成后,在浏览器输入服务器 IP,如果看到 Nginx 的欢迎页面,就说明它已经正常运行了。


四、最基本的反向代理配置示例


假设你的应用跑在本机的 3000 端口,你希望用户访问域名时直接看到这个应用,而不是在地址后面加端口号。这时可以在 Nginx 的配置文件里写一个 server 块:


server {

    listen 80;

    server_name example.com;

    location / {

        proxy_pass http://127.0.0.1:3000;

        proxy_set_header Host $host;

        proxy_set_header X-Real-IP $remote_addr;

    }

}


这段配置的意思是:监听 80 端口,收到 example.com 的请求后,把它转发到本地 3000 端口,并把原始的域名和用户 IP 一起传给后端。写好配置后,先用 nginx -t 检查语法,再用 nginx -s reload 让配置生效。


五、常见使用场景


新手最常遇到的场景有三个。一是前后端分离:前端静态页面由 Nginx 直接托管,接口请求以 /api 开头转发给后端。二是多服务共用一个域名:不同路径转发到不同的应用,比如 /blog 走博客服务,/shop 走商城服务。三是本地开发联调:把线上域名指向本地服务,方便在真实环境里调试接口。


六、小结


今天我们认识了 Nginx 是什么,它能做静态托管、反向代理和负载均衡,并动手写出了第一个反向代理配置。下一步你可以试试:把自己的一个小项目跑起来,再用 Nginx 把它转发到 80 端口,让别人只用域名就能访问。迈出这一步,反向代理就不再神秘了。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。