1 votes

Parametric Apache Virtualhost

J'ai un Virtualhost fait de cette façon :

<VirtualHost *:80>
        Servername www.website.com
        DocumentRoot /path/to/application-1.2.1/client/app/
        ErrorLog /var/log/apache2/logs/application.log
</VirtualHost>

application est le nom de l'application qui change à chaque fois que nous déployons une nouvelle version, ainsi par exemple le prochain DocumentRoot serait :

DocumentRoot /path/to/application-1.2.2/client/app/

Est-il possible de créer un serveur virtuel avec un caractère de remplacement ou quelque chose du genre ?

DocumentRoot /path/to/application-*/client/app/

Pour ne pas avoir à changer le serveur virtuel à chaque fois que je déploie une nouvelle version de l'application ?

5voto

Jenny D Points 26978

Non, vous ne pouvez pas avoir de joker ici.

Utilisez plutôt des liens symboliques :

ln -s /path/to/application-1.2.2/client/app /path/to/application/client/app

et faire en sorte que la configuration soit

<VirtualHost *:80>
        Servername www.website.com
        DocumentRoot /path/to/application/client/app/
        ErrorLog /var/log/apache2/logs/application.log
</VirtualHost>

Cela présente l'avantage supplémentaire de pouvoir conserver l'ancienne version pour un retour en arrière rapide en cas de besoin.

En fonction de votre configuration principale, vous devrez peut-être ajouter

    <Directory /path/to/>
        Options +FollowSymlinks
    </Directory>

à votre configuration, également.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X