mvc - 单页登录的多个域

时间:2015-07-08 13:44:55

标签: c# asp.net asp.net-mvc iis

我有MVC 4网站,其中有4个接入点:

1.www.domain.com
2.    domain.com

3.www.domain.net
4.    domain.net

问题是,当用户登录其中一个网址时,用户不会登录其他网址。因此,例如在登录“www.domain.com”后,用户未登录到“domain.com”,此行为适用于所有接入点。

用户可以同时登录所有接入点,但他必须填写4次登录表单。

可以从非www到www重写URL,但仍有2个域(.com / .net)。

在IIS中,是单站点绑定中的所有主机名形状。

知道我做错了吗?

2 个答案:

答案 0 :(得分:0)

我有一个网站有类似的域名扩展名,包括https协议,我将所有其他域名转发到https://www.domain.com,它有利于搜索引擎优化的原因以及您的分析,我建议将所有域名转发到一个域名域。

answer也说:

  

那么,如何跨多个域共享身份验证cookie?   好吧,绝对没有办法做到这一点。根本障碍   HTTP协议阻止您共享cookie   不同的域名,主要是出于安全原因。

     

...... ASP.NET中没有内置机制来实现Single   在这两个不同的网站上签名。

您可以使用web.config文件重定向网站,方法是将IIS中的网站设置为重定向文件夹:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <httpRedirect enabled="true" destination="https://www.domainname.com$S$Q" exactDestination="true" httpResponseStatus="Permanent" />
    </system.webServer>
</configuration>

答案 1 :(得分:0)

如果所有内容都显示相同的内容,只需使用一个域作为主要内容。否则你可以使用oauth作为单一登录。