Eu tenho um site pequeno que é servido pelo Apache (não posso colocar o Nginx na frente nem mudar o Apache para nada), e ele está configurado para servir o mesmo site por http e https (não há redirecionamentos http-> https, então até agora, as versões http e https são veiculadas em paralelo).
O que eu preciso é configurar .htaccess
o mesmo URI via http e via https para servir arquivos de texto diferentes?
Como http://example.com/proto.txt
diz "O site acabou por http", enquanto https://example.com/proto.txt
dizia "O site foi exibido por https".
apache-2.4
https
http
htpasswd
Kevin M
fonte
fonte
RewriteRule
em sua.htaccess
condição de veiculação em https.<VirtualHost>
s diferentes . Então, basta configurar um robots.txt diferente em um deles. Em torno de:RewriteRule ^/robots.txt$ /path/to/alternative/robots.txt [L]
Respostas:
Use um alias
Crie dois arquivos, robots.txt e robots_http.txt e adicione-os ao seu http VirtualHost:
fonte
Se você não puder ou não alterar a configuração "principal" do Apache, mas precisar fazê-lo em um
.htaccess
arquivo, poderá usar aRewriteRule
com aRewriteCond
que verifica HTTPS.Algo ao longo das linhas de:
provavelmente deve funcionar (eu não testei).
Observe que isso se baseia no Apache executando a terminação HTTPS. Se a finalização do HTTPS for feita em um proxy reverso antes dele, a condição provavelmente será diferente (e dependerá da configuração do proxy reverso e do Apache).
fonte