Subdiretório dinâmico para VirtualDocumentRoot

1

Estou usando uma configuração do VirtualDocumentRoot em meu sistema de desenvolvimento, para que possa trabalhar facilmente em vários projetos sem atualizar os VirtualHosts durante todo o tempo.

Atualmente, parece que:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www
    VirtualDocumentRoot /var/www/%1
    ServerName everything.localhost
    ServerAlias *.localhost
</VirtualHost>

Para que eu possa acessar os diretórios abaixo / var / www, por exemplo chamando foobar.localhost.

O problema é que agora também tenho projetos que estão trabalhando com um diretório raiz de documento diferente, por exemplo, tem outro src, pub ou pasta pública no repositório, então eu quero usá-los, mas isso difere por projeto. Então a ideia era estender o VirtualDocumentRoot com outro nível:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www
    VirtualDocumentRoot /var/www/%1/%2
    ServerName sub.everything.localhost
    ServerAlias *.*.localhost
</VirtualHost>

Para que eu possa ligar para esse projeto, por exemplo, com src.foobar.localhost. Infelizmente, isso está em conflito com a regra anterior para que eu não consiga mais acessar os projetos "antigos" que não têm um subdiretório extra.

Existe uma maneira de lidar com esses dois VirtualHosts / VirtualDocumentRoots em uma configuração do Apache?

Uma ideia que eu já tinha era ter outro domínio de base, como localhost2 para os subdiretórios, então o ServerAlias só corresponderia a essa regra, mas essa não é a solução preferida.

    
por Tobias 19.06.2014 / 12:42

1 resposta

1

e o link simbólico do diretório raiz atual para o diretório vhost original?

ln -sTv /var/www/fullrepo-project.localhost/pub /var/www/project.localhost
    
por 19.06.2014 / 18:23