Exceção do HSQ do Apache para alguns hosts virtuais

6

Na seção de configuração global do Apache 2.2.15, eu tenho o seguinte (por recomendação )

<IfModule mod_headers.c>
Header add Strict-Transport-Security "max-age=15768000;includeSubDomains" env=HTTPS
</IfModule>

Eu gostaria de adicionar este cabeçalho somente quando o pedido NÃO for para um host específico (dev.host.com). Que diretiva eu uso para fazer cabeçalho add ocorrer? somente quando não é para um host específico?

PS: A segunda parte desta questão foi movida .

    
por Gaia 22.09.2014 / 22:55

2 respostas

5

  1. Se você incluir apenas a diretiva IfModule em uma diretiva VirtualHost para x.x.x.x: 443, ela só se aplicará a esse VirtualHost e só se aplicará ao protocolo https.

  2. Você poderia tentar a diretiva

    <If "%{HTTP_HOST} = 'www.dev.domain.com'">
        <IfModule mod_headers.c>
            Header unset Strict-Transport-Security
            Header always set Strict-Transport-Security "max-age=0;includeSubDomains"
        </IfModule>
    </If>
    
por 23.09.2014 / 23:33
1

No Apache 2.2, você provavelmente pode jogar com algo como abaixo.

  • Defina um env para identificar casos gerais e excluir casos específicos:

    SetEnvIf HTTPS do_work_on_headers    
    SetEnvIf Host "^www.myexcludedhostname.tld$" !do_work_on_headers
    
  • depois, configure os cabeçalhos:

    <IfModule mod_headers.c>
        Header add Strict-Transport-Security "max-age=15768000;includeSubDomains" env=do_work_on_headers
    </IfModule>
    
por 11.10.2014 / 10:52