如何使用 nginx 设置私有 CDN?

如何使用 nginx 设置私有 CDN?

问题如下:我在欧洲有一台 Linux 服务器,使用 nginx+php-fpm 为一个繁忙的 Drupal 网站提供服务,在美国还有另一台 Linux 服务器(我的访客大部分来自美国)。第二台服务器的使用率很低。我想知道如何利用第二台服务器来提供我网站的静态内容?

答案1

在第二台服务器上安装 Nginx,并将其设置为轻量级静态代理缓存文件服务器:

server {
 
        open_file_cache_valid 200 20m;
        listen 80;
        server_name yourcdndomain.com;
        access_log   /srv/www/yourcdndomain.com/logs/access.log;
        root   /srv/www/yourcdndomain.com/public_html/;
 
 
 
      location ~* \.(jpg|png|gif|jpeg|css|js|mp3|wav|swf|mov|doc|pdf|xls|ppt|docx|pptx|xlsx)$ {
                                # Cache static-looking files for 120 minutes, setting a 10 day expiry time in the HTTP header,
                                # whether logged in or not (may be too heavy-handed).
 
                                open_file_cache_valid 200 120m;
                        expires 7776000;
                        open_file_cache staticfilecache;
                }
 
location = /50x.html {
                root   /var/www/nginx-default;
        }
 
 # No access to .htaccess files.
        location ~ /\.ht {
          deny  all;
        }
 
    }

将静态文件重写到新域名或更改 URL

编辑

我把上面的文件改成了使用open_file_cache代替proxy_cache

相关内容