我有一台树莓派,使用 apache 和 webdav 向家人和朋友提供照片。我认为我的配置非常基本。我有一个文件 000-default.conf 和第二个 webdav.conf。为了避免一直使用 IP 地址,我设置了一个动态 DNS。当您在浏览器中访问我的域名时,您将获得 Apache 默认问候页面。当您将 /webdav 添加到域名时,您将获得 webdav 目录并必须进行身份验证。
现在我尝试启用 ssl/https。我尝试通过 letsencrypt 和 certbot 执行此操作。由于某种原因,它不起作用。Certbot 对其配置很满意,但无法通过 https 访问该网站。
我不知道这是否已经解释了问题,但是当 certbot 询问将 ssl 添加到哪个 .conf 时,我不知道。我应该选择哪一个?默认的还是 webdav 的?我的域名属于哪一个?
更新(回答问题):
Certbot 没有显示任何错误。它以
Congratulations! You have successfully enabled <website>
有些事情对我来说看起来像是一个警告:
We were unable to find a vhost with a ServerName or Address of <website>.
Which virtual host would you like to choose?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: 000-default.conf | | | Enabled
2: webdav.conf | | | Enabled
我尝试了两者(先尝试一个,然后尝试另一个)。结果相同。
是的,我可以在 /etc/letsencrypt/live/ < domainname > 中看到证书。它包含
README cert.pem chain.pem fullchain.pem privkey.pem
尝试访问 https:// < ip-address > 也会遇到超时。
答案1
您可能没有提供足够的细节来让我们解决您的问题 - 但我尽我所能利用提供的信息 -
Certbot 应该查看的配置文件是 000-default.conf
更新了关于其他反馈的答案
听起来 Certbot 已经工作了,问题是 Web 服务器上未启用 https。certbot 守护程序正在抱怨,因为它找不到具有您网站配置的虚拟主机。(其余部分有点猜测/不严谨的答案,因为虽然我了解 Apache,但我不知道 Pi 配置文件是如何设置的 - 所以它基于猜测和谷歌搜索)
摘录自https://variax.wordpress.com/2017/03/18/adding-https-to-the-raspberry-pi-apache-web-server/comment-page-1/ 和https://www.raspberrypi.org/forums/viewtopic.php?t=193409
类型 ”sudo a2ensite ssl“如果失败,请输入”sudo a2ensite 默认 ssl“
上述命令之一应创建 SSL 配置。
使用“重新启动Apachesudo 服务 apache2 重启“
使用“启用默认 SSL 配置”sudo ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled/000-default-ssl.conf“
编辑文件 /etc/apache2/sites-enabled-000-default-ssl.conf 并修改 SSLCertificate* 文件以指向您的证书。
再次重新启动 apache,如果运气好的话它应该可以工作。