.htaccess 多个域重定向到一次 https 没有 www

标签 .htaccess ssl redirect https

我有几个域:

www.xxx.com xxx.com

www.xxx.co xxx.co

www.xx.io xxx.io

如何将所有域重定向到 https://xxx.io

我有一个不带 www 的 https 重定向:

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

RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

最佳答案

在您的 .htaccess 中使用此规则:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^(www\.)?example.io [NC]
RewriteRule ^(.*)$ https://example.io%{REQUEST_URI} [L,R=301]

条件检查 URL 是 www.example.io 还是 exmaple.io,如果不是,那么它将重写它。

我使用了 R=301,这是一个永久重定向。出于测试目的,我建议您将其更改为 RR=302,这是临时的。

确保在测试之前清除缓存。

关于.htaccess 多个域重定向到一次 https 没有 www,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51769269/

相关文章:

apache - ACM 上的通配符 SSL 但不适用于子域

ssl - 证书 key 使用警告

.htaccess 要求域的 WWW,但如果存在且没有硬编码则允许子域

redirect - 端口通过主机名重定向到 docker 容器

.htaccess - Mod在子文件夹上重写

html - 将目录重定向到目录中的文件

apache - mod_rewrite 与多个查询字符串?

apache - 无法在 nginx 上使用 .html 名称重命名特定 .php 文件

java - 使用 Spring RestTemplate、Maven 和 HTTPS 进行集成测试——客户端连接?

jquery - 使用 JQuery 重定向到第三方页面并预填充表单值