WordPress启用SSL后无报错但无法登录后台的问题咨询
子域名WordPress启用SSL后后台登录异常排查点
1. WordPress核心配置校验
- 检查子站点
wp-config.php中的站点地址配置,确认是否强制指定了HTTP前缀:
查看是否存在以下两行配置,确保域名前缀为https://:define('WP_HOME', 'https://sub.domain-name.com'); define('WP_SITEURL', 'https://sub.domain-name.com'); - 确认Cookie作用域配置是否异常,主站正常但子站异常大概率和Cookie域配置冲突有关:
如果wp-config.php中存在自定义Cookie域配置,检查是否错误指定为了主站域,正确的子站配置参考:
如果之前为了主站跨域配置过Cookie域未区分子站,会导致HTTPS下子站登录态Cookie无法正确写入,触发密码错误误报。define('COOKIE_DOMAIN', 'sub.domain-name.com'); define('COOKIEPATH', '/'); define('SITECOOKIEPATH', '/');
2. Nginx服务端配置排查
- 检查子站的HTTPS server块中是否正确转发了HTTPS标识给WordPress:
需要在配置中添加以下参数,否则WordPress无法识别当前请求是HTTPS,会继续返回HTTP的登录跳转逻辑,导致Cookie校验失败:location ~ \.php$ { # 其他原有配置不变,新增以下两行 fastcgi_param HTTPS on; fastcgi_param HTTP_X_FORWARDED_PROTO https; } - 确认子站的80端口跳转规则是否正确,是否存在跳转时丢失登录POST参数的问题:
避免使用301跳转处理登录接口请求,临时跳转为302,且确保POST请求跳转时不会丢弃参数。
3. Really Simple SSL插件配置校验
- 插件禁用状态下进入HTTP后台,重新启用插件前先检查插件的环境检测结果,确认是否识别到子站的SSL证书、站点地址是否匹配。
- 检查插件是否开启了混合内容修复之外的额外跳转规则,比如301重定向、HSTS配置是否错误覆盖了主站规则。
- 检查WordPress数据库中
wp_options表(子站如果是多站点的话对应表前缀可能不同)的siteurl和home字段值,确认插件启用后是否正确修改为了HTTPS前缀。
4. 缓存与Cookie清理
- 完全删除浏览器中对应子站的所有Cookie、本地存储数据,避免旧的HTTP下的Cookie和新HTTPS下的Cookie冲突。
- 检查服务端是否开启了页面缓存、Redis/Object Cache之类的缓存组件,是否缓存了登录接口的返回结果,清空所有缓存后再测试登录。
内容的提问来源于stack exchange,提问作者py_ml
相关产品推荐
相关产品推荐

