Eu tive a mesma mensagem de log no meu servidor web Apache. Há dois lados para isso: por que o redirecionamento HTTP 301 está ocorrendo e por que não há uma solicitação HTTP subsequente registrada após o redirecionamento HTTP 301.
No meu servidor web, tenho o encaminhamento habilitado de http para https, junto com o encaminhamento de subdomínio de qualquer subdomínio para o subdomínio correto. Isso significa que qualquer solicitação http ou qualquer solicitação no subdomínio errado, seja para um recurso válido ou inválido, primeiro passará por um redirecionamento HTTP 301. Por exemplo, quando eu acesso http://<mydomain>/js/czjl.js
, o Apache registra um HTTP 301 devido ao encaminhamento da solicitação http para https primeiro, mas acessar https://<mydomain>/js/czjl.js
registrará um HTTP 404.
A maneira como a chamada da Web para http://<mydomain>/js/czjl.js
é criada também determina se apenas um HTTP 301 é registrado ou se um HTTP 301 é registrado imediatamente seguido por um HTTP 404. Por exemplo, usar este comando wget
aciona um HTTP 301 no meu servidor da web registra sem um HTTP 404 subseqüente:
wget --max-redirect=0 http://<mydomain>/js/czjl.js
Se eu deixar de fora a opção --max-redirect=0
, os logs exibirão o HTTP 301 seguido por um HTTP 404. No entanto, ao ignorar redirecionamentos, a solicitação do wget foi atendida após obter a resposta HTTP 301 do servidor da web. Eu suspeito que esses usuários finais estão usando uma opção similar "sem redirecionamentos" em suas chamadas pela web, o que resulta no ocasional HTTP 301 para um recurso inexistente. Caso contrário, nossos servidores da web teriam registrado um HTTP 404 após o HTTP 301.