nginx - Pagespeed 读取缓存清理时间戳 /var/cache/pagespeed/!clean!time! 失败。进行额外的缓存清理以确保安全

在运行托管在云中的无状态 docker 容器的 nginx pagespeed 上偶然发现以下错误。在本地测试时,部署后我没有收到错误,几乎每次请求后都会记录错误。

2022-05-14 22:05:03.316 EAT2022/05/14 19:05:03 [warn] 14#50: [ngx_pagespeed 1.13.35.2-0] Failed to read cache clean timestamp /var/cache/pagespeed/!clean!time!. Doing an extra cache clean to be safe.
Default
2022-05-14 22:05:22.935 EAT2022/05/14 19:05:22 [warn] 14#50: [ngx_pagespeed 1.13.35.2-0] Failed to read cache clean timestamp /var/cache/pagespeed/!clean!time!. Doing an extra cache clean to be safe.
Default
2022-05-14 22:05:25.775 EAT2022/05/14 19:05:25 [warn] 14#50: [ngx_pagespeed 1.13.35.2-0] Failed to read cache clean timestamp /var/cache/pagespeed/!clean!time!. Doing an extra cache clean to be safe.
Default
2022-05-14 22:05:31.825 EAT2022/05/14 19:05:31 [warn] 14#50: [ngx_pagespeed 1.13.35.2-0] Failed to read cache clean timestamp /var/cache/pagespeed/!clean!time!. Doing an extra cache clean to be safe.
Default
2022-05-14 22:05:32.419 EAT2022/05/14 19:05:32 [warn] 13#52: [ngx_pagespeed 1.13.35.2-0] Failed to read cache clean timestamp /var/cache/pagespeed/!clean!time!. Doing an extra cache clean to be safe.
Default
2022-05-14 22:05:35.767 EAT2022/05/14 19:05:35 [warn] 14#50: [ngx_pagespeed 1.13.35.2-0] Failed to read cache clean timestamp /var/cache/pagespeed/!clean!time!. Doing an extra cache clean to be safe.
Default
2022-05-14 22:05:37.443 EAT2022/05/14 19:05:37 [warn] 14#50: [ngx_pagespeed 1.13.35.2-0] Failed to read cache clean timestamp /var/cache/pagespeed/!clean!time!. Doing an extra cache clean to be safe.
Default
2022-05-14 22:05:43.798 EAT2022/05/14 19:05:43 [warn] 14#50: [ngx_pagespeed 1.13.35.2-0] Failed to read cache clean timestamp /var/cache/pagespeed/!clean!time!. Doing an extra cache clean to be safe.
Default
2022-05-14 22:05:46.655 EAT2022/05/14 19:05:46 [warn] 14#50: [ngx_pagespeed 1.13.35.2-0] Failed to read cache clean timestamp /var/cache/pagespeed/!clean!time!. Doing an extra cache clean to be safe.
Default
2022-05-14 22:05:49.654 EAT2022/05/14 19:05:49 [warn] 14#50: [ngx_pagespeed 1.13.35.2-0] Failed to read cache clean timestamp /var/cache/pagespeed/!clean!time!. Doing an extra cache clean to be safe.

正如您所看到的,几乎在每个请求之后都会记录错误......一切正常,但这个日志很烦人,意味着有些事情是不对的。

回答1

什么问题

运行 nginx 的用户无法写入这些目录。

导致错误的配置。

pagespeed FileCachePath "/var/cache/pagespeed/";
pagespeed CreateSharedMemoryMetadataCache "/var/cache/pagespeed/" 102400;

解决方案

  • 创建目录 v3
  • 创建目录 shm_metadata_cache
  • 创建文件 !clean!time!
...

RUN mkdir -p /var/cache/pagespeed/shm_metadata_cache && mkdir -p /var/cache/pagespeed/v3 && touch /var/cache/pagespeed/!clean!time!
...

授予目录和文件的所有权限

...

RUN chmod 777 /var/cache/pagespeed/shm_metadata_cache && chmod 777 /var/cache/pagespeed/v3 && chmod 777 /var/cache/pagespeed/!clean!time!
...

在此处查看有关此问题的更多信息:

https://github.com/apache/incubator-pagespeed-ngx/issues/1516

相似文章

javascript - jQuery 的多重滚动功能

对于多滚动功能,我需要一个jQuery解决方案。一般来说,我想像https://alvarotrigo.com/multiScroll/这样的东西,但它应该与两个以上的列一起工作。这就是基本布局的样子...

powershell - Powershell: 传递的数组返回 $true

我很确定我在这里有一些语法错误,但我找不到它。我在这里写了这个小脚本来查找文件夹中的一些文件-我想要所有没有$excludeList中的某些术语的文件路径,但我的Contains-Function总是...

随机推荐

最新文章