WordPress上的Cloudfront SSL问题,重定向太多

drkbr07n  于 2023-10-19  发布在  WordPress
关注(0)|答案(3)|浏览(134)

让我先解释一下我们的架构。
www.example.com CNAME指向cloudfront分发(d3xxxxx.cloudfront.net)
Cloudfront的起源:route.example.com.我们在cloudfront分发中选择了Whitelist Headers作为HOST
在Cloudfront上为域安装的SSL:www.example.com
route.domain.com指向安装了apache webserver和wordpress的谷歌云服务器。

问题1.当我们点击URL www.example.com而不应用SSL证书时,主页加载www.example.com,但内部链接重定向到'route.example.com'而不是www.example.com。我们相信这是因为WordPress上的siteurl使用route.example.com
问题2。在cloudfront上应用SSL证书后,当我们点击URL ' https://www.example.com '时,网站最终出现太多重定向

我们已经尝试了URL“WordPress + CloudFront Flexible SSL ends up in redirect loop (https)“,它似乎并没有帮助我们。

目标:我们希望www.example.com使用cloudfront分发沿着SSL,不希望将Web服务器暴露给最终用户。cloudfront的起源应该是route.example.com这将有WordPress的应用程序。

如果你能帮忙的话,我将不胜感激。

sz81bmfz

sz81bmfz1#

我们也遇到过类似的问题。在我们的例子中,我们没有使用自定义域名,而是使用CloudFront URL。
为了让HTTPS正常工作,我们必须做两件事:
1.确保CloudFront-Forwarded-Proto头在所有缓存行为中都被转发,包括默认缓存行为。
1.将以下代码段添加到wp-config.php之前的require_once( ABSPATH . 'wp-settings.php' );

if (isset($_SERVER['HTTP_CLOUDFRONT_FORWARDED_PROTO'])
  && $_SERVER['HTTP_CLOUDFRONT_FORWARDED_PROTO'] === 'https') {
  $_SERVER['HTTPS'] = 'on';
}

代码片段本质上告诉WordPress我们正在反向代理后面运行。这使它能够正确响应HTTPS请求。

u5rb5r59

u5rb5r592#

Cloudfront Distribution Settings我知道这是旧的,但我发现一个原因,这是如果你设置默认的根对象在您的发行到“index.php”的wordpress网站,它会导致这些无限重定向.
如果你缓存的是一个WordPress站点,请将此可选参数留空!

hpcdzsge

hpcdzsge3#

我知道这是一个老问题,但是,当我在这里结束的时候,我想我应该把我的错误贴出来!我们使用Lightsail。
在你的发行版的details页面的底部,你可以设置它如何从你的源文件中提取内容。我们把它设置为http,而我们的网站实际上是https(我希望大多数人都是这样)。更改此设置修复了重定向问题。

相关问题