使用VirtualHost代理的Apache 2.4缓存

时间:2018-03-29 16:14:56

标签: apache tomcat caching proxy virtualhost

我想在Apache 2.4上为Tomcat上的网站激活缓存,并通过VirtualHost配置传递Apache。

这是我的apache2.config文件代码:

<VirtualHost *:80> 
  ServerName domain.com
  ServerAlias www.domain.com

  #Cache
  CacheEnable disk /
  CacheHeader on
  CacheIgnoreNoLastMod On
  CacheDefaultExpire 800
  CacheMaxExpire 64000
  ExpiresActive on

  ProxyPreserveHost On
  ProxyRequests Off

  ProxyPass / http://localhost:8084/Application/
  ProxyPassReverse / http://localhost:8084/Application/

</VirtualHost> 

缓存在我的本地计算机(Ubuntu)中运行,但不在生产服务器(Ubuntu Server)上运行。

基本上我用

检查缓存目录

ls -la / var / cache / apache2 / mod_cache_disk /

在我的本地机器上,我得到了许多具有正确日期的缓存文件,但在我的服务器上,该目录仍为空。

任何想法,谢谢

2 个答案:

答案 0 :(得分:1)

我发现了问题。基本上我没有启用&#34; cache_disk&#34;。我不明白为什么apache重新启动而不会给我一个错误。这就是我没想到的原因。无论如何,解决方案是

sudo a2enmod cache_disk

答案 1 :(得分:0)

  1. 是否启用了缓存模块?如果是这样,您将看到与
  2. 一起使用的那些指令名称

    httpd -L | grep -i cache

    1. 是否为缓存目录正确设置了权限?
    2. ls -lZ yourdir # check selinux getfacl yourdir # check for the account running the process

      1. 这些资源是否被授权缓存?运行curl命令并查找缓存标头(pragmacache-control