我的提供商问题 - ehost。
我有通配符证书。我想在我上线之前先测试它。所以我首先请求在子域上安装它(uat.domain.com)。我已经测试了应用程序,并希望上线。提供商表示,无法在主域(domain.com)上安装证书,因为他们首先在子域上安装了证书。
当然,他们让我从他们那里购买证书。
我真的不明白这个问题是否可以告诉我他们是否有权?我认为甚至可以从ehost获取certficate并将其发送给另一个提供商并安装它。证书现在安装在Apache Server上,而子域和主域的文件夹位于同一服务器中。
答案 0 :(得分:1)
不看实际配置很难说,但回答你的问题,如果他们说这是不可能的,那是因为他们只是在他们的服务器中使用1个VirtualHost。
通常,共享主机存在这些问题,因为它们将1个单独的Apache实例专用于许多不同的客户端,并且每个客户端有1个虚拟主机,但这只是猜测您需要检查这是当前发生的情况。
但我也可以描述Apache的工作原理,以便您了解可能发生的事情:
如果Apache配置具有不同的虚拟主机,则可以拥有与虚拟主机一样多的不同证书,通配符等等。
这是每个VirtualHost的1个证书。
但并非全部,如果您有多个不同的域名或子域名,那么您需要仔细规划必须如何配置它们。
例如
如果您先定义了此虚拟主机:
<VirtualHost *:443>
ServerName example.com
ServerAlias *.example.com
</VirtualHost>
将不会应用或使用whatever.example.com或example.com的其他虚拟主机,因为此虚拟主机将获取这些名称的所有请求。
但如果你有:
<VirtualHost *:443>
ServerName domain.com
</VirtualHost>
现在您需要为子域定义带有新通配符证书的虚拟主机,您可以使用* .example.com的新通配符证书完美地执行:
<VirtualHost *:443>
ServerName xxxxx.example.com
</VirtualHost>
现在可以为* .example.com使用相同的通配符证书来定义更多虚拟主机:
<VirtualHost *:443>
ServerName yyyyy.example.com
</VirtualHost>
请注意,这些是虚拟主机示例(显然,您的虚拟主机将在其中包含更多指令,特别是加载密钥和证书的指令等)。
简而言之,您需要考虑的事项: