Atualização: o problema Drupal # 1796596 foi confirmado a partir do redirecionamento 1.0-rc2 (junho de 2015). A solução correta para esse problema agora é atualizar para a versão estável mais recente do módulo Redirect e executar as atualizações do banco de dados. Quaisquer redirecionamentos circulares que você tiver serão limpos com segurança.
Esse problema ocorreu devido a um erro no módulo de redirecionamento. Você o aciona alterando o URL de uma página (ou talvez apenas o título, se estiver usando o pathauto) e depois alterando-o para o que costumava ser.
Por exemplo, digamos que eu tinha uma página chamada "empresa" e alterei o título para "Nossa empresa" (que alterou o alias do URL para nossa empresa). Então decidi que realmente preferia a primeira maneira, então editei o nó novamente e alterei o título novamente para "Empresa". Nesse momento, a mensagem de erro " Ops, parece que essa solicitação tentou criar um loop infinito. Não permitimos isso aqui. Somos um site profissional! " Começaria a aparecer na página da empresa.
Existem três maneiras de corrigir isso, dependendo do que for mais fácil para você. Eles variam em dificuldade / bravura de cima para baixo.
O método Drupal / PHP
Há um longo bug do Drupal sobre o assunto: Edição nº 1796596 e há um bom patch de trabalho que corrige o problema no comentário # 124 .
Esperamos que esta correção seja confirmada em breve no módulo Redirecionar para download. No entanto, já faz mais de um ano, sem nenhum sinal de progresso nessa frente.
O método SQL
A correção mais rápida para o problema é com uma consulta SQL ao banco de dados, com algo como abaixo. TENHA CUIDADO e tente apenas esse método se você souber o que está fazendo - tente primeiro uma cópia de desenvolvimento do site e verifique se você tem um backup e teste as alterações logo depois, caso precise reverter. Seja extremamente cuidadoso e teste a primeira consulta muito bem se você estiver usando o i18n ... Execute a primeira consulta para mostrar o que seria excluído e a segunda para realmente excluir.
--Show records to be deleted:
SELECT r.rid, r.language, r.source, r.redirect
FROM redirect r INNER JOIN url_alias u ON r.source = u.alias
AND r.redirect = u.source AND r.language = u.language;
--Delete redirects shown in above query:
DELETE r FROM redirect r INNER JOIN url_alias u ON r.source = u.alias
AND r.redirect = u.source AND r.language = u.language;
Se você não sabe aplicar patches ou executar consultas SQL, precisará corrigir o problema manualmente. Não se preocupe, isso é realmente muito fácil de fazer (mas demorado em comparação com outros métodos):
O método manual:
Para cada uma das páginas em que a mensagem de aviso foi exibida:
- Edite a página
- Role até a parte inferior do formulário de edição
- Anote o URL principal da página. É mostrado abaixo de "Configurações do caminho do URL", por exemplo, "Alias: empresa" significaria que o URL da página é "empresa". Você pode clicar em "Configurações do caminho do URL" para visitar sua seção e confirmar o alias do URL, se não tiver certeza.
- Agora clique em "URL redireciona". Os redirecionamentos para a página atual serão mostrados. Haverá pelo menos um redirecionamento igual ao alias do URL que você anotou na etapa 3. É possível que mais de um redirecionamento nesta lista corresponda ao alias do URL.
- Exclua todos os redirecionamentos iguais ao alias da URL. Esses são os dados do problema que estão causando o loop e a mensagem de erro a ser exibida.
- Quando não houver mais redirecionamentos em "URL redirecionados" que correspondam exatamente ao alias de URL da página do problema nas configurações do caminho da URL, a mensagem de erro desaparecerá.