Htaccess将https重定向到另一个https

egd*_*vid 5 apache .htaccess mod-rewrite ssl redirect

我们刚刚为我们的域名购买了.com扩展名,我们在这两个版本上都使用了ssl证书:

https://www.domain.net
https://www.domain.com
Run Code Online (Sandbox Code Playgroud)

现在我们只想使用.com扩展名,并使用htaccess文件将我们的用户从旧域重定向到新域:

http[s]://domain.net -------|
http[s]://www.domain.net ---|---> https://www.domain.com
http[s]://domain.com -------|
Run Code Online (Sandbox Code Playgroud)

我对htaccess不太熟悉,所以我试过:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^http[s]?://(www\.)?domain\.com(.*)?$
RewriteRule ^(.*)$ http[s]?://www.domain.com/? [R,L]
Run Code Online (Sandbox Code Playgroud)

这显然不起作用!

任何帮助将不胜感激.

anu*_*ava 7

你无法比拟的方案http://RewriteCond %{HTTP_HOST}.

您可以使用此规则:

RewriteEngine On

RewriteCond %{HTTP_HOST} !^www\.domain\.com$ [NC]
RewriteRule ^ https://www.domain.com%{REQUEST_URI} [R=302,L]
Run Code Online (Sandbox Code Playgroud)

  • 谢谢,这是完美的!为了seo的目的,我刚刚更改了302为301. (3认同)
  • 这对我来说很棒,我也从 302 更改为 301。谢谢 (3认同)
  • 实际上在`%{REQUEST_URI}`之前不需要`/`.查看更新的答案. (2认同)