微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Nginx / SSI独立片段caching

我试图设置一个基本的工作Nginx + SSI的例子:

Nginx的configuration(只是相关的部分,为简洁起见):

ssi on; proxy_cache_path /var/cache/Nginx levels=1:2 keys_zone=my_cache:20m max_size=20m inactive=60m use_temp_path=off; server { listen 80; server_name localhost; location / { proxy_cache my_cache; proxy_set_header Host $host; proxy_http_version 1.1; proxy_buffering on; proxy_pass http://127.0.0.1:81; } } server { listen 81; root /path/to/root; location ~ ^/.+.PHP { fastcgi_pass 127.0.0.1:9000; } }

ssi.PHP

<?PHP header('Cache-Control: public,s-maxage=5'); ?> Time: <?PHP echo time(); ?> Fragment time: <!--# include virtual="/time.PHP" -->

time.PHP

Gradle离线如何caching依赖关系

Windows Server AppFabriccaching会话存储

有没有办法强制Windowscaching文件

Apache – 如何在debugginghtaccess时禁用浏览器caching

在编写高带宽数据stream时如何最好地pipe理Linux的缓冲行为?

<?PHP header('Cache-Control: no-cache'); echo time();

包括很好的作品:

时间:1466710388。分段时间:1466710388

现在,稍后我会期望页面(ssi.PHP)仍然被caching,但time.PHP片段是新鲜的:

时间:1466710388。分段时间:1466710389

然而它在5秒内保持完全相同,之后ssi页面随着片段一起更新:

时间:1466710393。分段时间:1466710393

我之前用ESI和Varnish做过这个,期待它和SSI一样。 假设我错了吗? 我无法在网上find答案,并尝试了不同的caching控制标题,但我确信这是正确的方法。 我在这里错过了什么?

Nginx上永久在内存中caching一个静态文件

Nginx与烧瓶和memcached返回一些乱码字符

如何让Nginx Proxycaching与dynamic内容一起工作

我的Windows应用程序应该在哪里存储caching和临时文件

使用O_DIRECT写入时,是否需要使无效caching读取?

在你的配置中有一个问题:你在两台服务器上都启用了SSI,因为

ssi on;

在http {}级别定义。 这导致SSI指令在第二个服务器{}中被扩展。 缓存在第一个服务器中的响应没有任何SSI指令(已经扩展了),因此它始终保持不变。

如果您希望包含的片段在每个请求中都是新鲜的,则必须仅在第一个服务器中启用SSI,例如:

proxy_cache_path /path/to/cache keys_zone=my_cache:20m; server { listen 80; server_name first.example.com; location / { proxy_pass http://127.0.0.1:81; proxy_cache my_cache; ssi on; } } server { listen 81; server_name second.example.com; location ~ ^/.+.PHP { fastcgi_pass 127.0.0.1:9000; } }

请注意, ssi on在第一个服务器中,以及proxy_cache my_cache 。 这样,Nginx将缓存后端响应和SSI指令,并且将在每个请求中重做SSI处理,如果需要的话,缓存包括单独的。

你只是one string等价的one string缓存或不缓存你需要创建测试页面,并加载PHP进程得到生成页面约2秒。 并输出图像和其他静态内容ob页….

ps你的结果不相关,因为你的服务器请求脚本和设置标题

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐