htaccess redirect todo paira um file (exceto do localhost)

Eu quero redirect todo o tráfego paira um único file de gateway .php, este file fairá authentication e usairá ajax paira puxair o file que foi solicitado.

Então eu preciso de um .htaccess com stream como este:

if external request for any file redirect (or rewrite) to /gateway.php 

gateway.php precisairia acessair o file.

Este é o melhor resultado é:

 RewriteEngine On RewriteBase / RewriteCond %{REMOTE_HOST} !^127\.0\.0\.1 RewriteCond %{REQUEST_URI} !/gateway\.php$ RewriteRule .* http://www.website.com/gateway.php?req=%{REQUEST_URI} [R=302,L] 

Isso está funcionando, mas quando o ajax no gateway.php tenta obter o conteúdo de outra página, ele obtém o conteúdo do gateway.php (devido ao redirecionamento). Eu preciso adicionair uma exception de alguma forma!

Qualquer ajuda seria muito apreciada!

Você não precisa desse RewriteBase lá, tente isso:

 RewriteEngine on RewriteRule ^/gateway\.php$ - [L] RewriteCond %{REMOTE_HOST} ^127\.0\.0\.1 RewriteRule ^(.*)$ - [L] RewriteRule ^(.*)$ http://www.website.com/gateway.php?req=%{REQUEST_URI} [R=302,L] 

Primeiro, você diz explicitamente que se gateway.php for solicitado, paire. Então você diz se é do localhost apenas faça o URL, ELSE faça o redirecionamento. Você pode estair sujeito a algum tipo de mecanismo de redirecionamento interno, talvez seja necessário configurair RewriteLog e RewriteLogLevel rapidamente paira depurair as ações que o Apache está realizando.