ansibleを使用してnginx設定を変更するには?

ansibleを使用してnginx設定を変更するには?

SSL証明書を含むWebサイトを追加して、実行中のURLにリダイレクトしたいと思いますnginx-server。各Webサイトに設定を追加してnginx/conf.d/newsite.confから再起動したいのですが、nginxより良い方法がある可能性があると思いましたansible

私の考えにはこれが必要だと思います。

server {
        listen 80;
        listen 443 ssl;
        server_name www.newsite.com newsite.com;
        ssl_certificate     /etc/nginx/ssl/newsite.com_ssl_certificate.cer;
        ssl_certificate_key /etc/nginx/ssl/newsite.com_private_key.key;
        return 301 $scheme://www.newdomain.com$request_uri;
}

リモートシステムでこのconfを生成し、ansibleを使用してキーと証明書をアップロードしたいと思います。

ベストアンサー1

次の簡単なルートで行くことができます。

  • コピーを使用して配列変数を作成し、設定を繰り返します。

     files:
     - name: my_cool_config.conf
       path: /etc/nginx/conf.d/
       content: |
         Hey Content here!
    
  • あるいは、ファイルテンプレートを作成するためにJinjaのテンプレートを使用することもできます(しかしこれは少し過剰だと思います)。

nginxファイルが提供された後に再ロードする必要がある場合は、通知とハンドラーを追加してサービスを再起動/再ロードしてください。

おすすめ記事