mirror of
https://github.com/HanXHX/ansible-nginx.git
synced 2026-02-24 09:03:29 +07:00
New PHP management
- New versions (7.x) - PHP upstream name - Sites can use : default PHP version, select first one by PHP version, select by upstream name - Add PHP filter plugin
This commit is contained in:
@@ -1,22 +1,14 @@
|
||||
{% extends "_base.j2" %}
|
||||
|
||||
{% macro phpv(version) %}
|
||||
{% if version == 56 or version == "56" or version == "5.6" %}
|
||||
{{ nginx_upstream_php56 -}}
|
||||
{% elif version == 70 or version == "70" or version == "7.0" %}
|
||||
{{ nginx_upstream_php70 -}}
|
||||
{% else %}
|
||||
{# Hack... define another upstream #}
|
||||
{{ version -}}
|
||||
{% endif %}
|
||||
{%- endmacro -%}
|
||||
|
||||
{% if item.php_version is defined %}
|
||||
{% set php_upstream = phpv(item.php_version) %}
|
||||
{% elif nginx_php56 %}
|
||||
{% set php_upstream = phpv(56) %}
|
||||
{% elif nginx_php70 %}
|
||||
{% set php_upstream = phpv(70) %}
|
||||
{% set php_info = 'Explicit PHP version on site' %}
|
||||
{% set php_upstream = (nginx_php|selectattr('version', 'equalto', item.php_version)|first).upstream_name | default(item.php_version | php_default_upstream_name) %}
|
||||
{% elif item.php_upstream is defined %}
|
||||
{% set php_info = 'Explicit Nginx/PHP upstream on site' %}
|
||||
{% set php_upstream = item.php_upstream %}
|
||||
{% else %}
|
||||
{% set php_info = 'Warning: using first PHP version on config' %}
|
||||
{% set php_upstream = nginx_php.0.upstream_name | default(nginx_php.0.version | php_default_upstream_name) %}
|
||||
{% endif %}
|
||||
|
||||
{% block template_index %}
|
||||
@@ -29,6 +21,7 @@
|
||||
|
||||
{% block template_upstream_location %}
|
||||
location ~ \.php$ {
|
||||
# {{ php_info }}
|
||||
fastcgi_pass {{ php_upstream }};
|
||||
fastcgi_index index.php;
|
||||
{% if item.upstream_params is defined and item.upstream_params is iterable %}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
{% block template_upstream_location %}
|
||||
location = /index.php {
|
||||
# {{ php_info }}
|
||||
fastcgi_pass {{ php_upstream }};
|
||||
fastcgi_index index.php;
|
||||
{% if item.upstream_params is defined and item.upstream_params is iterable %}
|
||||
|
||||
@@ -2,29 +2,19 @@
|
||||
# {{ ansible_managed }}
|
||||
#
|
||||
|
||||
{% if nginx_php56 %}
|
||||
upstream {{ nginx_upstream_php56 }} {
|
||||
{% for item in nginx_php56_sockets %}
|
||||
{% if item.unix_socket is defined %}
|
||||
server unix:{{ item.unix_socket }} weight={{ item.weight | default('1') }};
|
||||
{% for php in nginx_php %}
|
||||
upstream {{ php.upstream_name | default((php.version | php_default_upstream_name)) }} {
|
||||
{% for sock in php.sockets | default([]) %}
|
||||
{% if php.host is defined %}
|
||||
server {{ sock.host }}:{{ sock.port }} weight={{ sock.weight | default('1') }} max_fails={{ sock.max_fails | default('5') }} fail_timeout={{ sock.fail_timeout | default('10s') }};
|
||||
{% else %}
|
||||
server {{ item.host }}:{{ item.port }} weight={{ item.weight | default('1') }} max_fails={{ item.max_fails | default('5') }} fail_timeout={{ item.fail_timeout | default('10s') }};
|
||||
server unix:{{ sock.unix | default((php.version | php_default_upstream_socket)) }} weight={{ sock.weight | default('1') }};
|
||||
{% endif %}
|
||||
{% else %}
|
||||
server unix:{{ php.version | php_default_upstream_socket }} weight=1;
|
||||
{% endfor %}
|
||||
}
|
||||
|
||||
{% endif %}
|
||||
{% if nginx_php70 %}
|
||||
upstream {{ nginx_upstream_php70 }} {
|
||||
{% for item in nginx_php70_sockets %}
|
||||
{% if item.unix_socket is defined %}
|
||||
server unix:{{ item.unix_socket }} weight={{ item.weight | default('1') }};
|
||||
{% else %}
|
||||
server {{ item.host }}:{{ item.port }} weight={{ item.weight | default('1') }} max_fails={{ item.max_fails | default('5') }} fail_timeout={{ item.fail_timeout | default('10s') }};
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
}
|
||||
|
||||
{% endif %}
|
||||
|
||||
# vim:filetype=nginx
|
||||
|
||||
Reference in New Issue
Block a user