绑定后台域名教程

后**立域名配置说明

背景说明

为了提升系统安全性,建议将后台访问域名进行更换,采用独立专用域名访问管理后台,而不是继续通过商城主域名直接暴露后台路径。

原先的访问方式存在以下安全隐患:

  • 容易被恶意扫描工具发现后台入口
  • 增加了暴力破解的风险
  • 暴露了系统管理路径
  • 主站域名和后台共用入口,不利于安全隔离
  • 后续不方便对后台单独做访问控制、IP 白名单、限流等安全策略

因此,正式环境建议采用:

  • 商城主域名:仅用于 PC/H5 等前台业务访问
  • 后**立域名:仅用于管理后台访问

例如:

  • 商城主域名:mall.example.com
  • 后**立域名:admi888.example.com

其中,后台域名建议包含数字和字母,复杂度越高越好,不要使用过于简单、容易被猜测的命名。


配置目标

配置完成后,实现以下效果:

  • https://mall.example.com/ 用于访问商城前台
  • https://mall.example.com/mobile 用于访问 H5
  • https://mall.example.com/admin 禁止访问
  • https://admi888.example.com/admin 用于访问后台管理端

配置前准备

在开始配置前,请先确认以下条件:

  1. 商城主域名和后**立域名都已完成 DNS 解析
  2. 外部 Nginx 或入口层已可正常反向代理到 K8s 集群
  3. 前端服务已通过 K8s 暴露,例如:
    • 10.0.0.11:30080
    • 10.0.0.12:30080
  4. 已准备好对应域名的 SSL 证书
  5. 正式环境建议强制启用 HTTPS

配置方法

1. 规划两个访问域名

建议至少准备两个域名:

  • 主站域名:用于商城前台访问
  • 后台域名:用于后台管理访问

示例:

  • 主站域名:mall.example.com
  • 后台域名:admi888.example.com

2. 配置商城主域名

商城主域名仅保留前台访问能力,不再允许后台入口继续暴露。

商城主域名的 Nginx 配置示例:

# ============================================================
# 公共 upstream
# ============================================================
upstream vortmall_frontend {
    server 10.0.0.11:30080 max_fails=3 fail_timeout=30s;
    server 10.0.0.12:30080 max_fails=3 fail_timeout=30s;
    keepalive 64;
}

# ============================================================
# 1. 商城主域名 mall.example.com —— 仅前台
# ============================================================
server {
    listen 80;
    server_name mall.example.com;
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl http2;
    server_name mall.example.com;

    ssl_certificate     /etc/nginx/ssl/mall.example.com.pem;
    ssl_certificate_key /etc/nginx/ssl/mall.example.com.key;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;

    add_header X-Frame-Options "SAMEORIGIN" always;
    add_header X-Content-Type-Options "nosniff" always;

    # 禁止通过主站访问后台(前缀匹配,同时覆盖 /adminapi)
    location /admin {
        return 404;
    }

    # 前台所有请求
    location / {
        proxy_pass http://vortmall_frontend;
        proxy_http_version 1.1;
        proxy_set_header Connection "";

        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
    }
}

# ============================================================
# 2. 后**立域名 admi888.example.com —— 仅后台
# ============================================================
server {
    listen 80;
    server_name admi888.example.com;
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl http2;
    server_name admi888.example.com;

    ssl_certificate     /etc/nginx/ssl/admi888.example.com.pem;
    ssl_certificate_key /etc/nginx/ssl/admi888.example.com.key;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;

    add_header X-Frame-Options "SAMEORIGIN" always;
    add_header X-Content-Type-Options "nosniff" always;

    # 只允许 /admin 和 /adminapi 路径
    location /admin {
        proxy_pass http://vortmall_frontend;
        proxy_http_version 1.1;
        proxy_set_header Connection "";

        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
    }

    # 其他路径一律拒绝(防止通过后台域名访问前台)
    location / {
        return 404;
    }
}
绑定后台域名教程
请输入搜索内容
大纲
后**立域名配置说明
背景说明
配置目标
配置前准备
配置方法
1. 规划两个访问域名
2. 配置商城主域名