Por que meu balanceador de carga do Lightsail está falhando na verificação de integridade mesmo que o site esteja funcionando corretamente?
Estou usando um balanceador de carga do Amazon Lightsail para minha instância do Lightsail com uma pilha Bitnami. A verificação de integridade do balanceador de carga está falhando, mesmo que o site esteja funcionando corretamente.
Breve descrição
Para realizar uma verificação de integridade, o balanceador de carga do Lightsail verifica a resposta do URL http://ipaddress:80/healthcheckpath. Se o código de status for 200 OK, a verificação de integridade será aprovada. Você não pode personalizar essa verificação de resposta no balanceador de carga do Lightsail. Se sua instância aplicar o redirecionamento HTTPS, então o **http://ipaddress:80/healthcheckpath ** retornará o código de status de resposta 301 ou 302 em vez de 200 OK. Isso resulta em uma falha na verificação de integridade.
O mesmo problema pode ocorrer nas instâncias do WordPress Multisite porque essas instâncias redirecionam **http://ipaddress:80/healthcheckpath ** para http://ipaddress.nip.io/healthcheckpath por padrão.
Resolução
Observação: o caminho do arquivo depende se a pilha Bitnami usa pacotes nativos do sistema Linux (Abordagem A) ou uma instalação independente (Abordagem B).
Para identificar o tipo de instalação do Bitnami, execute o seguinte comando:
test ! -f "/opt/bitnami/common/bin/openssl" && echo "Approach A: Using system packages." || echo "Approach B: Self-contained installation."
As etapas que você usa para resolver esse problema dependem do seguinte:
- Você usou plug-ins de aplicativos do WordPress, como o Really Simple SSL, para configurar o redirecionamento.
- Você usou as regras de redirecionamento do servidor web para configurar o redirecionamento.
- Você está usando uma instância de pilha WordPress Multisite.
Você usou plug-ins de aplicativos do WordPress para configurar o redirecionamento
Crie um arquivo HTML na raiz do documento do seu site. Em seguida, modifique a configuração da verificação de integridade do balanceador de carga para adicionar o arquivo HTML como arquivo de verificação de integridade. Como os redirecionamentos no nível do aplicativo afetam somente os arquivos HTML que fazem parte do seu aplicativo original, você deve adicionar o arquivo HTML como o arquivo de verificação de integridade.
-
Navegue até a localização raiz do documento do seu site onde você armazena os arquivos do seu site:
Na pilha Bitnami na Abordagem A, a localização raiz do documento é /opt/bitnami/APPNAME/ (por exemplo, /opt/bitnami/wordpress).
Na pilha Bitnami na Abordagem B, a localização raiz do documento é /opt/bitnami/apps/APPNAME/htdocs (por exemplo, /opt/bitnami/apps/wordpress/htdocs).
Na pilha LAMP Bitnami, a localização raiz do documento é /opt/bitnami/apache2/htdocs. -
Faça upload de um arquivo HTML vazio ou execute o seguinte comando para criar o arquivo HTML vazio:
touch health.html
-
Abra o console do Lightsail.
-
Escolha Rede.
-
Selecione seu balanceador de carga.
-
Na guia Instâncias de destino, escolha Personalizar verificações de integridade.
-
Insira o caminho health.html e, em seguida, escolha Salvar.
-
Certifique-se de que http://ipaddress:80/health.html retorne a resposta 200 OK. Use o HTTP Header Checker no site da KeyCDN.
-
Aguarde alguns minutos e verifique se a verificação de integridade foi aprovada.
Você usou regras de redirecionamento do servidor web para configurar o redirecionamento
Adicione uma regra de exceção às regras de redirecionamento do servidor web para que somente os arquivos originais do site sejam redirecionados, mas não o arquivo de verificação de integridade.
-
Conclua as etapas de 1 a 7 na seção Você usou plug-ins de aplicativos do WordPress para configurar o redirecionamento.
-
Abra o arquivo do servidor web em que você adicionou as regras de redirecionamento HTTPS e adicione a seguinte linha antes da linha que começa com RewriteRule:
RewriteCond expr "! %{REQUEST_URI} -strmatch '*health.html’ "
Veja a seguir exemplos de regras de redirecionamento:
RewriteEngine On RewriteCond %{HTTPS} off RewriteCond expr "! %{REQUEST_URI} -strmatch '*health.html’ " RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI}
Adicione a linha anterior às regras nos seguintes locais:
A pilha Bitnami na Abordagem A: /opt/bitnami/apache2/conf/bitnami/bitnami.conf e qualquer arquivo que termine com -vhost.conf no diretório /opt/bitnami/apache2/conf/vhosts/.
A pilha Bitnami na abordagem B: /opt/bitnami/apache2/conf/bitnami/bitnami.conf. -
Reinicie o serviço web:
sudo /opt/bitnami/ctlscript.sh restart
-
Certifique-se de que http://ipaddress:80/health.html retorne a resposta 200 OK. Use este HTTP Header Checker no site da KeyCDN.
-
Aguarde alguns minutos e verifique se a verificação de integridade foi aprovada.
Você está usando uma instância de pilha WordPress Multisite
Para solucionar esse problema, realize as etapas a seguir:
-
Conclua as etapas de 1 a 7 na seção Você usou plug-ins de aplicativos do WordPress para configurar o redirecionamento.
-
Abra o arquivo /opt/bitnami/apache2/conf/vhosts/wordpress-vhost.conf e adicione a seguinte linha em # BEGIN nip.io redirection:
RewriteCond expr "! %{REQUEST_URI} -strmatch '*health.html' "
Veja a seguir um exemplo de regras com a linha adicionada:
# BEGIN nip.io redirection RewriteEngine On RewriteCond %{HTTP_HOST} ^([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})(:[0-9]{1,5})?$ RewriteCond expr "! %{REQUEST_URI} -strmatch '*health.html'" RewriteRule ^/?(.*) %{REQUEST_SCHEME}://%1.nip.io%2/$1 [L,R=302,NE] # END nip.io redirection
-
Reinicie o serviço web:
sudo /opt/bitnami/ctlscript.sh restart
-
Certifique-se de que http://ipaddress:80/health.html retorne a resposta 200 OK. Use este HTTP Header Checker no site da KeyCDN.
-
Aguarde alguns minutos e verifique se a verificação de integridade foi aprovada.
Conteúdo relevante
- feita há 6 diaslg...
- Resposta aceitafeita há 4 diaslg...
- feita há 6 diaslg...
- feita há 20 diaslg...
- AWS OFICIALAtualizada há um ano
- AWS OFICIALAtualizada há um mês
- AWS OFICIALAtualizada há 10 meses
- AWS OFICIALAtualizada há 2 anos