我在 Ubuntu 16.04 上运行 LAMP 服务器,这是典型的 LAMP 设置。我们有一个网站系列,它们都通过 sites-available 文件夹中的虚拟主机文件进行控制。
通过全局 apache.conf 文件处理网站的相当积极的缓存,并且有一个针对 php 的 opcache 解决方案。
一个网站遇到了一些问题,但缓存阻止我正确诊断。
最好在 website.conf 文件中,是否可以将 Apache 配置为仅忽略此网站的缓存?我想满足每个请求,并且我也希望在每个请求上从头开始重建 PHP(而不是在发生命中时从操作码缓存中提供服务,并且最好不必在每个 php 页面的顶部添加像 opcache_reset() 这样的函数,或者在 php.ini 文件中将其关闭)。
答案1
可以配置 apache 来忽略缓存在这些不同的情况下:
- 服务器配置 - 用于
httpd.conf
, - 虚拟主机,
- 目录 -
Directory, Location, Files, If, and Proxy
在服务器配置文件中的容器内使用, - .htaccess
在你的情况下选项 2采用以下格式CacheDisable url-string | on
:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
CacheDisable on # OR
CacheDisable "/foo_files" # OR
<Location "/foo">
CacheDisable on
</Location>
</VirtualHost>
来源:
https://httpd.apache.org/docs/2.4/mod/mod_cache.html#cachedisable