nginx_site_setup
nginx_site_setup
Роль Ansible, которая настраивает один или несколько новых виртуальных хостов на веб-сервере NginX.
Требования
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. По умолчанию 10м.
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
Версия PHP, используемая с Nginx. Значение по умолчанию: "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: ваш_вебсервер
vars_files:
- vars/main.yml
roles:
- stancel.nginx_site_setup
или просто передать переменные в плейбуке
- hosts: ваш_вебсервер
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
Информация об авторе
ansible-galaxy install stancel/nginx-site-setup