以下是 VirtualHost 条目的示例
<VirtualHost *:80>
ServerName domain.com
ErrorLog logs/domain.com-error_log
CustomLog logs/domain.com-access_log common
DocumentRoot "/var/www/srs/web"
DirectoryIndex index.php
Alias /sf /usr/share/pear/data/symfony/web/sf
<Directory "/usr/share/pear/data/symfony/web/sf">
AllowOverride All
Allow from All
</Directory>
<Directory "/var/www/srs/web">
AllowOverride All
Allow from All
</Directory>
</VirtualHost>
现在,我还有 6 个其他域需要以这种方式设置。它们都将共享一个 DcoumentRoot,因此我唯一需要设置的、每个域唯一的值是 ServerName 和 *Log 值。由于我处理这类事情时大多是复制粘贴,所以我准备要做的只是复制这个块 6 次并更改我需要的位。
那么,我至少可以提取目录条目并以某种方式使其全球化吗?
答案1
将您的目录节拉出您的 VirtualHost 容器之外,它就会执行您想要的操作。
<VirtualHost *:80>
ServerName domain.com
ErrorLog logs/domain.com-error_log
CustomLog logs/domain.com-access_log common
DocumentRoot "/var/www/srs/web"
DirectoryIndex index.php
Alias /sf /usr/share/pear/data/symfony/web/sf
</VirtualHost>
<VirtualHost *:80>
ServerName domain2.com
ErrorLog logs/domain2.com-error_log
CustomLog logs/domain2.com-access_log common
DocumentRoot "/var/www/srs/web"
DirectoryIndex index.php
Alias /sf /usr/share/pear/data/symfony/web/sf
</VirtualHost>
<Directory "/usr/share/pear/data/symfony/web/sf">
AllowOverride All
Allow from All
</Directory>
<Directory "/var/www/srs/web">
AllowOverride All
Allow from All
</Directory>