pulse-mind.ansible-role-apache-vhosts

Ansible Role: Apache vhosts

目的

私は geerlingguy.apache ロールを使用しています。それに加えて jdauphant.nginxviasite-ansible.site ロールも使っています。

jdauphant.nginx はサイトを別々のファイルで管理し、サイトを明示的に削除する機能をサポートしています。

Geerlingguy は コメント で単一の vhosts.conf の目的を説明しました。

role viasite-ansible.site はユーザー作成、nginx、apache、mysql の設定など、複雑なサイト設定を行います。各サイトは別々のロールとして機能するため、私も別々の apache vhosts が必要です。

このロールは、geerlingguy.apache を他の方法で利用できるようにします。

私が見つけた他の "apache-vhosts" ロールは viasite-ansible.site と同じことを行いますが、こちらも複雑すぎます。

機能

  • 複数のプレイブックでサイトを追加
  • サイトを明示的に削除
  • 各サイトに別々のテンプレートを持たせることが可能

制限事項

  • Debian、Ubuntu、CentOS のみ
  • SSL は未対応(nginx で SSL を設定しています)

問題提起は歓迎します!

使い方

このロールの前に、geerlingguy.apache ロールまたは他の方法で apache をインストールする必要があります。

いくつかの変数名と値は geerlingguy のロールに一致します(デフォルトおよび vars ディレクトリを参照してください)。そのため、二重に定義する必要はありません。

サイトの追加:

サイトの定義は次のようになります:

apache_vhosts_sites:
  www.local.dev:
    servername: "www.local.dev"
    serveralias: "local.dev"
    documentroot: "/var/www/html"
    extra_parameters: |
      RewriteCond %{HTTP_HOST} !^www\. [NC]
      RewriteRule ^(.*)$ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

geerlingguy のものと比較すると:

apache_vhosts_sites:
  - servername: "www.local.dev"
    serveralias: "local.dev"
    documentroot: "/var/www/html"
    extra_parameters: |
      RewriteCond %{HTTP_HOST} !^www\. [NC]
      RewriteRule ^(.*)$ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

サイト用のカスタムテンプレート:

apache_vhosts_sites:
  www.local.dev:
    servername: "www.local.dev"
    template: "custom.conf.j2"

サイトの削除:

apache_vhosts_remove_sites:
  - www.local.dev

例プレイブック

- hosts: all
  roles:
    - viasite-ansible.apache-vhosts
  vars:
    apache_vhosts_sites:
      foo:
        servername: "local.dev"
        documentroot: "/var/www/html"
      bar:
        servername: "local2.dev"
        documentroot: "/var/www/html"
      templated_site:
        template: tests/custom_template.conf.j2
        servername: "other.dev"
        somevariable: "somevalue"
    apache_vhosts_remove_sites:
      - baz
プロジェクトについて

Apache 2.x virtual hosts manage

インストール
ansible-galaxy install pulse-mind.ansible-role-apache-vhosts
ライセンス
Unknown
ダウンロード
216
所有者