inmotionhosting.nginx_proxy
Rola Ansible: Nginx Proxy
Modularna rola Ansible do wdrażania i konfigurowania Nginx jako reverse proxy.
Wymagania
Ta rola Ansible wspiera dwie najnowsze stabilne wersje określonych dystrybucji systemów Linux skupionych na serwerach i stara się podążać za ich polityką deprecjacji. Dodatkowo będziemy koncentrować się na wspieraniu dwóch najnowszych stabilnych wersji każdej z nich, które w momencie pisania są następujące:
- CentOS 7.x
- Debian 11 lub nowszy
- Ubuntu 20.04 LTS lub nowszy
- AlmaLinux 8.x lub nowszy
- RockyLinux 8.x lub nowszy
Zależności
- community.general
- ansible.posix
Zmienne roli
Dostępne zmienne są wymienione poniżej wraz z ich domyślnymi wartościami (możesz również zobaczyć defaults/main.yml
)
Zmienna | Opis |
---|---|
nginx_daemon | Domyślnie: nginx |
nginx_group | Domyślnie: nobody |
nginx_name | Domyślnie: nginx |
nginx_user | Domyślnie: nginx |
nginx_packages | Domyślnie: [nginx] |
nginx_pid | Domyślnie: /var/run/nginx.pid |
nginx_mime_includes | Domyślnie: /etc/nginx/mime.types |
nginx_module_includes | Domyślnie: /usr/share/nginx/modules/*.conf |
nginx_proxy_includes | Domyślnie: /etc/nginx/proxy.conf |
nginx_site_includes | Domyślnie: /etc/nginx/conf.d/*.conf |
nginx_trusted_proxies_includes | Domyślnie: /etc/nginx/trusted_proxies.conf |
Podstawowe
Zmienna | Opis |
---|---|
nginx_client_body_buffer_size | Domyślnie 1m |
nginx_client_header_buffer_size | Domyślnie 2k |
nginx_client_max_body_size | Domyślnie 512m |
Buforowanie
Zmienna | Opis |
---|---|
nginx_cache_convert_head | Domyślnie: true |
nginx_cache_honor_cc | Domyślnie: false |
nginx_cache_honor_cookies | Domyślnie: true |
nginx_cache_honor_expires | Domyślnie: false |
nginx_cache_inactive | Domyślnie: 1h |
nginx_cache_name | Domyślnie: sitecache |
nginx_cache_time_404 | Domyślnie: 10 |
nginx_cache_time_default | Domyślnie: 5 |
nginx_etag | Domyślnie: true |
nginx_open_file_cache_errors | Domyślnie: false |
nginx_open_file_cache_inactive | Domyślnie: 8m |
nginx_open_file_cache_max | Domyślnie: 16536 |
nginx_open_file_cache_min_uses | Domyślnie: 1 |
nginx_open_file_cache_valid | Domyślnie: 5m |
nginx_ssi | Domyślnie: false |
Kompresja
Zmienna | Opis |
---|---|
nginx_gzip_enabled | Domyślnie: true |
nginx_gzip_comp_level | Domyślnie: 9 |
nginx_gzip_min_length | Domyślnie: 256 |
Połączenie
Zmienna | Opis |
---|---|
nginx_hsts_enable | Domyślnie: false |
nginx_http2_enable | Domyślnie: true |
nginx_keepalive_requests | Domyślnie: 100 |
nginx_keepalive_timeout | Domyślnie: 30 |
nginx_multi_accept | Domyślnie: true |
nginx_reset_timedout_connection | Domyślnie: true |
nginx_sendfile | Domyślnie: true |
nginx_tcp_nodelay | Domyślnie: false |
nginx_tcp_nopush | Domyślnie: true |
Logowanie
Zmienna | Opis |
---|---|
nginx_access_log | Domyślnie: /var/log/nginx/access.log |
nginx_error_log | Domyślnie: /var/log/nginx/error.log |
nginx_log_format_main | Domyślnie: $remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent" "$http_x_forwarded_for" |
Proxy
Zmienna | Opis |
---|---|
nginx_proxy_buffers | Domyślnie: [4, 32k] |
nginx_proxy_buffer_size | Domyślnie: 32k |
nginx_proxy_busy_buffers_size | Domyślnie: 64k |
nginx_proxy_cache_key | Domyślnie: "$scheme$request_method$host$request_uri" |
nginx_proxy_connect_timeout | Domyślnie: 90 |
nginx_proxy_hide_header | Domyślnie: ["Upgrade"] |
nginx_proxy_read_timeout | Domyślnie: 90 |
nginx_proxy_redirect | Domyślnie: false |
nginx_proxy_send_timeout | Domyślnie: 90 |
Ograniczenie prędkości
Zmienna | Opis |
---|---|
nginx_ratelimit | Domyślnie: 8 |
nginx_ratelimit_burst | Domyślnie: 8 |
nginx_ratelimit_nodelay | Domyślnie: true |
nginx_ratelimit_zone | Domyślnie: rlzone |
nginx_ratelimit_paths | Domyślnie: [".*login\\.php", ".*xmlrpc\\.php", ".*wp-cron\\.php"] |
SSL
Zmienna | Opis |
---|---|
nginx_ssl_enable | Domyślnie: true |
nginx_ssl_ciphers | Domyślnie: ["EECDH+AESGCM", "EDH+AESGCM", "AES256+EECDH", "AES256+EDH", "ECDHE-RSA-AES128-GCM-SHA256", "ECDHE-ECDSA-AES128-GCM-SHA256"] |
nginx_ssl_protocols | Domyślnie: ["TLSv1.2", "TLSv1.3"] |
nginx_ssl_session_cache | Domyślnie: "shared:SSL:32m" |
Statyczne
Zmienna | Opis |
---|---|
nginx_static_content_accel | Domyślnie: true |
nginx_static_content_paths | Domyślnie: [] |
Pracownicy
Zmienna | Opis |
---|---|
nginx_worker_connections | Domyślnie: 4096 |
nginx_worker_processes | Domyślnie: auto |
nginx_worker_rlimit_nofile | Domyślnie: 8192 |
nginx_worker_shutdown_timeout | Domyślnie: 4 |
SELinux
Zmienna | Opis |
---|---|
selinux_enabled | Domyślnie: false |
Przykładowy Playbook
- hosts: www
roles:
- role: inmotionhosting.nginx_proxy
Licencja
GPLv3
Informacje o autorze
O projekcie
Modular Ansible Role for deploying and configuring Nginx as a reverse proxy
Zainstaluj
ansible-galaxy install inmotionhosting.nginx_proxy
Licencja
gpl-3.0
Pobrania
53.5k
Właściciel
Offering Private and Public Cloud, Software as a Service, and Web Hosting