windows2012 如何设置CDN?
美国、香港服务器
windows2012 如何设置CDN?
09-07 来源:
## 一、CDN 控制台配置(核心)
1. 添加加速域名,源站填写 Windows2012 公网 IP
2. **回源 HOST**:必须和 IIS 站点绑定的**主机头完全一致**,否则访问 404
3. 回源协议:IIS 是 HTTP 就选 HTTP;IIS 绑定证书 443 就选 HTTPS
4. 缓存规则配置
- 静态资源(jpg/png/css/js):设置缓存过期、开启**忽略参数**,配置缓存键
- html、动态页面:短缓存或者不缓存
5. DNS 域名解析:域名改为 CDN 分配的 CNAME 记录
6. 等待 5‑15 分钟 CDN 节点配置生效
## 二、Windows2012 IIS 源站配置
运行输入 `inetmgr` 打开 IIS 管理器。
### 1、安装 2 个必须组件
#### ① URL 重写模块(微软官网下载 URL Rewrite2.0)
#### ② IP 和域限制(源站防护组件)
服务器管理器 → 添加角色和功能 → Web 服务器 (IIS) → 安全性 →勾选**IP 和域限制**,安装完成GitHub。
### 2、站点绑定(主机头,决定 CDN 回源 HOST)
选中网站→【绑定】
- http 80 端口:主机头填写业务域名,如`www.test.com`
- https 443 端口:填写域名,**勾选 SNI**,选择 SSL 证书
CDN 控制台回源 HOST 填写此处主机头域名;多站点服务器,每个站点必须填写主机头,不要留空。
**本机 PowerShell 模拟 CDN 回源测试**
curl -v -H "Host:www.test.com" http://127.0.0.1
返回 200,代表 IIS 识别 Host 头;404 代表主机头不匹配。
### 3、配置 HTTP 缓存响应头(给 CDN 参考)
网站根目录`web.config`
优先级:**CDN 控制台缓存规则 > IIS 返回的 Cache‑Control 头**。
### 4、IIS 日志获取用户真实 IP(CDN 会携带 X‑Forwarded‑For 头)
1. IIS 选中站点 →【日志】,日志格式选择 W3C
2. 点击【选择字段】→【添加字段】
- 字段名称:`X‑Forwarded‑For`
- 源类型:请求标头
- 源:`X‑Forwarded‑For`
3. 保存,重启 IIS。日志即可记录真实访客 IP,不再只看到 CDN 节点 IP。
## 三、源站防护【非常重要,防止绕过 CDN 直接访问源站】
### 方式 1:IIS IP 和域限制
1. IIS 选中站点 →【IP 地址和域限制】
2. 右侧【编辑功能设置】
- 对未指定的客户端:**拒绝**
- 勾选 **启用代理模式(Enable Proxy Mode)**(IIS8 支持,识别 X‑Forwarded‑For)Microsoft ...
3. 添加允许条目:填入 CDN 服务商全部**回源 IP 段**(CDN 控制台下载回源 IP 列表)
开启之后,直接 IP 访问网站返回 403,只有 CDN 节点可以回源访问源站。
### 方式 2:云安全组 + Windows 防火墙双重加固
1. 云服务器安全组:80、443 端口,**仅放行 CDN 回源 IP 段**,拒绝其他公网 IP
2. Windows 高级防火墙入站规则,80/443 同样只放行 CDN 回源网段
RDP3389 端口禁止全网开放,只放行自己办公 IP。
## 四、验证 CDN 是否生效
1. nslookup 域名,解析结果是 CDN 节点 IP,**不是服务器源站公网 IP**
2. F12 开发者工具查看响应头,CDN 命中缓存一般会出现 HIT 标识
3. 浏览器直接访问服务器公网 IP,返回 403,源站防护生效
三二互联专业提供香港VPS,美国VPS主机,香港云服务器租用等业务香港美国到大陆CN2 GIA速度最快