我正在运行本地 Ubuntu 服务器作为我的云。这台机器可以通过我的路由器端口转发从外部访问。这工作正常(通过 IP)。现在我在现有的 1und1 域中创建了一个子域,并使用“domain-redirect”将此子域 xxx.mydomain.com 重定向到我的外部(静态)ip 和端口,如下所示:https://ip.ip.ip.ip:2000/nextcloud 这也很好用(但在地址栏中输入的是 IP,而不是 xxx.mydomain.com),但标准的 ubuntu SSL-Cert 显然不可信。这就是为什么我从 comodo 为我的子域名购买了一个便宜的 ssl-cert:xxx.mydomain.com 然后我将证书导入我的 ubuntu 服务器(/etc/ssl/certs...)并更正了 /etc/apache2/sites-availabe/nextcloud.conf(SSLCertificateFile 和 SSLCertificateKeyFile)。这(在 apache2 重启后)导致浏览器在浏览 xxx.mydomain.com 时读取 Comodo ssl 证书。
问题:Comodo 证书仍然不受信任(站点的证书链存在问题(net::ERR_CERT_COMMON_NAME_INVALID)。)
这与重定向过程有关吗?如果是,我该如何解决?还是我错过了其他东西?
提前致谢!
€dit:这是 nextcloud.conf 文件:
Alias /nextcloud "/var/www/nextcloud/"
<VirtualHost *:443>
ServerName cloud.myDomain.com
DocumentRoot /var/www/nextcloud
SSLEngine on
SSLCertificateKeyFile /etc/ssl/private/myComodo.key
SSLCertificateFile /etc/ssl/certs/myComodo.crt
SSLCertificateChainFile /etc/ssl/certs/myComodo.ca-bundle
</VirtualHost>
<Directory /var/www/nextcloud/>
Options +FollowSymlinks
AllowOverride All
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/nextcloud
SetEnv HTTP_HOME /var/www/nextcloud
</Directory>
答案1
问题很可能出在重定向上。
假设您使用sub.domain.tld
并获得了该主机的证书。
当您将访问者重定向到11.22.33.44
证书时,该证书不再“有效”,因为它被设置为适用于 (COMMON_NAME)https://sub.domain.tld
而不是https://11.22.33.44
。
唯一真正的解决方案是使用 A/CName 记录。如果您没有静态 IP,则可以使用免费的动态 DNS,然后设置 CNAME 记录。