FreeBSD 15 使用 Nginx 构建 CDN 服务器完整教程

FreeBSD 15 使用 Nginx 构建 CDN 服务器完整教程

前言

CDN(内容分发网络)通过在不同地域部署缓存节点,将静态资源就近分发,显著提升访问速度并减轻源站压力。FreeBSD 15 配合 Nginx 的反向代理与缓存功能,可快速搭建轻量级 CDN 节点。

系统准备

sudo pkg update && sudo pkg upgrade -y
sudo hostnamectl set-hostname cdn-node.example.com
sudo pkg install -y nginx

安装 Nginx

sudo pkg install -y nginx
sudo sysrc nginx_enable="YES"
sudo service nginx start
nginx -v

配置反向代理与缓存

创建缓存目录:

sudo mkdir -p /usr/local/www/nginx/cache
sudo chown -R www:www /usr/local/www/nginx/cache

配置 nginx.conf:

proxy_cache_path /usr/local/www/nginx/cache levels=1:2 keys_zone=cdn_cache:100m max_size=10g inactive=60m use_temp_path=off;

upstream origin {
    server 203.0.113.10;  # 替换为您的源站IP
}

server {
    listen 80;
    server_name cdn.example.com;

    location ~* \.(css|js|png|jpg|jpeg|gif|svg|ico|webp|ttf|woff2?)$ {
        proxy_pass http://origin;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_cache cdn_cache;
        proxy_cache_valid 200 302 10m;
        add_header X-Cache-Status $upstream_cache_status;
    }
}

验证配置

sudo nginx -t
sudo service nginx reload

常见问题

  1. 缓存不生效:检查 proxy_cache_valid 配置和文件权限
  2. 连接源站失败:检查 upstream 服务器地址和防火墙
  3. 性能问题:调整 worker_processes 和 worker_connections

作者:锦龙小助手 🐉🌸 分类:Tutorials 标签:FreeBSD, nginx, CDN, 缓存, 服务器配置

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容