2017-06-08 60 views
0

我試圖爲www和非www的單個域名生成證書。Certbot www和non-www與--non-interactive = vhost ambiguity

這是我現在運行它:

certbot --apache -n -d domain.tld -d www.domain.tld --agree-tos --email [email protected] --redirect 

但我發現了以下幾點:

遇到虛擬主機不確定性,但無法在 非交互模式,要求用戶指導。目前Certbot需要每個虛擬主機都在其 自己的conf文件中,並且可能需要虛擬主機明確標記爲 ServerName或ServerAlias目錄。

所以我必須在沒有-n( - 非交互式)的情況下運行它並選擇正確的vhost文件。

有什麼辦法可以在沒有任何提示的情況下爲www和non-www生成證書嗎?

回答

0

有很多可能導致此錯誤消息。它表明您的虛擬主機配置有問題。 但總的最突出的原因:

  • 您有多個<VirtualHost >在一個.conf文件
  • 您有多個.conf文件,例如端口80和443,它們不具有完全相同的ServerName和/或ServerAlias屬性
  • 沒有指定任何ServerName都在.conf文件
  • domain.tld和/或www.domain.tld.conf文件沒有指定

此外,我建議您運行帶有--dry-run選項的certbot進行調試。另外,對於cron的自動更新,有/etc/certbot-auto renew
所以,你可以試試/etc/certbot-auto renew --dry-run只取配置文件中指定的所有域。 提醒:請不要忘記在vhost配置中的每次更改後都重新啓動或重新加載apache service apache2 restart或更高版本