我正在编写一个脚本来在我的计算机上设置新项目,
我想要做的一件事就是让它为我自动设置虚拟主机。
文件本身很简单
该文件应该被称为<project>.testfox.dev.conf
并且应该包含
<VirtualHost *:80>
DocumentRoot "/var/www/work/<project>"
ServerName <project>.testfox.dev
<Directory "/var/www/work/<project>">
allow from all
Options +Indexes
</Directory>
ErrorLog /var/log/apache2/<project>.error.log
LogLevel error
TransferLog /var/log/apache2/<project>.access.log
</VirtualHost>
我想知道的是,我应该在我的脚本中使用该代码并将其逐行写入文件,或者我应该在sites-available文件夹中有一个虚拟文件,我将其复制,然后搜索替换占位符?
答案 0 :(得分:4)
最灵活的方法是将其作为模板(作为单独的文件或HEREDOC),逐行编写会使将来很难修改。
HEREDOC方法更容易实现,因为您可以使用变量插值:
cat >$PROJECT.testfox.dev.conf <<EOF
<VirtualHost *:80>
DocumentRoot "/var/www/work/$PROJECT"
ServerName $PROJECT.testfox.dev
<Directory "/var/www/work/$PROJECT">
allow from all
Options +Indexes
</Directory>
ErrorLog /var/log/apache2/$PROJECT.error.log
LogLevel error
TransferLog /var/log/apache2/$PROJECT.access.log
</VirtualHost>
EOF
答案 1 :(得分:1)