Fixed long names virtual hosts, such as nginx::resource::vhost { 'name1.domainname.org name2.domainname.org': }
Add example nginx::vhost with HTTPS FastCGI and redirection of HTTP Add location_custom_cfg_prepend & location_custom_cfg_append. Used for logical structures such as if. Fix puppet-lint
This commit is contained in:
Родитель
74a8ed1e87
Коммит
e94af129e4
|
@ -165,3 +165,66 @@ nginx::resource::vhost { 'puppet':
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Example puppet class calling nginx::vhost with HTTPS FastCGI and redirection of HTTP
|
||||||
|
|
||||||
|
```define web::nginx_ssl_with_redirect (
|
||||||
|
$backend_port = 9000,
|
||||||
|
$php = true,
|
||||||
|
$proxy = undef,
|
||||||
|
$www_root = "${full_web_path}/${name}/",
|
||||||
|
$location_cfg_append = undef,
|
||||||
|
) {
|
||||||
|
nginx::resource::vhost { "${name}.${::domain}":
|
||||||
|
ensure => present,
|
||||||
|
www_root => "${full_web_path}/${name}/",
|
||||||
|
location_cfg_append => { 'rewrite' => '^ https://$server_name$request_uri? permanent' },
|
||||||
|
}
|
||||||
|
|
||||||
|
if !$www_root {
|
||||||
|
$tmp_www_root = undef
|
||||||
|
} else {
|
||||||
|
$tmp_www_root = $www_root
|
||||||
|
}
|
||||||
|
|
||||||
|
nginx::resource::vhost { "${name}.${::domain} ${name}":
|
||||||
|
ensure => present,
|
||||||
|
listen_port => 443,
|
||||||
|
www_root => $tmp_www_root,
|
||||||
|
proxy => $proxy,
|
||||||
|
location_cfg_append => $location_cfg_append,
|
||||||
|
index_files => [ 'index.php' ],
|
||||||
|
ssl => true,
|
||||||
|
ssl_cert => 'puppet:///modules/sslkey/whildcard_mydomain.crt',
|
||||||
|
ssl_key => 'puppet:///modules/sslkey/whildcard_mydomain.key',
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if $php {
|
||||||
|
nginx::resource::location { "${name}_root":
|
||||||
|
ensure => present,
|
||||||
|
ssl => true,
|
||||||
|
ssl_only => true,
|
||||||
|
vhost => "${name}.${::domain} ${name}",
|
||||||
|
www_root => "${full_web_path}/${name}/",
|
||||||
|
location => '~ \.php$',
|
||||||
|
index_files => ['index.php', 'index.html', 'index.htm'],
|
||||||
|
proxy => undef,
|
||||||
|
fastcgi => "127.0.0.1:${backend_port}",
|
||||||
|
fastcgi_script => undef,
|
||||||
|
location_cfg_append => {
|
||||||
|
fastcgi_connect_timeout => '3m',
|
||||||
|
fastcgi_read_timeout => '3m',
|
||||||
|
fastcgi_send_timeout => '3m'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
# Call class web::nginx_ssl_with_redirect
|
||||||
|
|
||||||
|
```web::nginx_ssl_whith_redirect { 'sub-domain-name':
|
||||||
|
backend_port => 9001,
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
|
@ -40,6 +40,12 @@
|
||||||
# [*location_cfg_prepend*] - Expects a hash with extra directives to put
|
# [*location_cfg_prepend*] - Expects a hash with extra directives to put
|
||||||
# before anything else inside location (used with all other types except
|
# before anything else inside location (used with all other types except
|
||||||
# custom_cfg)
|
# custom_cfg)
|
||||||
|
# [*location_custom_cfg_prepend*] - Expects a array with extra directives
|
||||||
|
# to put before anything else inside location (used with all other types
|
||||||
|
# except custom_cfg). Used for logical structures such as if.
|
||||||
|
# [*location_custom_cfg_append*] - Expects a array with extra directives
|
||||||
|
# to put before anything else inside location (used with all other types
|
||||||
|
# except custom_cfg). Used for logical structures such as if.
|
||||||
# [*location_cfg_append*] - Expects a hash with extra directives to put
|
# [*location_cfg_append*] - Expects a hash with extra directives to put
|
||||||
# after everything else inside location (used with all other types except
|
# after everything else inside location (used with all other types except
|
||||||
# custom_cfg)
|
# custom_cfg)
|
||||||
|
@ -114,6 +120,8 @@ define nginx::resource::location (
|
||||||
$location_custom_cfg = undef,
|
$location_custom_cfg = undef,
|
||||||
$location_cfg_prepend = undef,
|
$location_cfg_prepend = undef,
|
||||||
$location_cfg_append = undef,
|
$location_cfg_append = undef,
|
||||||
|
$location_custom_cfg_prepend = undef,
|
||||||
|
$location_custom_cfg_append = undef,
|
||||||
$try_files = undef,
|
$try_files = undef,
|
||||||
$proxy_cache = false,
|
$proxy_cache = false,
|
||||||
$proxy_cache_valid = false,
|
$proxy_cache_valid = false,
|
||||||
|
@ -216,7 +224,9 @@ define nginx::resource::location (
|
||||||
'absent' => absent,
|
'absent' => absent,
|
||||||
default => file,
|
default => file,
|
||||||
}
|
}
|
||||||
$config_file = "${nginx::config::nx_conf_dir}/sites-available/${vhost}.conf"
|
|
||||||
|
$vhost_sanitized = regsubst($vhost, ' ', '_', 'G')
|
||||||
|
$config_file = "${nginx::config::nx_conf_dir}/sites-available/${vhost_sanitized}.conf"
|
||||||
|
|
||||||
$location_sanitized_tmp = regsubst($location, '\/', '_', 'G')
|
$location_sanitized_tmp = regsubst($location, '\/', '_', 'G')
|
||||||
$location_sanitized = regsubst($location_sanitized_tmp, '\\', '_', 'G')
|
$location_sanitized = regsubst($location_sanitized_tmp, '\\', '_', 'G')
|
||||||
|
@ -257,20 +267,20 @@ define nginx::resource::location (
|
||||||
|
|
||||||
## Create stubs for vHost File Fragment Pattern
|
## Create stubs for vHost File Fragment Pattern
|
||||||
if ($ssl_only != true) {
|
if ($ssl_only != true) {
|
||||||
concat::fragment { "${vhost}-${priority}-${location_sanitized}":
|
concat::fragment { "${vhost_sanitized}-${priority}-${location_sanitized}":
|
||||||
target => $config_file,
|
target => $config_file,
|
||||||
content => $content_real,
|
content => $content_real,
|
||||||
order => "${priority}",
|
order => $priority,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
## Only create SSL Specific locations if $ssl is true.
|
## Only create SSL Specific locations if $ssl is true.
|
||||||
if ($ssl == true) {
|
if ($ssl == true) {
|
||||||
$ssl_priority = $priority + 300
|
$ssl_priority = $priority + 300
|
||||||
concat::fragment {"${vhost}-${ssl_priority}-${location_sanitized}-ssl":
|
concat::fragment {"${vhost_sanitized}-${ssl_priority}-${location_sanitized}-ssl":
|
||||||
target => $config_file,
|
target => $config_file,
|
||||||
content => $content_real,
|
content => $content_real,
|
||||||
order => "${ssl_priority}",
|
order => $ssl_priority,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,9 @@
|
||||||
<% if @location_deny -%><% @location_deny.each do |deny_rule| -%>
|
<% if @location_deny -%><% @location_deny.each do |deny_rule| -%>
|
||||||
deny <%= deny_rule %>;
|
deny <%= deny_rule %>;
|
||||||
<% end -%><% end -%>
|
<% end -%><% end -%>
|
||||||
|
<% if @location_custom_cfg_prepend -%><% @location_custom_cfg_prepend.sort.each do |value| -%>
|
||||||
|
<%= value %>
|
||||||
|
<% end -%><% end -%>
|
||||||
<% if @location_cfg_prepend -%><% @location_cfg_prepend.sort_by {|k,v| k}.each do |key,value| -%>
|
<% if @location_cfg_prepend -%><% @location_cfg_prepend.sort_by {|k,v| k}.each do |key,value| -%>
|
||||||
<%= key %> <%= value %>;
|
<%= key %> <%= value %>;
|
||||||
<% end -%><% end -%>
|
<% end -%><% end -%>
|
||||||
|
@ -28,6 +31,9 @@
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<% if @location_cfg_append -%><% @location_cfg_append.sort_by {|k,v| k}.each do |key,value| -%>
|
<% if @location_cfg_append -%><% @location_cfg_append.sort_by {|k,v| k}.each do |key,value| -%>
|
||||||
<%= key %> <%= value %>;
|
<%= key %> <%= value %>;
|
||||||
|
<% end -%><% end -%>
|
||||||
|
<% if @location_custom_cfg_append -%><% @location_custom_cfg_append.sort.each do |value| -%>
|
||||||
|
<%= value %>
|
||||||
<% end -%><% end -%>
|
<% end -%><% end -%>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
<% if @location_cfg_prepend -%><% @location_cfg_prepend.sort_by {|k,v| k}.each do |key,value| -%>
|
<% if @location_cfg_prepend -%><% @location_cfg_prepend.sort_by {|k,v| k}.each do |key,value| -%>
|
||||||
<%= key %> <%= value %>;
|
<%= key %> <%= value %>;
|
||||||
<% end -%><% end -%>
|
<% end -%><% end -%>
|
||||||
|
<% if @location_custom_cfg_prepend -%><% @location_custom_cfg_prepend.sort.each do |value| -%>
|
||||||
|
<%= value %>
|
||||||
|
<% end -%><% end -%>
|
||||||
<% if defined? @www_root -%>
|
<% if defined? @www_root -%>
|
||||||
root <%= @www_root %>;
|
root <%= @www_root %>;
|
||||||
<% end -%>
|
<% end -%>
|
||||||
|
@ -18,6 +21,9 @@
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<% if @location_cfg_append -%><% @location_cfg_append.sort_by {|k,v| k}.each do |key,value| -%>
|
<% if @location_cfg_append -%><% @location_cfg_append.sort_by {|k,v| k}.each do |key,value| -%>
|
||||||
<%= key %> <%= value %>;
|
<%= key %> <%= value %>;
|
||||||
|
<% end -%><% end -%>
|
||||||
|
<% if @location_custom_cfg_append -%><% @location_custom_cfg_append.sort.each do |value| -%>
|
||||||
|
<%= value %>
|
||||||
<% end -%><% end -%>
|
<% end -%><% end -%>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче