我有这样一个虚拟主机:
<VirtualHost *:80> Servername www.website.com DocumentRoot /path/to/application-1.2.1/client/app/ ErrorLog /var/log/apache2/logs/application.log </VirtualHost>
application
程序的名称在每次部署新版本时都会更改,例如下一个DocumentRoot将是:
DocumentRoot /path/to/application-1.2.2/client/app/
是否有可能使用通配符或类似的东西来创build虚拟主机:
DocumentRoot /path/to/application-*/client/app/
这样我就不必每次部署新版本的应用程序就改变虚拟主机了。
不,你不能在那里有一个通配符。
而是使用符号链接:
ln -s /path/to/application-1.2.2/client/app /path/to/application/client/app
并configuration读取
<VirtualHost *:80> Servername www.website.com DocumentRoot /path/to/application/client/app/ ErrorLog /var/log/apache2/logs/application.log </VirtualHost>
这有额外的好处,你可以保持旧版本在需要时快速回滚。
根据您的主要configuration,您可能需要添加
<Directory /path/to/> Options +FollowSymlinks </Directory>
到你的configuration,以及。