Esta mensagem de erro é proveniente de um recurso que foi adicionado ao Drupal 8 para proteger contra ataques de cabeçalho do host HTTP . O recurso também é descrito no registro de alterações que foi gerado para o patch.
Essencialmente, foi possível falsificar o cabeçalho do host HTTP para fins nefastos e induzir o Drupal a usar um nome de domínio diferente em vários subsistemas (principalmente na geração de links). Em outras palavras, o cabeçalho do host HTTP precisa ser considerado como entrada do usuário e não confiável.
Para combater isso, uma nova configuração, $settings['trusted_host_patterns']
foi adicionada ao Drupal 8 para configurar uma lista de nomes de host "confiáveis" dos quais o site pode ser executado. A configuração precisa ser uma matriz de padrões de expressão regular, sem delimitadores, representando os nomes de host dos quais você deseja permitir a execução.
Por exemplo, se você estiver executando seu site a partir de um único nome de host "www.example.com", adicione-o às suas configurações (geralmente encontradas em ./sites/default/settings.php
):
$settings['trusted_host_patterns'] = array(
'^www\.example\.com$',
);
Note-se a ^
, \.
e $
. Estas são a sintaxe do PCRE . Isso significa apenas que você deseja corresponder "www.example.com" com precisão, sem nada extra no começo e no final, e que os pontos devem ser tratados como pontos e não como caracteres curinga.
Se você estiver executando a partir de "example.com", use:
$settings['trusted_host_patterns'] = array(
'^example\.com$',
);
Se você precisar executar um site de vários domínios e / ou subdomínios, e não estiver fazendo o redirecionamento de URL canônico, sua configuração será mais ou menos assim:
$settings['trusted_host_patterns'] = array(
'^example\.com$',
'^.+\.example\.com$',
'^example\.org',
'^.+\.example\.org',
);
Isso permite que o site fique sem todas as variantes de example.com e example.org, com todos os subdomínios incluídos.
Depois de ajustar $settings['trusted_host_patterns']
o valor adequado, você poderá navegar no seu site novamente.
Você também pode verificar o status de suas configurações de host confiável na página de relatório de status, que é em admin / reports / status
Se você remover completamente a configuração, o mecanismo host confiável não será usado e você verá um erro na página do relatório de status. Além disso, seu site também pode estar vulnerável a ataques de cabeçalho de host HTTP.
Se você tiver essa configuração configurada e estiver vendo esta mensagem, provavelmente significa que você alterou a sintaxe da expressão regular. Nesse caso, pegue o primeiro exemplo, copie / cole nas suas configurações e edite-o para refletir o nome do host do qual o site é executado.