![plesk 中的多个域名,同一个网站](https://linux22.com/image/618770/plesk%20%E4%B8%AD%E7%9A%84%E5%A4%9A%E4%B8%AA%E5%9F%9F%E5%90%8D%EF%BC%8C%E5%90%8C%E4%B8%80%E4%B8%AA%E7%BD%91%E7%AB%99.png)
我有一个带有 SSL 的域名,地址为 https:/www.example.com。
我要那个http://www.example.net显示与 example.com 相同的网站(相同的网站文件夹)。
我尝试在 Plesk 中使用域名别名,但它重定向到https://www.example.com。
答案1
要使此设置正常工作,需要考虑多个因素(我不知道 Plesk 可以处理多少...我们做据我所知,现在有一个网站管理员交换网站)。
1)让 domain2 指向 domain1 上的网络服务器。
要么将A
域 2 中的记录更改为指向与在域 1 上运行的 Web 服务器关联的 IP 地址,要么将记录更改A
为CNAME
并将域 2 直接指向域 1。
2)获取 domain2 的有效 SSL 证书
您不能将域 1 的 SSL 证书用于域 2。您不能通过pre-redirect
SSL 将域 2 指向域 1。您需要来自受信任证书颁发机构的有效证书,否则用户将看到有关 SSL 连接的警告。您可以指导用户在浏览器中点击该continue anyway
选项,但很有可能,一队 IT 安全专业人员会踢开你的门,用金属棒殴打你,因为你训练用户做一些如此不安全和愚蠢的事情(阅读为什么SSL 已存在)。
3)配置一种区分域1和域2的方法
当建立 SSL 连接时,Apache HTTPd 必须先提供其证书副本,然后才能交换任何信息。此时,Apache 唯一知道的是远程 IP、本地 Apache IP 和相关端口(以及对我们来说并不重要的各种其他 TCP 标头)。由于 Apache 对所使用的域名一无所知,因此它必须尝试为未知域提供有效证书(Apache 的策略:使用配置中列出的第一个证书)。
SSL 连接通常在端口 443 上进行。因此一般来说,大多数到您网站的外部 SSL 连接都将在 TCP 端口 443 上进行。远程 IP 和端口由客户端选择,因此在大多数情况下,您只能控制请求到达哪个 IP。为域 1 和域 2 分配单独的 IP 地址是easiest
让 apache 在所有花哨的 SSL 握手和 HTTP 标头通过之前识别正在使用哪个域的方法。
许多拥有网站的人没有拥有多个 IP 地址的奢侈。useless
解决此问题最肮脏和最有效的方法是在域 1 的 IP 上运行域 2,但在不同的端口上运行(即:8443)。这会导致各种问题。最大的问题是:https://domain2.com/将向 domain1 发送请求,并因此引发各种 SSL 错误。这是因为 URL 中没有指定端口,并且 HTTPS 被列为要使用的协议,因此客户端浏览器会愉快地假定您想要端口 443。没有人会使用这种方法并保持理智。(如果他们这样做,我们还没有听说过他们)。
基本上每个人都使用的解决方案是服务器名称指示 (SNI)。这是 TLS(参见:SSL)协议的扩展,本质上是在请求中添加了一个 Host: 标头。请在此处阅读:http://en.wikipedia.org/wiki/服务器名称指示。如果您感兴趣的话,相关 RFC 已列在来源中。
Plesk大概支持 SNI,但我不会使用 plesk。使用 plesk 配置 SNI 应该是一件可以谷歌搜索的事情。
4)在 apache 中为域创建单独的虚拟主机
由于上述 SSL 注意事项,这一点很重要。您不能简单地使用 Apache 的证书,ServerName
或者ServerAlias
因为 Apache 会为其中一个域提供错误的证书。Apache 将需要清楚的指向相同 的虚拟主机DocumentRoot
。我猜 plesk 通过Add new host
或add new domain
选项来处理这个问题。
。
我从来没有说过我需要在 domain2 上进行 SSL !!!!!
好的。好消息(如果是这样的话)。在 DNS 中为域 2 创建指向域 1 的 CNAME。只需知道:您会在晚上睡不着觉,想知道用户是否会输入:https://domain2.com手动进入地址栏并查看 SSL 警告。
最后,我很乐意为您提供带有屏幕截图的具体 Plesk 说明,但我不了解 Plesk,我认为您(以及未来研究此问题的人)可能会从后端操作的一些基本知识中受益,而不是点击解决方案。祝你好运。:)
答案2
要导航到 Plesk 中的 DNS 编辑器,请按照以下说明操作:
Log into Plesk.
Under Hosting Services, click on Domains.
Find the domain to be edited, and click on the corresponding Control Panel link on the far right.
Click the Websites & Domains tab.
Click the DNS Settings link.
Click on [Manage] to select the appropriate domain.
CNAME 记录
要编辑 CNAME 记录:
Click on the existing CNAME Record under Host to edit.
Change the Record type to CNAME (if necessary).
For Domain name, put in the subdomain you want to host (if necessary).
For Canonical name, enter the name of your desired server.
完成更改后,单击“确定”。