1

我有一个网站http://abcd.com我想重定向到http://efgh.com。这行得通。

但不幸的是,我必须使用域名托管服务商提供的 .htaccess,因为第一个 URL 后面没有实际的网络空间。

问题是第二页中的 .htaccess 和 meta-refresh 并没有真正更新浏览器的 URL(即,即使我们在 efgh.com,位置栏仍然显示 abcd.com)。这是一个问题,因为来自页面的 cookie 因此被视为第三方 cookie。

如何更改浏览器认为它所在的 URL 以解决 cookie 问题?

编辑:也许我不够清楚:重定向本身有效内容来自efgh.com。_ 但是浏览器中的地址栏显示abcd.com,这很重要,因为它将 efgh.com 的 cookie 转换为第三方 cookie。

EDIT2:啊,在把我的头撞到墙上很久之后,我现在才意识到域名托管服务商将我装进了一个隐藏的框架集。我不敢相信我这么愚蠢,并没有早点意识到这一点。

4

2 回答 2

0

实现此目的的一种方法是在 .htaccess 文件中为旧域发送 301 重定向。

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

注意R=301最后一行的 - 这将告诉浏览器移动是永久的 - 然后浏览器将移动到另一个域。

于 2013-09-20T12:23:41.550 回答
0

确保使用R' flag in yourRewriteRule` 进行外部重定向(更改 URL)。

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(www\.)?abcd\.com$ [NC]
RewriteRule ^ http://efgh.com%{REQUEST_URI} [R=301,L]

由于您在R=301这里使用,请确保在不同的浏览器中进行测试。

于 2013-09-20T12:21:46.820 回答