0

コンピューターで新しいプロジェクトをセットアップするためのスクリプトを書いています。

私がやりたいことの1つは、仮想ホストを自動的にセットアップすることです。

ファイル自体は非常に単純です

ファイルを呼び出す必要があり、次のファイルが<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>

私が疑問に思うのは、スクリプトにそのコードを含めて、ファイルに1行ずつ書き出す必要があるのか​​、それとも、コピーしてプレースホルダーの代わりに検索するサイト利用可能なフォルダーにダミーファイルを置くべきなのかということです。

4

2 に答える 2

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
于 2013-02-27T13:04:19.207 に答える
1

どちらも実行可能なアプローチです。

これをテンプレートとして使用すると、変更が必要な場合に簡単に読みやすくなります。ただし、ヒアドキュメントとして bash スクリプトに保持することも同様に機能します。

結局のところ、それはあなたの好みが何であるかに依存します。

于 2013-02-27T12:59:50.700 に答える