【问题标题】:Redirect all users hitting top level site重定向所有访问顶级站点的用户
【发布时间】:2017-03-01 23:45:32
【问题描述】:

我在 SP 中有一个站点层次结构,如下所示:

http://acme.com

    http://acme.com/hr

    http://acme.com/it

每个页面下都有列表和库等,如下所示:

http://acme.com/lists/xList

http://acme.com/lists/yList

    http://acme.com/hr/lists/hrList1

    http://acme.com/hr/lists/hrList2

    http://acme.com/it/lists/itList1

    http://acme.com/it/lists/itList2

我需要的是一个 javascript 类型的重定向(对于 JS 来说不是很好),它可以让任何点击http://acme.com 的人将用户重定向到http://newAcme.com,包括属于 acme 页面的每个列表和资产都应该转发列表:

http://acme.com -> http://newAcme.com
http://acme.com/lists/xList -> http://newAcme.com/lists/xList
http://acme.com/lists/yList -> http://newAcme.com/lists/yList

http://acme.com/hr -> no redirect
http://acme.com/hr/lists/hrList1 -> no redirect
http://acme.com/hr/lists/hrList2 -> no redirect
http://acme.com/it -> no redirect
http://acme.com/it/lists/itList1 -> no redirect
http://acme.com/it/lists/itList2 -> no redirect

重申...属于顶级站点的任何内容都应重定向到新的顶级站点,旧站点下的任何子站点不应将用户重定向到任何地方。

到目前为止,我所拥有的只是母版页中的一个脚本:

<script type="text/javascript>
    window.location = "http://newAcme.com";
</script>

但这所做的只是重定向每个页面上的每个人,包括旧域上的子站点(我不想重定向),因为母版页包含此代码。我的想法只是将脚本包含在实际的顶级页面中,而不是将其包含在母版页中。有人对此有什么建议吗?我想我已经清楚地阐明了我所追求的。感谢您的支持。

【问题讨论】:

  • 您需要在您的服务器配置中解决它。 Nginx 或 apache 配置允许这样的事情。例如Nginx http proxy
  • 这是托管在 IIS 中的...这有什么不同吗?
  • 我不知道 IIS,抱歉,google 可以帮助你。我只是向您展示一种可能的方法

标签: javascript redirect web sharepoint


【解决方案1】:

你试过吗

window.location = window.location.replace(/oldAddress/ig, "newAddress");

请注意,如果您的页面名称包含“oldAddress”,它将被替换为“newAddress”

【讨论】:

  • 你上面的例子不会重定向任何带有“oldAddress”的网站吗?包括我不想重定向的子网站?有什么想法吗?
  • 那么需要重定向的页面在它们的路径中有什么共同点?
猜你喜欢
  • 1970-01-01
  • 2014-02-10
  • 2012-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多