http://example.com和http://www.example.com之间的区别

时间:2011-05-12 08:07:21

标签: asp.net dns no-www

我在以下情况下获取异常以检索会话值。

  1. 如果我使用此链接http://example.com打开网站并分配会话值
  2. 页面将重定向到另一个网站http://example1.com
  3. http://example1.com
  4. 的某些操作
  5. 重定向到http://www.example.com(不是http://example.com)并检索会话值
  6. 在这种情况下系统抛出异常...但是如果我用http://www.example.com打开网站,那么工作正常。

    我有一些问题

    1. http://example.comhttp://www.example.com之间的区别?
    2. 如何解决该问题,因为用户无需键入http://www.example.com

6 个答案:

答案 0 :(得分:3)

简单地说,http://site.comhttp://www.site.com是两个独立的网站。这是因为DNS为域名设置的方式。您可以将域名的DNS记录配置为指向同一IP地址,也可以使用URLRewrite规则强制某种方式的流量。

请查看此信息以获取更多信息:

Specify a canonical domain name for your site with IIS 7

答案 1 :(得分:1)

一种选择是在IIS中创建一个仅用于重定向到子域的站点。

例如,您配置了两个站点。

www.example.com(主要应用 example.com(配置重定向到http://www.example.com)。

我对你的问题感到有点困惑。看起来您的网站正在发布或完全重定向到另一个网站?您为会话设置了多长时间以及您使用的cookie模式?

答案 2 :(得分:1)

www.example.com的子域名。如果sessionState设置为使用cookie来存储会话ID,则域名可以影响会话,因为cookie可以绑定到域(和子域)。

看看Wikipedia's article on cookies

答案 3 :(得分:1)

首先,www只是另一个子域名。我们习惯于输入www.example.com,但它只不过是ttt.example.com或ppp.example.com

这就是为什么在基于Linux的服务器中,你通常必须将你的资源放在www目录中,因为它是一个子域名。

第二个有多种解决方案。 Fiddler告诉我,当您键入http://microsoft.com时,Microsoft会回复301状态(永久移动)到http://www.microsoft.com

答案 4 :(得分:1)

过去,许多主机服务器根据THEN-current命名约定在www。下创建网站作为子域。

我们不再需要这样做。

您将遇到技术上的差异。

重要的是:

  1. 你应该坚持使用任何一个(比如example.com),以获得更好的SEO排名。
  2. 确保其他网站(即www.example.com)指向example.com

  3. 这可以通过以下方式完成:

    1. CNAME是将别名映射到DNS记录中的主名称的DNS标记:在这种情况下," www。"版本的名称。有了这个解决方案,冲浪者可以包括或排除www。并以任何一种方式到达网站。

    2. 在.htaccess文件中进行更改。几个链接供参考:

答案 5 :(得分:0)

在一天结束时,http://www.domain.comhttp://domain.com 他们是2个不同的域名,如果你的目标是http://domain.com上的公关为5,那么显然不希望在http://www.domain.com上得到它

我更喜欢 www。