专注于深圳企业建站,深圳做网站首选建站公司收藏本站|设为首页

您现在的位置: 网站首页 > 网站专题 > 网络编程 > 详细内容

用Nginx做静态文件的CDN

2010-11-19 11:09:29 来源: 云梯科技 www.wangzhan114.com [ ]

用Nginx做静态文件的CDN

      鉴于监管环境和网站速度之间的矛盾,目前的网络架构方式如下:

      1、web动态页面(含数据库)架设在位于美国西海岸的数据中心;

      2、静态文件,例如css、js、exe、图片存放在国内几台windows服务器上。

      如果你的网站是商用、盈利性的网站,而没有技术能力搭建CDN,请使用第三方CDN服务。

      存在的问题有:

      1、静态文件同步问题;

      2、缓存刷新问题。
      第一个问题使用nginx得到解决。使用proxy_store功能,在文件不存在的时候请求源服务器,并保存。

      文件存在时直接读取本机文件。

      squid等方案因为再学习一个新工具需要成本;而nginx的实际使用情况并不逊色于squid等软件。所以不予考虑。这就是所谓老大拍脑袋决定方案吧。

      第二个问题,参考第四届D2上口碑网分享的经验:CDN上静态文件不提供删除功能。其实也未尝不可。当然也可以使用相应nginx扩展接口甚至php文件来清除缓存,也不是很复杂。

      安装

      如果你的系统是linux的,可忽略第一步,看第二步:配置方式

      1、安装Nginx

      windows在生产环境安装nginx最好使用服务的方式。如果根据网上提供的instsrv.exe注册服务方案,具有若干缺陷。比如nginx.exe作为主进程启动另一个进程,而instsrv.exe只能监控一个进程。这里推荐俄罗斯人写的一款小工具NG_SRVINST