HTTPS子域保持重定向到HTTPS主域

时间:2017-05-14 20:18:12

标签: php wordpress apache .htaccess ssl

对此感到沮丧所以我希望有人可以提供帮助。我认为这是.htaccess文件中的一个简单修复。

我一直在尝试为我的会员门户网站实施通配符SSL证书。

我的主要域名是www.rawtillwhenever.com,子域名是members.rawtillwhenever.com

我构建了没有安全证书的主域名,并且今天就将其添加到了它。我通过Bluehost购买了通配符证书,然后使用wordpress插件“Really Simple SSL”将其添加到网站。

我已更改成员门户网站上的网址网址以包含https,但它(https // members.rawtillwhenever.com)会继续重定向到https // rawtillwhenever.com

如果我尝试访问http // members.rawtillwhenever.com(没有https),它仍会重定向到https // rawtillwhenever.com

我已经联系了bluehost支持,他们在这里给了我这个文件。 https://my.bluehost.com/cgi/help/766

主域名在子文件夹/ p​​ublic_html / rawtillofnever /中,子域名位于/ public_html / rawtillwhenever / members /

当我使用http / https标头检查时,它会返回:

HTTP/1.1 301 Moved Permanently => 
Date => Sun, 14 May 2017 20:04:11 GMT
Server => Apache
Location => https://www.rawtillwhenever.com/
Cache-Control => max-age=3600
Expires => Sun, 14 May 2017 21:04:11 GMT
Vary => Accept-Encoding,User-Agent
Content-Length => 0
Connection => close
Content-Type => text/html; charset=UTF-8

子域的.htaccess文件是:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

如果有人可以帮助我,那就太棒了,否则我会花时间来解决它。

EDIT 将子域的.htaccess文件更新为:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^members.rawtillwhenever.com$`
RewriteCond %{REQUEST_URI} !^/members/
RewriteRule ^(.*)$ /members/$1
RewriteCond %{HTTP_HOST} ^members.rawtillwhenever.com$`
RewriteRule ^(/)?$ members/index.php [L]

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

仍然获得重定向

1 个答案:

答案 0 :(得分:0)

不确定您的具体配置,但您可能正在寻找的内容如下:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^members.rawtillwhenever.com$`
RewriteCond %{REQUEST_URI} !^/members/
RewriteRule ^(.*)$ /members/$1
RewriteCond %{HTTP_HOST} ^members.rawtillwhenever.com$`
RewriteRule ^(/)?$ members/index.php [L]

之后,请尝试清除浏览器缓存以强制执行新规则。

希望这有帮助! :)