ecshop大家都知道,都是PHP的页面,而且负载也非常大。当你的站流量大的时候,在购买流程和注册流程等都容易出现内存泄露或者是速度超级慢。这个时候ecshop的运行就遇到了很大的障碍。为了让ecshop实现nginx方式的负载均衡,而且将ecshop源服务器ip隐藏起来的话,还可以很容易的将ecshop的源IP暴露,也防止了一定程度上的攻击。
首先我们要让ecshop在nginx下跑起来。在nginx.conf里面我们必须配置以下信息。
proxy_temp_path /opt/tmp;
proxy_cache_path /opt/cache_1 levels=2:2 keys_zone=cache_1:500m inactive=5m max_size=5g;
上面是设置nginx cdn缓存的文件目录。
其次,我们必须定义源服务器的名称。
upstream jiqun {
server 127.0.0.1:8081 weight=1;
}
也就是说jiqun就是我们所谓的后端服务器了。
其次我们在location里面设置好cdn的数据源信息。
proxy_next_upstream http_502 http_504 error timeout invalid_header;
proxy_cache cache_1;
proxy_cache_valid 200 304 1h;
proxy_cache_valid 301 1d;
proxy_cache_valid any 1m;
include proxy.conf;
proxy_pass http://jiqun;
当你访问该location的时候,就会自动的取 proxy_pass http://jiqun;这个后端服务器的数据。
通过以上配置,我就完成了通过nginx来实现cdn的原理了。