Redirecionar vários domínios para subpastas e ocultar a subpasta da URL

2

Eu sentei dois hosts virtuais no mesmo ip e na mesma raiz do documento com o Apache, porque eu quero usar arquivos e conteúdos compartilhados na raiz do documento.

Eu quero que meu segundo site aponte para uma subpasta da raiz do documento

http://example.com Loads http://example.com/subfolder

Eu tentei várias regras de reescrita no .htaccess que todos eles podem redirecionar, mas manter a subpasta na URL, o que eu não gosto, quero dizer que a URL seria

 http://example.com/subfolder

enquanto eu quero

 http://example.com

estes são o que eu tentei

RewriteCond %{HTTP_HOST} ^(www.)?example.com$   
RedirectMatch ^/$ http://example.com/subfolder

OR

RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteRule ^(.*)$ /subfolder/$1 [L]

o segundo também dá um 500 Internal Server Error, o que devo fazer?

    
por Ahmad 21.02.2014 / 10:05

2 respostas

5

O que você deseja fazer não é redirecionar, mas sim reescrever a consulta com RewriteRule. Então deveria ser assim:

RewriteCond %{HTTP_HOST} ^(www.)?example1.com$   
RewriteRule !^subfolder1/ subfolder1%{REQUEST_URI} [L]
RewriteCond %{HTTP_HOST} ^(www.)?example2.com$   
RewriteRule !^subfolder2/ subfolder2%{REQUEST_URI} [L]

F.ex. A consulta link será tratada pelo Apache como se fosse uma consulta link . Altere o domínio nessa consulta e o arquivo será exibido a partir da subpasta2.

Durante o teste da minha solução, também encontrei isso, bem semelhante ao seu problema: A solicitação excedeu o limite de 10 redirecionamentos internos devido ao provável erro de configuração.?

    
por 21.02.2014 / 11:06
1

O termo "Redirecionar" significa que seu servidor informa ao navegador para ir buscar outra página em vez da que solicitou. Quando o navegador faz isso, ele também atualiza o caminho na barra de localização.

Para ocultar o novo local, você precisa usar mod_rewrite . Esse é um módulo que examinará o que o servidor pede e o traduz para um lugar diferente no servidor, sem emitir um redirecionamento.

    
por 21.02.2014 / 10:11