php WP-ADMIN重定向循环

m528fe3b  于 2022-12-17  发布在  PHP
关注(0)|答案(3)|浏览(177)

我们有一个多站点运行约6个站点。
3我们的网站是通过WP管理员访问其他3不是。
浏览器告诉我们有太多的重定向正在进行。这只会发生在我们登录到wp-admin后。wp-login页面工作正常。
我们以前遇到过这个问题,在我们的wp-config中使用以下修复程序解决了现在工作的3个站点:

$_SERVER['HTTPS'] = 'on';

此外,前端工作得很好,这只是WP管理员有问题。

背景资料:
服务器:Nginx + Apache。从Nginx启动,但随后重定向到Apache
SSL:已启用

d4so4syb

d4so4syb1#

根据法典:
如果WordPress托管在一个提供SSL的反向代理服务器上,但是它自己托管在一个没有SSL的服务器上,那么这些选项会将所有请求发送到一个无限重定向循环中。为了避免这种情况,您可以配置WordPress来识别HTTP_X_FORWARDED_PROTO头(假设您已经正确配置了反向代理服务器来设置该头)。
以下操作将解决此问题。
将此文件添加到wp-config.php.(codex reference

/* SSL Settings */
define('FORCE_SSL_ADMIN', true);

/* Turn HTTPS 'on' if HTTP_X_FORWARDED_PROTO matches 'https' */
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false) {
    $_SERVER['HTTPS'] = 'on';
}

Reference

b4lqfgs4

b4lqfgs42#

我也有同样的问题,但我可以解决它。问题是我的管理员用户的能力被设置为订阅者,而不是管理员。可能是从一个会员插件。
在我的数据库表wp_usermeta中,我的管理员用户wp_capabilities被设置为“a:1:{s:10:“订阅者”; B:1;}”
我将其更改为“a:1:{s:13:“管理员”; s:1:“1”;}”,我再次看到了我的控制面板。

k3fezbri

k3fezbri3#

在我的例子中,我使用nginx入口控制器作为kubernetes集群中的反向代理,它在由http协议和nginx而不是apache引擎提供服务的pod中执行TLS终止和wordpress示例,当我在location / {...}块中使用try_files $uri /index.php?$query_string;而不是try_files $uri $uri/ /index.php?$args;时,发生重定向循环

相关问题