多个子域,只有一个使用端口80的SSL

我正在运行一个Apache2服务器,并在/ etc / apache2 / sites-available的单独文件中定义了三个子域

我需要其中一个子域在端口80上进行SSL保护,以便应用程序正常工作。 由于我无法控制的情况,80端口是必需的。 其他子域也在端口80上。

现在,在Apache中启用所有子域时,SSL子域不会运行SSL。 如果我禁用SSL子域WORKS上的其他子域SSL。

有没有办法来解决这个问题?

这是由于Apache侦听新连接和路由到正确的虚拟主机的方式。

Apache将显式侦听SSL连接或纯文本连接,而不是两者。

唯一的select是将安全操作移动到端口443(按照规范),将SSL子域移动到不同的IP地址并将端口80绑定到该端口,或者使用通配符证书或SNI对整个站点进行SSL启用。