如何将多站点子域从http转换为HTTPS

时间:2019-02-07 作者:Muhammad Umer Naeem

我已经在主域alaksns上创建了一个WordPress多站点。使用ssl证书安全的com。然后我添加了一个新站点作为博客。阿拉克森。com,它只在使用http访问时工作。当我尝试使用https访问它时,它会给出一个空白页。我还尝试通过添加https从网络设置更改网站的url,但它给出了404错误

2 个回复
SO网友:Lucien Dubois

我知道您希望保留一个站点ssl和另一个站点非ssl。很抱歉,我建议在两者上都使用ssl,请尝试以下方法:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^blog\\.alaksns\\.com$ [NC]
RewriteCond %{HTTP_HOST} ^alaksns\\.com [NC]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI}

SO网友:Rick Hellewell

我喜欢一个简单、多用途的htaccess,以便在所有站点请求上启用https:

RewriteEngine On

RewriteCond %{HTTPS} !=on

RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 
此外,进入“网络管理”、“站点”,然后编辑每个站点,然后是每个站点的“设置”选项卡。将站点的所有http更改为https。(一些插件可能有http,因此更改它们将消除浏览器中的“混合”警告。)

此外,您还需要更改所有网站上的所有媒体URL。使用搜索/替换插件(我喜欢“更好的搜索和替换”,但请检查您选择的支持多站点的插件)进行更改是最简单的http://www.example.comhttps://www.example.com (使用您的域名)。

虽然上面的htaccess可能会处理插件/主题/媒体等中的http,但我喜欢更完整的过程,所以我会根据需要更改所有内容。当然,首先备份数据库。