{{ ansible_header | comment }} {% for site in nginx.redirect_sites %} # Redirect http://{{ site.from }} to http://{{ site.to }} server { listen 80; listen [::]:80; server_name {{ site.from }}; location / { return 302 http://{{ site.to }}$request_uri; } } # Redirect https://{{ site.from }} to https://{{ site.to }} server { listen 443 ssl http2; listen [::]:443 ssl http2; server_name {{ site.from }}; # SSL common conf include "/etc/nginx/snippets/options-ssl.conf"; location / { return 302 https://{{ site.to }}$request_uri; } } {% endfor %} {# Also redirect for DNAMEs #} {% for dname in nginx.redirect_dnames %} {% for site in nginx.redirect_sites %} {% set from = site.from | regex_replace('crans.org', dname) %} {% if from != site.from %} # Redirect http://{{ from }} to http://{{ site.to }} server { listen 80; listen [::]:80; server_name {{ from }}; location / { return 302 http://{{ site.to }}$request_uri; } } # Redirect https://{{ from }} to https://{{ site.to }} server { listen 443 ssl http2; listen [::]:443 ssl http2; server_name {{ from }}; # SSL common conf include "/etc/nginx/snippets/options-ssl.conf"; location / { return 302 https://{{ site.to }}$request_uri; } } {% endif %} {% endfor %} {% endfor %}