stancel.nginx_site_setup
nginxサイト設定
Ansibleロールで、NginXウェブサーバー上に1つまたは複数の新しいバーチャルホストを設定します。
要件
このロールを実行するサーバーには、すでにNginXが設定され、動作している必要があります。
ロール変数
ウェブサーバーで設定しホストするサイト
nginx_site_setup_sites_to_set_up:
- {
url: 'mysite.com',
name: 'mysite',
https: true,
site_subfolder_used_to_serve_files: "current/build/html",
restrict_site_to_certain_ip_addresses: true,
ip_addresses_or_cidr_ranges_to_allow_or_deny: [
"allow 1.2.3.4;",
"allow 192.168.1.0/24",
"deny all;"
]
}
NginXのクライアント最大ボディサイズ。デフォルトは10mです。
nginx_site_setup_nginx_server_client_max_body_size: 10m
ウェブサーバーのドキュメントルート。デフォルト値は"/var/www"です。
nginx_site_setup_web_home: "/var/www"
各ウェブサイトフォルダーの下に作成され、NginXがサーバーブロックで提供するファイルを保持するフォルダーの名前。デフォルトは"www"です。Bedrock WordPressを使用する場合は"web"に変更する必要があります。
nginx_site_setup_site_subfolder_used_to_serve_files: "www"
ウェブサーバーで使用されるLinuxのユーザー名。デフォルト値は"www-data"です。
nginx_site_setup_web_user: "www-data"
ウェブサーバーで使用されるLinuxのグループ。デフォルト値は"www-data"です。
nginx_site_setup_web_group: "www-data"
このロールが共有ウェブサーバーで実行されているかどうか。共有ウェブサーバーで実行される場合、ウェブユーザーとウェブグループは同じでないことが期待されます。デフォルト値はfalseです。
nginx_site_setup_used_on_shared_webserver: false
サイトはイントラネット上でのみ表示可能にするか、特定のIPアドレスからのみアクセスを許可するか、すべてのIPアドレスをブロックするか。デフォルトはfalseです。
nginx_site_setup_restrict_site_to_certain_ip_addresses: false
NginXで使用しているPHPバージョン。デフォルト値は"8.1"です。
nginx_site_php_version: "8.1"
ルールは、上から下へ順番に処理されます。
nginx_site_setup_ip_addresses_or_cidr_ranges_to_allow_or_deny: [
"allow 1.2.3.4;",
"allow 192.168.1.0/24",
"deny all;"
]
依存関係
なし
例となるプレイブック
ユーザーにとって、変数をパラメーターとして渡す方法を含めるのはいつも便利です:
- hosts: your_webserver
vars_files:
- vars/main.yml
roles:
- stancel.nginx_site_setup
または、プレイブックに直接変数を渡しても構いません。
- hosts: your_webserver
vars:
nginx_site_setup_sites_to_set_up:
- {
url: 'mysite.com',
name: 'mysite',
https: true,
nginx_site_setup_used_on_shared_webserver: true,
site_subfolder_used_to_serve_files: "current/build/html",
restrict_site_to_certain_ip_addresses: true,
ip_addresses_or_cidr_ranges_to_allow_or_deny: [
"allow 1.2.3.4;",
"allow 192.168.1.0/24",
"deny all;"
]
}
roles:
- stancel.nginx_site_setup
ライセンス
GPLv3