Apache https多域的htaccess重写
我的问题让我发疯了,希望你能帮助我 我有一个webstore,其中两个域链接到同一个路径。而webstore正在根据域选择应该显示哪些内容Apache https多域的htaccess重写,apache,.htaccess,mod-rewrite,https,ssl-certificate,Apache,.htaccess,Mod Rewrite,Https,Ssl Certificate,我的问题让我发疯了,希望你能帮助我 我有一个webstore,其中两个域链接到同一个路径。而webstore正在根据域选择应该显示哪些内容 www.yogabox.de-德语内容 www.yogabox.co.uk-英语内容 我正在尝试重写所有类型的yogabox.de,并为yogabox.co.uk编写相同的代码 结果如下: 我正在使用这些规则: RewriteCond %{HTTPS} off RewriteCond %{HTTP_HOST} !^www\.
- www.yogabox.de-德语内容
- www.yogabox.co.uk-英语内容
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} !^www\.yogabox\.co\.uk$
RewriteCond %{HTTP_HOST} !^yogabox\.co\.uk$
#RewriteCond %{HTTP_HOST} !^www\.yogabox\.de$
RewriteRule ^(.*)$ https://www.yogabox.de/$1 [R=301,L]
RewriteCond %{HTTPS} off
#RewriteCond %{HTTP_HOST} ^yogabox\.co\.uk$
RewriteCond %{HTTP_HOST} !^www\.yogabox\.de$
RewriteCond %{HTTP_HOST} !^yogabox\.de$
RewriteRule ^(.*)$ https://www.yogabox.co.uk/$1 [R=301,L]
只有你和我错了。问题在哪里
我已经用无效证书检查了这个问题,就像这里一样
但是证书对www和不带www都有效。问题是您的规则与
ssl非www
url不匹配,因此从https://example.com
至https://www.example.com
未在您的服务器上发生
您可以使用以下通用规则将域重定向到https://www
:
RewriteEngine on
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$
RewriteRule ^.*$ https://www.%1%{REQUEST_URI} [NE,L,R=301]
在测试这些规则之前,请确保清除浏览器缓存。
RewriteCond%{HTTPS}off
适用于http。您想要什么https://yogabox.de
和https://yogabox.co.uk
<代码>https://www.?这是没有规定的,伙计!这是一条美丽而最好的规则!多谢各位。所有域都已正确重定向。令人惊叹的!断然的!