![](/img/trans.png)
[英]example.com and www.example.com are treated as different sessions
[英]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.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)
如何解決此問題,以便兩個地址代表相同的訪問/會話/ cookie?
您必須像這樣設置cookie的域路徑,以使其在所有子域上可用:(www是子域):
.domain.com
它不一樣..通常只需將example.com寫入您的瀏覽器即可訪問www.example.com,但您的瀏覽器會將www添加到您的網址..所以基本上它不一樣
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.