.htaccess para negar acesso à maioria dos arquivos xml

2

Recentemente tive um site do Joomla hackeado, então estou tentando endurecer o site um pouco. Há uma seção no .htaccess recomendado que restringe o acesso externo aos arquivos xml que acompanham as extensões. No entanto, ele também impede que meu arquivo sitemap.xml seja acessado.

Como faço para permitir um determinado arquivo mantendo o resto?

aqui está o código padrão:

<Files ~ "\.xml$">
 Order allow,deny
 Deny from all
 Satisfy all
</Files>

e minha modificação que causou um erro 500:

<Files ~ "(?!sitemap)\.xml$">
 Order allow,deny
 Deny from all
 Satisfy all
</Files>
    
por CEich 29.07.2010 / 12:32

3 respostas

1

A linha FilesMatch tem um "<" extra. Deve ser:

<FilesMatch "(?!sitemap)\.xml$">
    
por 06.02.2011 / 05:24
3

Você deve usar <FilesMatch> conforme documentado aqui

Além disso, acho que sua regex deve ser (?<!sitemap)\.xml$ . Assim:

<FilesMatch "(?<!sitemap)\.xml$">
   Order allow,deny
   Deny from all
</FilesMatch>
    
por 29.07.2010 / 14:52
0

Eu finalmente decidi não mexer com o regex.

Eu adicionei:

<Files ~  "sitemap\.xml$">
  Order allow,deny
  Allow from all  
</Files>

depois e funciona como um encanto.

    
por 31.07.2010 / 09:11