【发布时间】:2017-07-02 18:02:48
【问题描述】:
我对 puppet 比较陌生,目前正在研究“puppetlabs-apache”模块。在虚拟主机上同时设置 ssl 和非 ssl 时我遗漏了一些东西。
已应用清单:
include apache
include apache::mod::rewrite
#apache::vhost { 'site.mydomain.com':
# port => '80',
# docroot => '/var/www/site',
# rewrite_rule => '(.*) https://site.mydomain.com [R,L]',
#}
apache::vhost { 'site.mydomain.com':
port => '443',
ssl => true,
docroot => '/var/www/site',
docroot_owner => 'www-data',
docroot_group => 'www-data',
# rewrite_rule => '(.*) https://site.mydomain.com [R,L]',
}
问题是我不需要非 ssl(80 端口),但所有请求都应该重定向到 443。
如果我注释掉端口 80 的 site.mydomain.com 的第一个 vhost 定义,则会引发错误:
服务器上的错误 400:重复声明:Apache::Vhost[site2.mydomain.com] 已在文件中声明..
不确定我在这里缺少什么。我应该怎么做才能使这种永久重定向发生?
http://site2.mydomain.com/ => https://site2.mydomain.com/
【问题讨论】:
标签: apache puppet virtualhost puppetlabs-apache