Nginx反向代理:post_action如果代理缓存命中 – Possbile?

我们最近发现了有关nginxes post_action的信息.我们想知道如果进行代理缓存命中,有一种方法可以使用该指令吗?我们希望的流程如下:1) User request comes in 2) If cache HIT goto A / If cache MISS goto B A) 1) Serve Cached Result A) 2) post

我们最近发现了有关nginxes post_action的信息.

我们想知道如果进行代理缓存命中,有一种方法可以使用该指令吗?

我们希望的流程如下:

1) User request comes in
2) If cache HIT goto A / If cache MISS goto B

A) 1) Serve Cached Result
A) 2) post_action to another url on the backend

B) 1) Server request from backend
B) 2) Store result from backend

如果可以通过post_action或任何其他方法获得任何想法?

这背后的原因如下:

我们本质上希望在显示缓存内容时修改用户会话(php,但相同的概念可以应用于大多数服务器端语言).这将大大增加我们处理的可缓存请求的数量,因为这些请求仅写入会话而不是从会话中读取.

谢谢!

最佳答案
如果你还没有解决它,那么这是一个通过你的要求的示例配置:

server {
    listen 80;
    server_name img1.example;
    root /var/www/images;
    location / { // Users request comes in
        try_files $uri @proxy; // If cache HIT goto A (show) / If cache MISS goto B (@proxy),server cached result
        post_action /url.php; // post_action to another url on the backend
    }

    location @proxy {
        proxy_pass http://static.exmaple; // Server request from backend
        proxy_store /var/www/images$uri; // Store result from backend (cache)
    }
}

作者: dawei

【声明】:永州站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部