É possível adicionar uma variável aleatória à querystring usando mod-rewrite?

1

Estamos tendo um problema muito estranho com um proxy que um cliente usa.

Em suma, o seu proxy está armazenando em cache informações que não devem ser armazenadas em cache. Temos a informação apropriada no cabeçalho que diz ao servidor proxy para não armazenar em cache E é sobre SSL, mas ainda está acontecendo.

Eu posso evitar isso / remediar isso anexando uma variável aleatória ao final de sua querystring na URL.

Por exemplo:

/information.php pode mostrar informações armazenadas em cache, enquanto /information.php?randomvariable=12345 não.

Existe uma regra de reescrita mod que acomoda algo assim?

Obrigado!

Editar -

Por solicitação do Squillman, aqui estão os metadados que enviamos para o armazenamento em cache (eu omitido, são metadados, não informações do cabeçalho HTTP):

<meta http-equiv="CACHE-CONTROL" CONTENT="NO-CACHE">
<meta http-equiv="PRAGMA" CONTENT="NO-CACHE">
<meta http-equiv="Expires" content="Mon, 26 Jul 1997 05:00:00 GMT"/>
<meta http-equiv="Pragma" content="no-cache" />

Espero que isso ajude! Obrigado.

Editar 2 -

Eu implementei uma correção no nível do aplicativo. Eu adiciono uma variável aleatória (seed = random md5) à string de consulta para cada solicitação. Está sujo - mas funciona.

Vou postar uma atualização assim que descobrir por que esse problema está acontecendo. Obrigado pelas respostas!

    
por Ian P 26.02.2010 / 19:47

2 respostas

1

Algumas perguntas:

  • Tem certeza de que é o proxy que está fazendo o cache?
  • Se sim, o que você fez para confirmar isso?
  • Você sabe qual produto proxy o cliente está usando?

O fato de estar passando por SSL significa que o proxy não deve armazená-lo em cache. Período (desculpe, perdi o bit SSL antes de postar meu comentário). Se for um produto proxy de grande nome, então suspeito que seja realmente o cliente se comportando mal.

Não tenho certeza se é possível em mod_rewrite. Você não poderia simplesmente gerá-lo dentro do PHP?

    
por 26.02.2010 / 20:22
0

mod_rewrite tem um MapType de rnd que pode ser capaz de fazer o que você quiser.

Veja esta página sob texto simples aleatório.

    
por 26.02.2010 / 21:22