Wordpress 重定向到主主机

问题描述 投票:0回答:1

我正在寻找一个 WP php 规则,以便始终通过所需主机提供任何网页服务,而不添加重定向规则,在这种情况下这不是一个选项。见下文。

我们的主站点位于一台服务器上,WordPress 安装在另一台服务器上。我们使用 cloudflare 工作人员通过主服务器 (domain.com/blog) 的子目录来提供博客内容 (blog.domain)。

为了避免 WP 管理端出现一些问题,我们必须修改 wp-config.php 以指定正确的主机,该主机将是主域/博客

$_SERVER['REQUEST_URI'] = '/blog' . $_SERVER['REQUEST_URI'];
$_SERVER['SCRIPT_NAME'] = '/blog' . $_SERVER['SCRIPT_NAME'];
$_SERVER['PHP_SELF'] = '/blog' . $_SERVER['PHP_SELF'];
$_SERVER['HTTP_HOST'] = 'www.domain.com';

来源:https://core.trac.wordpress.org/ticket/36201#comment:17

我后来注意到的是(1)WP admin总是将子域重定向到所需的主机,所以如果我通过原始子域进入wp管理面板,它将重定向到主域/博客/wp-admin。 (2) 即使我点击前端 URL 并且登录到 WP 管理员,也会发生同样的情况,主机将被替换。 (3) 如果我没有登录管理面板,但我使用带有查询参数的 URL,例如

https://sub.domain.com/?page_id=3

它将使用干净的 URL 重定向到所需的主机。

我的问题是如何让 WP 始终重定向到所需的主机?在 PHP 或 apache/Nginx 中使用简单的重定向规则将导致无限循环(因为子目录依赖于内容的子域)

wordpress cloudflare-workers
1个回答
0
投票

您需要将“站点地址”设置为

domain.com/blog
保留“WordPress地址”以指向
blog.domain.com
子域。

进一步阅读:

© www.soinside.com 2019 - 2024. All rights reserved.