首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么"www.example.com“和"example.com”不一样?

为什么"www.example.com“和"example.com”不一样?
EN

Stack Overflow用户
提问于 2011-11-10 16:34:17
回答 3查看 1.8K关注 0票数 6

我有个网站。如果我登录到此格式的http://example.com域,然后将我的地址更改为http://www.example.com,我发现我的帐户未登录。如果我将地址更改为http://example.com,我发现我的帐户已登录。

我联系了我的主人,他们告诉我这是一个编程问题。

我如何解决这个问题,使两个地址代表相同的访问/会话/cookie?

我正在使用PHP和MySQL

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-11-10 16:43:51

显然,就浏览器而言,www.example.comexample.com是两个不同的域,尽管它们都指向同一个站点。如果你把一个不同的域名放在那里,比如example.net,也会发生同样的事情。

为了解决这个问题,通过.htaccess重写URL是比较常见的。决定您更喜欢使用的域名,并在您的.htaccess中添加如下内容:

代码语言:javascript
运行
复制
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.example.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]

代码语言:javascript
运行
复制
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.com$
RewriteRule (.*) http://www.example.com$1 [R=301]

(第一个删除,第二个添加www)

票数 9
EN

Stack Overflow用户

发布于 2011-11-10 16:37:57

如何解决此问题,使两个地址代表相同的访问/会话/cookies?

您必须像这样设置cookie的域路径,以使其在所有子域中都可用:(www是一个子域):

.domain.com

票数 6
EN

Stack Overflow用户

发布于 2011-11-10 17:21:32

这不一样..通常你只需在浏览器中写下example.com就可以进入www.example.com,但是你的浏览器在你的url中添加了WWW..所以从根本上说,它是不一样的。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8076742

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档