我有一个网站。如果我使用此格式的域http://example.com登录,然后将我的地址更改为http://www.example.com,我发现我的帐户未登录。如果我将地址更改为http://example.com,我会找到我的帐户已登录。
我联系了我的主人,他们告诉我这是一个编程问题。
如何解决此问题,以便两个地址代表相同的访问/会话/ Cookie?
我正在使用PHP& MySQL的
答案 0 :(得分:9)
www.example.com
和example.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)
答案 1 :(得分:6)
我如何解决这个问题,因此两个地址代表相同 访问/会话/饼干?
您必须像这样设置Cookie的域路径,以使其在所有子域上都可用:(www是子域名):
.domain.com
答案 2 :(得分:-1)
不一样.. 通常只需将example.com写入浏览器即可访问www.example.com,但您的浏览器会将www添加到您的网址中。 基本上它不一样