page-redirecting脚本给我一个重定向循环

时间:2015-08-28 03:38:38

标签: javascript .htaccess redirect

我的webhost显示包含和不包含www的每个页面。 subdomain,但是带有子域的URL和没有子域的URL将我带到两个不同的位置(没有重定向)。我遇到的问题是,如果我在example.com/website.html上保存了cookie,它们就不会保存在www.example.com/website.html上。我的解决方案是一个脚本,检查网页的主机名是否有www。前缀,如果是,它将重定向到同一页面,但没有前缀。

下面的代码是我的解决方案,它可以正常运行,但是从www.example.com/website.html更改为example.com/website.html后,网页将继续进入重定向循环

if (document.location.host = 'www.example.com') {
    window.location.href = "http://example.com";
}

我宁愿不使用.htaccess文件,因为我认为我的webhost没有正确配置它,但我愿意尝试使用它。

1 个答案:

答案 0 :(得分:1)

=不是比较运算符,它定义了值...您需要两个==进行比较

if (document.location.host == 'www.example.com') {
    window.location.href = "http://example.com";
}

同样,如果您想尝试使用该方法,可以更新.HTACCESS:

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