O host virtual Apache permite NÃO substituir a permissão do servidor

O host virtual Apache permite NÃO substituir a permissão do servidor

Estou rodando o Apache 2.4 e de acordo com a documentação que encontrei no site do apache (http://httpd.apache.org/docs/current/sections.html), na seção "Como as seções são mescladas", diz que as configurações do host virtual devem substituir as configurações do servidor.

Eu tenho um regex de configuração do servidor filesmatch para impedir o acesso público a arquivos importantes do wordpress usando a lógica "ordenar negar, permitir":

<FilesMatch "wp-login\.php|xmlrpc\.php|admin-ajax\.php">
   Include conf/global_acl.conf
</FilesMatch>

Então, no meu host virtual, tenho outra correspondência de arquivos para permitir acesso específico a determinados arquivos para ativar um plugin wordpress:

<FilesMatch "^(xmlrpc|wp-trackback)\.php$">
   Order Deny,Allow
   Allow from wordpress.com
   Allow from 123.123.123.123
</FilesMatch>

Meu objetivo é fazer com que o processo de permissão de configuração do servidor seja herdado pelo host virtual e, em seguida, tenha as diretivas de permissão adicionais analisadas pelo host virtual. Não parece estar funcionando. Se eu modificar o nível do servidor removendo o arquivo xmlrpc, o host virtual funcionará.

EDITAR

Para esclarecer a confusão, meu problema é que, no host virtual, estou sendo negado, embora esteja usando o IP 123.123.123.123. Espero que as entradas da lista de permissões da configuração do servidor sejam herdadas pelo host virtual. Em seguida, ter permissões adicionais na lista de permissões na configuração do virtualhost. Eu tenho um DENY FROM ALL no topo da configuração do meu servidor.

Alguma idéia do que está acontecendo? Desde já, obrigado!

Responder1

Uma mudança feita no 2.4 foi a substituição da sintaxePermitir depelo novoExigir tudo concedidoe semelhantes. Verdocumento de atualização do apacheseçãoControle de acesso.

Existe um módulo de compatibilidade que você pode usar para evitar alterações. Se você utilizá-lo, e optar Order Deny,Allowpor não possuir Denyextratos, todos os acessos serão permitidos (vercompatibilidade com apache: Pedido).

Portanto, use Order Allow,Denyou adicione um arquivo Deny from all.

informação relacionada