diff --git a/templates/varnish/vhost.vcl.erb b/templates/varnish/vhost.vcl.erb index c4351a8d..0cb7b7af 100644 --- a/templates/varnish/vhost.vcl.erb +++ b/templates/varnish/vhost.vcl.erb @@ -1,42 +1,44 @@ # vhost_<%= @servername %>.vcl # # Settings for the <%= @servername %> vhost # # File managed by puppet. All modifications will be lost. sub vcl_recv { if ( <% @aliases.each do |alias_| -%> req.http.host ~ "^(?i)<%= Regexp.escape(alias_) %>$" || <% end -%> req.http.host ~ "^(?i)<%= Regexp.escape(@servername) %>$" ) { if (std.port(server.ip) == <%= scope['::profile::varnish::http_port'] %>) { set req.http.x-redir = "https://" + req.http.host + req.url; return(synth(850, "Moved permanently")); + } else { + set req.http.X_FORWARDED_PROTO = "https"; } <% if @vcl_recv_extra -%> <%= @vcl_recv_extra %> <% end -%> } } <% if @hsts_max_age or @vcl_deliver_extra -%> sub vcl_deliver { if ( <% @aliases.each do |alias_| -%> req.http.host ~ "^(?i)<%= Regexp.escape(alias_) %>$" || <% end -%> req.http.host ~ "^(?i)<%= Regexp.escape(@servername) %>$" ) { <% if @hsts_max_age -%> if (std.port(server.ip) != <%= scope['::profile::varnish::http_port'] %>) { set resp.http.Strict-Transport-Security = "max-age=<%= @hsts_max_age %>;"; } <% end -%> <% if @vcl_deliver_extra -%> <%= @vcl_deliver_extra %> <% end -%> } } <% end -%>