2.4 KiB
2.4 KiB
Nginx for Debian Ansible role
Install and configure Nginx on Debian.
This role is not production ready. SSL management wille come later.
Requirements
None.
Role Variables
nginx_apt_package
: APT nginx package (try: apt-cache search ^nginx)nginx_root
: root directory where you want to have your filesnginx_log_dir
: log directory (if you change it, don't forget to change logrotate config)nginx_ssl_dir
: directory where you install your SSL/TLS keysnginx_resolver
: list of DNS resolver (default: OpenDNS)nginx_error_log_level
: default log levelnginx_dh_length
: DH key length (default is 2048)
PHP
nginx_php
: boolean if you need to preconfigure PHP (default: false)nginx_php_sockets
: list of //sockets//
You should see Nginx upstream module doc.
Socket:
unix_socket
host
port
weight
max_fails
fail_timeout
Nginx Configuration
nginx_user
nginx_worker_processes
nginx_events
: key/value in events blocknginx_http
: key/value in http block
Vhost management
nginx_vhosts
: List of dict. A vhost has few keys. See bellow.
name
: (M) List of domain used. The first occurence is the most important!template
: (M) template used to create vhostenable
: (O) Enable the vhost (default is true)delete
: (O) Delete the vhost (default is false)redirect_from
: (O) Domain list to redirect to the firstname
. You can use this key to redirect non-www to www.location
: Add new custom locations (it does not overwrite!)
(O) : Optional (M) : Mandatory
Templates
base
: static templatephp
: PHP base template. Can work with many frameworks/tools.wordpress
dokuwiki
Templates works as parent-child.
You can see many examples in: tests/test.yml.
Dependencies
None
Example Playbook
- hosts: servers
roles:
- { role: HanXHX.nginx }
License
GPLv2
Author Information
- You can find many other roles in my GitHub "lab": https://github.com/HanXHX/my-ansible-playbooks
- All issues, pull-request are welcome :)