5

我正在使用多个域来访问 liferay 门户实例。

例如以下是在 windows 的 hosts 文件中映射的域:

  1. www.liferaytest1.com
  2. www.liferaytest2.com

在 Liferay 的Control PanelPortal Settings中,www.liferaytest1.com设置为虚拟主机。

我可以使用上述所有域以及localhost.

当我访问门户网站时,www.liferaytest1.com我可以直接访问Guest网站页面。说,homeGuest网站中的一个页面,然后www.liferatest1.com/web/guest/home我可以直接访问它而不是访问它www.liferaytest1.com/home

所以 URL 在某种程度上被缩短了。
到目前为止,一切都很好。

第一关

现在,当我尝试通过访问门户网站www.liferaytest2.com并单击 Liferay 的 portlet 中列出的任何站点时My Sites,它会将我重定向到具有虚拟主机中提到的域的站点,即www.liferaytest1.com,而不是保留www.liferaytest2.com.

假设我有一个名为 的站点Help,因此当我单击My Sitesportlet 中的帮助站点链接时,它不会继续使用域,而是使用www.liferaytest2.com域重定向我www.liferaytest1.com

这是由于在 liferay 中完成的虚拟主机映射。

第二个问题

当我使用任何资产访问门户www.liferaytest2.com并订阅任何资产时,电子邮件中的链接包含虚拟主机域,即www.liferaytest1.com.


如何克服上述问题?

我的要求是相对于门户访问域。
当我通过 then 访问门户时,www.liferaytest2.com它不应该将我重定向到www.liferaytest1.com单击上面解释的任何站点链接,并且我将收到的电子邮件也应该与我正在访问的域相关,即www.liferaytest2.com.

4

2 回答 2

1

首先:您不需要使用该功能 - 它以某种方式实现(例如,如您所描述的那样),如果这不符合您的需求,则无需配置单个虚拟主机。仅通过单个虚拟主机提供所有内容或在 Apache 上进行解析(例如)没有问题 - 也就是说,完全在 Liferay 外部。唯一的缺点是您需要您想要访问的站点的线索(例如 /web/guest 作为 URL 的一部分),以便 Liferay 知道要提供哪些内容。

test1.example.com但是,如果您将 URL 更改为类似的结构,您可能更接近您想要实现的目标test2.example.com- 这样您至少可以共享顶级域,并且可能能够进行一些更便宜的单点登录(您仍然可以使用完全不同的域进行 SSO)

于 2013-06-24T09:42:04.523 回答
0

您无需在控制面板 → 门户设置中更改虚拟主机即可满足此类要求。而是将其保留在本地主机上。这将解决您的两个顾虑。

接下来,您想使用两个不同的域访问门户,您可以通过 DNS 设置来实现。将两者映射到相同的 IP(Liferay 门户的 IP),您将使用任何一个访问 Liferay 门户。它不会更改 url,并且会保留启动的名称。

于 2015-10-29T16:26:16.057 回答