ansible
2017-01-03 40 views 0 likes 
0

我想在我的apache配置文件中使用ansible替換<VirtualHost *:80><VirtualHost *:443>。我應該怎麼做?下面我試過,但沒有幫助:用於Apache VirtualHost行的Ansible正則表達式

- name: Enable SSL port 
    replace: dest="/etc/apache2/sites-enabled/000-default.conf" 
      regexp='^<VirtualHost *:80>' 
      replace='<VirtualHost *:443>' 
    become: true 

回答

1

它不工作,因爲*(正則表達式的重複標記),在regexp。你應該\逃脫它的*字符在目標文件匹配:

regexp='^<VirtualHost \*:80>' 

但是:

  • 這是相當麻煩的使用Ansible的replace模塊編輯Apache的配置文件。 Apache已經使您可以輕鬆地將配置放在單獨的文件中,自動讀取和組合它們。改爲使用copytemplate;

  • 沒有配置文件直接保存到sites-enabled,他們應存放在sites-availablesites-enabled(它可能不是怎麼了你,但是這是Apache的a2ensitea2dissite命令)符號鏈接。

+0

Thanks @techraf。它幫助了我! –

相關問題