Apache-2.2

如何通過 cloud-config 配置 apache?

  • June 8, 2016

我們有一個 cloud-config 腳本,可以在創建後立即在伺服器上執行一些工作。(數字海洋水滴)

我希望腳本修改 apache 的預設行為,將 /var/www 目錄的AllowOverride設置為All (預設值為 None)

要手動執行此操作,我只需將 apache 配置文件 (/etc/apache2/apache2.conf) 更改為以下值。

<Directory /var/www/>
AllowOverride All

但是,我想以某種方式使用 cloud-config自動進行更改。

有一個更好的方法嗎?

(注意:我不想使用write_files指令簡單地用我們自己的自定義版本覆蓋整個 apache2.conf 文件,因為擔心與未來的 apache 版本不兼容)

假設您不想使用像 chef 這樣的完整配置管理系統,您可以將其添加到runcmd:列表中:

- sed -i '/<Directory \/var\/www\/>/ { N; N; s/AllowOverride None/AllowOverride All/ }' /etc/apache/sites-availabl/default

問題是這些簡單的更改增加了數量和復雜性,最後你應該使用 chef。

引用自:https://serverfault.com/questions/782591