繁体   English   中英

PHP + Nginx + X-Accel-Redirect缓存问题

[英]PHP + Nginx + X-Accel-Redirect Caching issue

我正在使用nginx 1.0.12并具有如下设置:

        location /protected/ {
            expires 30d;
            log_not_found off;
            internal;
            alias /var/www/files/uploads/;
    }

并要求这样的用户文件:

header('X-Accel-Redirect: http://example.com/adetwiler/files/example.png');
header('Content-type: image/png');

一切正常,直到用户可以旋转其图像为止。 一旦他们旋转了图像,我就不知道如何获取该文件的“新”版本,除非在浏览器中单击“刷新”,否则它仍显示该图像的旧版本。

我尝试设置Cache-control:no-cache,Expires:Expires:Sat,1997年7月26日,格林尼治标准时间,格林尼治标准时间,没有运气。

我尝试添加修改日期,如下所示:

header('X-Accel-Redirect: http://example.com/adetwiler/files/example.png?123456789');

每次尝试加载时都会导致图像加载。

我尝试将其添加到nginx配置中:

add_header Pragma public;
add_header Cache-Control "public, must-revalidate";

在这一点上,我很茫然,我已经尝试了所有我能想到的。

所以我的问题是,一旦图像更新,当前的设置或与我的设置类似的方法是否可以使用图像的新版本?

谢谢!

看起来像设置X-Accel-Buffering: no因为标头告诉nginx根本不缓存响应。

https://www.nginx.com/resources/wiki/start/topics/examples/x-accel/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM