FORCE_SSLLADMIN影响子域

时间:2016-10-24 作者:dpruth

我在主机的根目录中安装了Wordpress。它包括该主域的SSL证书(例如。domain.com; 不是通配符证书)。

当我包括define(\'FORCE_SSL_ADMIN\', true); 在wp配置中。php,突然所有子域也尝试重定向到https,尽管这些子域没有SSL证书。

有些子域也是Wordpress安装在我的主机的子文件夹中(例如。test.domain.com), 但其他主机则托管在完全不同的主机上。

当我看着chrome://net-internals/#hsts 我明白了:

static_sts_domain: 
static_upgrade_mode: UNKNOWN
static_sts_include_subdomains: 
static_sts_observed: 
static_pkp_domain: 
static_pkp_include_subdomains: 
static_pkp_observed: 
static_spki_hashes: 
dynamic_sts_domain: domain.com
dynamic_upgrade_mode: STRICT
dynamic_sts_include_subdomains: true
dynamic_sts_observed: 1477318558.379693
dynamic_pkp_domain: 
dynamic_pkp_include_subdomains: 
dynamic_pkp_observed: 
dynamic_spki_hashes:  
为什么FORCE\\u SSL\\u ADMIN会影响dynamic_sts_include_subdomains? 在我的WP管理员中保持足够的安全性的同时,是否有任何方法可以解决这个问题?

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

事实证明,我在Network Solutions拥有的共享服务器正在强制HST通过其服务。由于它是一个共享托管服务器,他们拒绝更改它。

解决方案:我购买了一个通配符证书,并将其安装在每个子域的多个服务器上。

SO网友:cowgill

听起来你在用WordPress Multisite 这意味着您的所有域共享相同的wp-config.php.

如果是这种情况,可以通过包装if 关于define( \'FORCE_SSL_ADMIN\', true ).

NOTE: 确保更改domain.com 无论您真正的SSL网站域名是什么。

if ( \'domain.com\' == $_SERVER[\'HTTP_HOST\'] ) {
  define( \'FORCE_SSL_ADMIN\', true );
}