有一个领域:
maindomain.com和三个加载项域:
addondomain.comaddon-domain.comaddondomain.net我的目标是将每个域重定向到https://www.maindomain.com
这就是我尝试过的(.htaccess):
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} (^(?:www\.)?(addondomain|addon-domain)\.com$|^(?:www\.)?addondomain\.net$) [NC]
RewriteRule ^ https://www.maindomain.com%{REQUEST_URI} [R=302,L,NE]或者这个(.htaccess):
RewriteCond %{HTTP_HOST} ^www\.?addondomain\.com [NC]
RewriteRule ^(.*)$ https://www\.maindomain\.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.?addon-domain\.com [NC]
RewriteRule ^(.*)$ https://www\.maindomain\.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.?addondomain\.net[NC]
RewriteRule ^(.*)$ https://www\.maindomain\.com/$1 [R=301,L]
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.maindomain\.com$ [NC]
RewriteRule ^(.*)$ https://www.maindomain.com/$1 [L,R=301]例如,如果将www.addondomain.com或addondomain.com输入为URL,则此操作有效。但是,如果有人键入https://www.addondomain.com,就会出现“此连接不安全”的通知。
我是否必须为每个附加域申请SSL证书才能使其正常工作?或者我的.htaccess文件有什么问题吗?
发布于 2017-10-17 10:02:04
我是否必须为每个附加域申请SSL证书才能使其正常工作?
是。SSL握手(和浏览器错误)发生在请求刚开始时,在服务器(和.htaccess代码)能够处理请求之前。
请注意,这并不一定意味着为每个域安装一个新的SSL证书。您可以获得多域/SAN证书,这是所有现代浏览器所支持的。
RewriteCond %{HTTP_HOST} ^www.?addondomain.com NC RewriteRule ^(.*)$ com/$1 R=301,L RewriteCond %{HTTP_HOST} ^www.?addon-domain.com NC RewriteRule ^(.*)$ com/$1 R=301,L RewriteCond %{HTTP_HOST} ^www.?addondomain.netNC RewriteRule ^(HTTP_HOST)$HTTP_HOST,L %{HTTPS} off或%{}!NC ()$ L,
顺便说一句,您不需要前三个规则块。最后一个就足够了。但是在被否定的条件下删除NC标志。(您还在第三条规则的标志之前缺少了一个空格)。换言之:
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.maindomain\.com$
RewriteRule (.*) https://www.maindomain.com/$1 [L,R=301]https://stackoverflow.com/questions/46785251
复制相似问题