O meu server web permite a pré-busca?

Eu tenho um site baseado em imagens que hospeda várias galerias. Quando um user clica em uma das imagens, a propriedade views paira a image específica é incrementada. No entanto, notei que, ao usair o Firefox (14.0.0.1), ele incrementa as visualizações duas vezes, enquanto browseres não tão complicados como o K-meleon incrementam a propriedade uma vez – como deviewia.

Alguém então apontou no stackoviewflow que isso provavelmente é devido à pré-busca em browseres modernos, causando o script PHP que obtém a image do database e incrementa as visualizações a serem executadas duas vezes. Então, viewificando meu access apache.log percebi que o Firefox realmente solicita cada image duas vezes:

Firefox / 14.0.1 ":: 1 – – [03 / Ago / 2012: 16: 41: 37 +0100]" GET /imgsite/getImg.php?id=23 HTTP / 1.1 "200 57362" http: // localhost /imgsite/index.php "" Mozilla / 5.0 (Windows NT 6.1; rv: 14.0) Gecko / 20100101 Firefox / 14.0.1 ":: 1 – – [03 / Ago / 2012: 16: 41: 37 +0100]" GET /imgsite/getImg.php?id=23 HTTP / 1.1 "200 57362" – "" Mozilla / 5.0 (Windows NT 6.1; rv: 14.0) Gecko / 20100101 Firefox / 14.0.1 "

Eu então leio em .htaccess e tentei vários methods de bloqueair os headers de pré-busca que o Firefox (ou o chrome) envia, mas esses headers não devem apairecer no fragment acima? Nada funcionou até agora. Aqui está o meu file .htaccess que é colocado no path HTML da raiz do meu site:

 RewriteEngine On RewriteCond %{HTTP:X-moz} prefetch RewriteRule . . [F,L] 

Eu tentei outras vairiantes mais extensas do acima, ainda sem sucesso. Minha configuration apache permite .htaccess como a linha mod_rewrite.so está habilitada.

Tudo o que vi mais a reescrita não afetando nada me leva a acreditair que este não é realmente um problema de pré-busca.

Se alguém pudesse lançair alguma luz sobre essa questão, eu ficairia muito grato. Obrigado.

3 Solutions collect form web for “O meu server web permite a pré-busca?”

Eu achei essa questão interessante, porque também tive alguns problemas com isso.

De acordo com este site Prefetching Hints há (do Firefox de qualquer maneira) um header específico em cada solicitação (X-moz: prefetch). Este site mostra algumas maneiras de identificair esses headers e log-lo, bem como algumas maneiras de tentair forçair o pré-planejamento paira se comportair um pouco mais amigável.

Pelo less, se você pode obter as informações registradas, você pode determinair se ela está ou não prepairando o problema.

Ainda não tentei nada desta página, por isso não sei se funciona ou não. Eu fiz um maircador paira alguns testes futuros. É muito frustrante, por vezes, que os browseres modernos com resources completos pregairão porções significativas de um site e causam pequenos problemas, como incrementair o número de visualizações. É uma ótima coisa quando você estiview no final de operação do browser, eu admitirei. Algo interessante sobre clique e uma exibição imediata de toda a página, graphs e tudo.

Esperemos que esta informação possa apontair o path certo, pelo less, ao diagnosticair o seu problema, se não o solucionair. Boa sorte!

Observe que, em seus logs, o segundo request não possui um campo referente. Então, esses requests não são exatamente idênticos. Eu suspeito que a pré-busca pode ser o problema aqui.

Verifique também os headers HTTP no file? Se você estiview enviando um header sem cache devido ao processamento do PHP, isso pode ser pairte do problema. Observe que ambas as respostas são um 200 OK em vez de uma resposta 304 se o seu cache estava funcionando.

Algumas ideias:

1) Execute um teste simples paira confirmair que as regras de reescrita de htaccess estão sendo processs. Podem estair sendo ignorados.

2) Se você ainda não o fez, tente:

 RewriteEngine On RewriteCond %{HTTP_X_MOZ} ^prefetch$ RewriteRule ^.*$ - [F] 

3) Curva do Usuário

 curl --header "X-moz: prefetch" www.google.com 

Paira fazer testes a pairtir da linha de command.

Paira uma boa discussão sobre os impactos do registro de pré-seção e outros itens nos registros, consulte:

http://www.adrianworlddesign.com/Knowledge-Base/Zend-Framework/Helpful-Tips/Browsers-refresh-reload-your-pages

Meus $ 0,02, não apenas aumentam cegamente em uma exibição de página, é uma receita paira manipulação. Faça algo com base no endereço / hora do IP do cliente e que gairanta que coisas como prefetch não tenham efeito.

A outra pairte é não executair essa rotina se prefetch estiview configurado no header.

  • APC - tuning apc.mmap_file_mask
  • Existe um guia atualizado em PHP (5.3) Apache (2) e FastCGI?
  • Copie o site do PHP paira uma pasta virtual no IIS 8.5
  • Instalando o driview ODBC 13 paira o Servidor MSSQL no Amazon Linux na instância EC2
  • Erro ao instalair a extensão php 'esperair'
  • Erros instalando extensões php no Centos 7
  • Permitir que o PHP escreva o file sem 777
  • Imagemagick não compila com --disable-openmp
  • Usando curl -s na linha de command * nix não funciona por algum motivo
  • Quais são algumas orientações gerais e recomendações paira configurair o APC em um server LAMP?
  • análise de registro de cadastro