Pergunta

Eu estou tentando configurar um proxy cache reverso para anúncios gráficos (gif, jpg, swf) que servem. O proxy está funcionando bem e enviando o pedido para o servidor de origem, mas eu não consigo descobrir por que o conteúdo não está sendo armazenada em cache. Minha configuração atual está abaixo. O objetivo é armazenar em cache todos os pedidos que correspondem a / ca / ??URI prefixo. O servidor de origem está servindo os arquivos com URLs limpas, há extensões de arquivos, Cache-control max-age = 1 semana set nos cabeçalhos servidor de origem.

ProxyRequests Off
<Proxy *>
 Order deny,allow
 Allow from all
</Proxy>
<IfModule mod_disk_cache.c>
 CacheEnable disk /
 CacheRoot "/var/cache/mod_proxy"
 CacheDirLevels 3
 CacheDirLength 5
 CacheIgnoreCacheControl On 
</IfModule>

RewriteCond %{REQUEST_URI} ^/ca/*
RewriteRule ^/(.*)$ http://origin.webserver.com/$1 [P,L]

Atualmente, a única cache eu vi realmente acontecer é a de arquivos locais acessados ??nos servidores de proxy, eu estou olhando para o que eu estou sentindo falta de obter o conteúdo obtido a partir do servidor de origem para ser armazenada em cache.

Eu estou querendo saber se isso tem a ver com mod_cache não cache porque o conteúdo é obtido a partir do servidor de origem, e não um local no disco. Procurando uma maneira de forçar todos os pedidos correspondentes que prefixo para ser armazenada em cache.

Obrigado!

P.S. - Parece que eu estou tendo esta questão exata: http://mail-archives.apache.org/mod_mbox/httpd-users/200901.mbox/%3C497F6ED3.7080606@gmail.com%3E . Será verificando minhas permissões e passar por cima de depuração msgs ...

Foi útil?

Solução

Adicionando estas directivas parecia chutar o mecanismo de cache na engrenagem. Eu acho que tem a ver com a validade e cache-controle cabeçalhos como enviado do servidor de origem, já que estou servindo-se imagens com Symfony / PHP5 em vez de diretamente do sistema de arquivos.

<IfModule mod_disk_cache.c>
    CacheEnable disk /
    CacheRoot "/var/cache/mod_proxy"
    CacheDirLevels 3
    CacheDirLength 5
    CacheIgnoreCacheControl On
    CacheMaxFileSize 100000000
    CacheIgnoreNoLastMod On
    CacheMaxExpire 1209600
    CacheIgnoreQueryString On
</IfModule>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top