htaccess desabilitar o Wordpress reescrever regras para pasta e seu conteúdo

4

Eu tenho outro aplicativo PHP em uma pasta chamada app dentro da minha instalação do Wordpress, e eu preciso desabilitar todas as regras de reescrita do Wordpress para essa pasta e seu conteúdo. Então, quando eu vou para www.domain.com/app eu recebo minha página de aplicativo, em vez da página padrão do Wordpress 404.

Eu sei que isso é muito básico regras de reescrita do apache, e eu procurei por isso, tentei algumas coisas e não funcionou bem.

Quase esqueci, eu preciso fazer isso apenas editando o arquivo htaccess Wordpress. E o aplicativo tem seu próprio arquivo htaccess.

Obrigado.

EDITAR: conteúdo do htaccess

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

EDIT: Htaccess da aplicação

DirectoryIndex index.php
<FilesMatch "\.(php|inc)$">
Order allow,deny
deny from all
</FilesMatch>
<FilesMatch "(index.php|download.php)$">
Order allow,deny
allow from all
</FilesMatch>

Essas regras não fazem muito, basicamente negam o acesso a todos os tipos de arquivos PHP e INC , exceto index.php e download.php . Quais são os que o usuário precisa acessar, o resto deles são classes usadas internamente por PHP .

EDIT 3: Resolução:

Como se constata, não havia nada de errado com o Wordpress htaccess ou o aplicativo, depois de transformar o relatório de erros no servidor de hospedagem remota, o PHP relatou um arquivo corrompido, uma vez substituído, todos começaram a funcionar bem. Meus agradecimentos a Wietse Venema pela sugestão.

    
por Fábio Antunes 04.03.2011 / 16:18

1 resposta

5

O arquivo .htaccess padrão já suporta o comportamento desejado;

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

A mágica está nas linhas que começam com RewriteCond . Eles instruem o Apache a aplicar a regra RewriteRule . /index.php [L] (que significa "qualquer URL irá para index.php"), somente quando o URL não for um arquivo existente !-f ou o diretório existente !-d .

Portanto, isso deve funcionar por padrão. As regras de reconfiguração do Wordpress não se aplicam quando você tenta visitar um arquivo já existente.

    
por Wietse Venema 04.03.2011 / 16:55

Tags