nginx php缓存失效怎么解决

avatar
作者
筋斗云
阅读量:0

Nginx 和 PHP 缓存失效的问题可以通过以下方法解决:

  1. 调整 Nginx 配置文件

在 Nginx 配置文件中,找到 location 部分,增加或修改 expiresadd_header 指令。例如:

location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {     expires 30d;     add_header Cache-Control "public, no-transform"; } 

这将使得静态资源在 30 天内有效,并添加缓存控制头。

  1. 修改 PHP 脚本

在 PHP 脚本中,使用 clearstatcache() 函数清除缓存。例如:

<?php // 清除 PHP 缓存 clearstatcache(); ?> 

你还可以在脚本开头添加以下代码来禁用 PHP 缓存:

<?php // 禁用 PHP 缓存 ini_set('apc.enable_cli', 0); ini_set('opcache.enable', 0); ?> 
  1. 修改 PHP 配置文件(php.ini)

在 PHP 配置文件(php.ini)中,找到以下设置并进行调整:

  • opcache.enable:将其设置为 0 以禁用 OPCache。
  • apc.enable_cli:将其设置为 0 以禁用 APCu(如果已安装)。
  1. 重启 Nginx 和 PHP-FPM 服务

在修改配置文件后,确保重启 Nginx 和 PHP-FPM 服务以使更改生效。具体命令取决于你的系统环境。

通过以上方法,你应该能够解决 Nginx 和 PHP 缓存失效的问题。如果问题仍然存在,请检查其他可能影响缓存的因素,如浏览器设置、代理服务器等。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!