繁体   English   中英

为什么“www.example.com”与“example.com”不一样?

[英]Why is “www.example.com” not the same as “example.com”?

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

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

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

我正在使用PHP和MySQL

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

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

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.example.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]

要么

RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.com$
RewriteRule (.*) http://www.example.com$1 [R=301]

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

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

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

.domain.com

它不一样..通常只需将example.com写入您的浏览器即可访问www.example.com,但您的浏览器会将www添加到您的网址..所以基本上它不一样

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM