切莫让CDN缓存你的动态文件

是这样的:我们这里有一个域名上了CDN,本来是缓存一些IMG和JS等一些静态资源的。但是因为业务需求,我们新添加了一个动态php文件做接口来接受一些用户的反馈内容。
然后今天在这个接口在线上出了一点小问题我要去调试发现,我改完代码后刷新竟然不起作用,但是我的链接改动参数就代码就起作用,当时我怀疑这个链接是被CDN缓存了,但是运维告诉我CDN不会缓存动态内文件。然后我去测试看nginx日志刷新网页确实没有访问日志。
最后运维把链接发给cdn厂商分析,确实是缓存了。CDN那边配置的遵循源站的策略,默认的话,我们没有设置PHP文件不缓存,就帮我们缓存了24小时
配置PHP不缓存的话我们需要在nginx配置文件location中添加header

//配置PHP不缓存
location ~ .*\.(php|php5)?$ {
        add_header Cache-Control no-cache;

    }
//配置缓存2分钟
location ~* ^.+\.(js|css)$ {
        expires 120s;
    }

你可能感兴趣的:(PHP,互联网)