文章目录
在RAKsmart服务器上配置Cloudflare作为反向代理(即CDN和DNS服务)来加速和保护网站,是一个高效且常见的做法。以下是详细步骤指南,rak部落小编为您整理发布使用RAKsmart配置Cloudflare反代加速网站。
核心步骤概览
- Cloudflare账户准备
- 添加域名到Cloudflare
- 修改域名DNS服务器
- 配置Cloudflare代理设置
- 服务器端配置(Nginx/Apache)
- SSL/TLS设置
- 性能优化设置
详细操作步骤
1. 注册/登录Cloudflare账户
- 访问 Cloudflare官网 注册或登录。
2. 添加域名到Cloudflare
- 点击 “Add Site”,输入你的域名(如
example.com
)。 - 选择免费计划(或根据需求选更高套餐),点击 “Continue”。
3. 扫描并修改DNS记录
- Cloudflare会自动扫描你现有的DNS记录(A、CNAME、MX等)。
- 关键操作:
- 确保所有需要代理的流量记录(如
A
记录指向服务器IP)状态为 “Proxied”(橙色云图标)。 - 邮件等敏感记录设为 “DNS Only”(灰色云图标)。
- 点击 “Continue”。
- 确保所有需要代理的流量记录(如
4. 修改域名DNS服务器
- Cloudflare会提供两个自定义Nameserver(如
lara.ns.cloudflare.com
)。 - 登录你的域名注册商后台(如Namecheap、阿里云等),替换原有的Nameserver为Cloudflare提供的地址。
- 更改通常在24-48小时内生效(实际可能更快)。
5. 服务器端配置(以Nginx为例)
配置服务器识别Cloudflare的真实访客IP(而非Cloudflare的IP)。
步骤:
- 获取Cloudflare IP 列表:bash复制下载wget https://www.cloudflare.com/ips-v4 -O /etc/nginx/cloudflare-ips.txt wget https://www.cloudflare.com/ips-v6 -O /etc/nginx/cloudflare-ips-v6.txt
- 修改Nginx配置:nginx复制下载# 在 http 或 server 块中添加 real_ip_header CF-Connecting-IP; set_real_ip_from 103.21.244.0/22; set_real_ip_from 2400:cb00::/32; # … 其他Cloudflare IP段(从下载的列表中复制全部) include /etc/nginx/cloudflare-ips.txt; # IPv4 include /etc/nginx/cloudflare-ips-v6.txt; # IPv6
- 重启Nginx:bash复制下载systemctl restart nginx
6. 配置Cloudflare SSL/TLS
- 进入Cloudflare控制台 > SSL/TLS 选项卡:
- 概述:选择 “Full (strict)” 模式(推荐)。
- 边缘证书:开启 “Always Use HTTPS” 和 “Automatic HTTPS Rewrites”。
- 源服务器:生成Cloudflare Origin证书(或使用自有证书)。
- 7. 性能优化设置
- 缓存配置:
- Caching > Configuration:设置缓存级别(如Standard)。
- 创建页面规则(Page Rules)缓存HTML(如
example.com/*
,规则:Cache Level: Cache Everything
)。
- Broti压缩:
- Speed > Optimization:开启 “Brotli”。
- HTTP/2 & HTTP/3:
- Network:启用 HTTP/2 和 HTTP/3 (QUIC)。
- Argo Smart Routing(付费功能):
- 通过优化路由进一步提升全球访问速度。
RAKsmart服务器端注意事项
- 防火墙设置:
- 仅允许Cloudflare IP访问
80/443
端口(Cloudflare IP列表)。 - 示例(UFW):bash复制下载ufw allow from 173.245.48.0/20 to any port 80,443 ufw allow from 2400:cb00::/32 to any port 80,443 # … 添加所有Cloudflare IP段
- 仅允许Cloudflare IP访问
- 安全加固:
- 禁用直接访问源站IP(防止绕过Cloudflare):nginx复制下载server { listen 80; server_name your-server-ip; return 444; # 丢弃连接 }
验证配置是否生效
- DNS生效检查:bash复制下载dig ns example.com +short # 应返回Cloudflare的NS
- 代理状态检查:
- 访问
curl -I http://example.com
,查看CF-Cache-Status
响应头。
- 访问
- 真实IP测试:
- 访问
https://www.whatismyip.com/
,确认显示的是Cloudflare IP。 - 在服务器日志中检查访客IP是否为真实用户IP(而非Cloudflare IP)。
- 访问
常见问题解决
- 502错误:检查服务器防火墙是否放行Cloudflare IP,且Nginx/Apache运行正常。
- SSL证书错误:确认Cloudflare的SSL模式为 Full/Full(strict),且源服务器证书有效。
- 缓存不更新:在Cloudflare控制台清除缓存(Caching > Purge Cache)。
通过以上步骤,你的RAKsmart服务器即可通过Cloudflare实现全球加速、DDoS防护和流量优化。部署后建议使用 WebPageTest 或 GTmetrix 测试加速效果。