Estou procurando fazer isso
<VirtualHost *>
ServerName myDomain.com
DocumentRoot /var/www/myDomain
<Directory /var/www/myDomain>
Rewrite on
RewriteRule ^blog/(.*)$ /var/www/myBlog/$1 [L]
</Directory>
</VirtualHost>
Então http://www.meuDomínio.com/blog/irá ler arquivos de um diretório diferente. O procedimento acima não funcionará, como posso fazer isso sem mover os arquivos?
Responder1
Não há necessidade do usuário mod_rewrite para isso. Aliasé mais adequado.
# Alias: Maps web paths into filesystem paths and is used to
# access content that does not live under the DocumentRoot.
Alias /blog /var/www/myBlog
Se você quiser alterar as configurações apenas do seu blog, adicione umdiretiva de localização.
<Location /blog>
Allowoverride All
</Location>
Responder2
Faça isso deste modo:
<VirtualHost *>
ServerName myDomain.com
DocumentRoot /var/www/myDomain
Alias /blog/ /var/www/myBlog/
</VirtualHost>
Responder3
Location
tags são apenas um contêiner genérico para diretivas do Apache, então use-as para 'envolver' tudo o que você deseja aplicar à seção de 'visão externa' do site. Muito útil se você estiver extraindo conteúdo de vários diretórios físicos para uma estrutura maior, você pode aplicar o mesmo conjunto de regras a todos eles, em vez de ter várias Directory
entradas
Alias
diretiva é um redirecionamento simples, ótimo para caminhos longos que aparecem como ponteiros curtos e organizados.
DocumentRoot
A diretiva define o principal diretório de conteúdo da web.
Todos eles lidam com diretórios, mas são um pouco diferentes. A localização serve principalmente para lidar com o que eu chamaria de 'visualização da web' - como ela é visível do lado de fora. Directory serve para a 'visão física' de como lidar com diretórios reais no sistema de arquivos. Se o conteúdo de um diretório for exibido como um URL, não haverá diferença funcional entre eles.
No entanto, uma vez que você começa a 'compor' vários diretórios, servindo-os a partir de vários URLs que não refletem necessariamente a hierarquia do sistema de arquivos, você precisa misturar e combinar todas essas diretivas para obter o efeito desejado. Só porque duas diretivas podem se comportar da mesma forma em uma situação, não significa que se comportarão da mesma maneira em outra.