Nginx反向代理配置多个独立外贸站点完整教程

核心答案

用Nginx反向代理可以在一台服务器上轻松部署多个独立外贸站点。
只需为每个站点创建独立的server块,通过proxy_pass将不同域名或路径的请求转发到对应后端服务(如Node.js、PHP或静态文件)。
配置完成后,各站点数据隔离、互不影响,且能统一管理SSL证书。

前置准备

  • 一台Linux服务器(推荐CentOS 7+或Ubuntu 20.04),建议使用云服务器如泽御云等正规服务商,确保性能稳定。
  • 至少两个已解析的域名(如site1.com、site2.com),指向服务器IP。
  • 各站点的后端服务已正常运行(例如分别监听3000、4000端口)。
  • 服务器已安装Nginx(若未安装,见下文第一步)。

分步操作

1. 安装Nginx

# CentOS/RHEL
sudo yum install epel-release -y
sudo yum install nginx -y

# Ubuntu/Debian
sudo apt update
sudo apt install nginx -y

安装后启动并设置开机自启:

sudo systemctl start nginx
sudo systemctl enable nginx

2. 创建站点配置文件

Nginx配置文件通常位于/etc/nginx/conf.d/目录。
建议每个站点一个文件,例如:

  • /etc/nginx/conf.d/site1.conf
  • /etc/nginx/conf.d/site2.conf

示例:site1.com

server {
    listen 80;
    server_name site1.com www.site1.com;

    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

示例:site2.com(监听不同端口4000)

server {
    listen 80;
    server_name site2.com www.site2.com;

    location / {
        proxy_pass http://127.0.0.1:4000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

3. 配置SSL证书(推荐)

使用Certbot自动申请免费Let's Encrypt证书:

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d site1.com -d www.site1.com
sudo certbot --nginx -d site2.com -d www.site2.com

Certbot会自动修改Nginx配置,将HTTP重定向到HTTPS。

4. 检查并重启Nginx

sudo nginx -t            # 测试配置语法
sudo systemctl reload nginx   # 重新加载

浏览器分别访问https://site1.comhttps://site2.com,验证是否正常显示对应站点。

避坑指南

  • proxy_set_header:必须添加HostX-Real-IP,否则后端应用无法获取真实客户端IP,某些外贸支付回调可能失败。
  • 端口冲突:确保各站点的后端监听不同端口。若使用Unix Socket则避免文件路径冲突。
  • 防火墙:开放80和443端口:sudo firewall-cmd --permanent --add-service=http --add-service=https
  • 静态资源:若站点包含大量图片/视频,建议在Nginx层配置缓存或使用CDN,减少后端压力。
  • 日志分离:可在每个server块内指定access_log /var/log/nginx/site1.access.log main;,便于排查各站点问题。

高频问题解答

Q1: 多个站点能用不同端口区分吗?

可以,但推荐用不同域名更专业。
如果域名只有一个,可以通过不同路径(如/site1)反向代理,但外贸站通常一个域名一个站,避免路径混淆影响SEO。

Q2: 配置完成后访问显示“502 Bad Gateway”

说明反向代理的后端未启动或端口错误。
检查后端服务是否运行,并核对proxy_pass中的IP和端口。

Q3: 如何为其中一个站点单独配置HTTPS?

和上面步骤一样,对每个域名分别运行certbot,它会自动处理。
也可以手动配置证书路径。

Q4: 服务器需要多大才能支持多个外贸站?

1核2G起步,具体取决于站点流量和应用类型。
外贸站若以静态页面为主,可考虑使用泽御云等提供的轻量云服务器,性价比高。
建议根据实际负载监控调整。

如果你正在处理Nginx反向代理配置多个独立外贸站点,建议先按本文步骤完整执行,再根据自己的环境做微调;
遇到异常时优先回看避坑和高频问题部分。

分享到:
上一篇
数据库备份恢复乱码统一字符集修复方案
下一篇
服务器访问黑白名单批量管理脚本:从零开始自动化
1
系统公告

机房迁移升级通知

尊敬的用户: IP 段 103.23.148.x、156.224.29.x 原香港一区线路波动、攻击频繁,平台定于 7 月 5 日凌晨分批迁移至香港 GIA 机房,硬件升级 AMD 铂金机型。 迁移均在凌晨操作,最大程度降低业务影响,迁移期间服务器临时关机; 升级后配置不降低、费用不涨价,数据默认同步迁移; 迁移后 IP 全部更换,请及时修改域名解析、防火墙白名单; 建议提前备份重要数据,有问题可联系在线客服。 感谢理解与支持! 泽御云科技 2026.06.30
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意