将多站点安装从HTTP切换到HTTPS

时间:2012-04-10 作者:Ian Dunn

我安装了多站点,URL设置为http://example.com但是现在我想强制所有请求都通过HTTPS,所以我尝试将URL更改为https://example.com。我检查了数据库,更新了所有siteurlhome 值具有https,但站点仍通过HTTP加载,而不是重定向到https。

我知道我可以设置一些htaccess规则,但这很容易出错。在常规安装中,WordPress会自动将所有请求重定向到siteurlhome 设置,所以我假设MultiSite也会这样做。

2 个回复
最合适的回答,由SO网友:Hiranthi 整理而成

有一些插件可以将站点设置为SSL。为什么不使用其中一个呢?

您是否安装了SSL证书并处于活动状态?

SO网友:Manu

我遇到了同样的问题:对于WordPress multisite,没有定义站点域是HTTP还是HTTPS的选项或设置。即使在替换了数据库中的所有事件之后,站点访问者仍然可以在HTTP中进入并导航站点,而无需重定向到HTTPS。

以下简单的解决方案对我有效:我添加了这个mod_rewrite 我的规则。htaccess文件,就在WordPress特定重写规则之前。

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
由于该规则没有定义特定的域,因此非常适合WordPress multisite的需要。

我在以下线程中找到此规则:https://stackoverflow.com/questions/4398951/force-ssl-https-using-htaccess-and-mod-rewrite

结束

相关推荐

管理WordPress MultiSite中的数据库表

我正在开发一个插件,它可以在数据库表中创建和存储一些数据(使用global$wpdb->base\\u前缀)。在WordPress multisite中,我希望子网站所有者只能访问他们创建的数据。处理这个问题的最佳方法是什么?我应该为每个子网站创建新表,还是向表中添加“blog\\u id”列并每次检查?谢谢你的帮助。