301问题在同一网站空间上有2个URL

时间:2018-11-10 13:05:43

标签: apache .htaccess redirect

我有2个域,旧域是mjvandco.co.uk,他希望将此重定向到mjvlaw.co.uk。我俩都指向同一个Web空间,但是当我使用https://httpstatus.io/测试URL时,会得到不同的结果。

我的htaccess中有以下内容以及其他内容,但这是重定向内容:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.mjvlaw\.co\.uk 
RewriteRule (.*) https://www.mjvlaw.co.uk/$1 [R=301,L]


# Remove .html (excluding blog)
RewriteCond %{REQUEST_URI} !^/blog(.*)$
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*\.html\ HTTP/
RewriteRule ^(.*)\.html$ /$1 [R=301,L]

现在唯一不正确的URL是http://www.mjvlaw.co.uk/。我使用了this site

https://mjvlaw.co.uk-转到https://www.mjvlaw.co.uk
http://mjvlaw.co.uk-转到https://www.mjvlaw.co.uk
http://www.mjvlaw.co.uk-无法使用,因为无法访问https
https://www.mjvlaw.co.uk-很好

但是,当我对旧域执行相同操作时,所有功能均应正常运行,并且下面的每个功能也都https://www.mjvlaw.co.uk
https://www.mjvandco.co.uk
https://mjvandco.co.uk
http://mjvandco.co.uk
http://www.mjvandco.co.uk

我在这里做蠢事吗?我应该创建另一个Webspace并为旧域创建一个文件夹,为当前域创建一个文件夹,并且每个都有自己的htaccess文件吗?
谢谢。我大约一个月前做了另一张票,但是我不确定如何更改问题,所以我为类似的票道歉。

1 个答案:

答案 0 :(得分:0)

您的规则仅将non-www HTTP URL重定向到站点的SSL版本。要同时重定向non-wwwwww http版本,请使用以下内容替换您的第一个重写块

RewriteCond ℅{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.mjvlaw\.co\.uk 
RewriteRule (.*) https://www.mjvlaw.co.uk/$1 [R=301,L]

在测试之前,请确保清除浏览器缓存。