阿里云使用CDN加速访问出现“重定向的次数过多”的解决办法

配置了阿里云CDN或者全站加速后,使用浏览器进行访问,出现如下错误提示。

XXX.XXX.XXX 将您重定向的次数过多。
尝试清除 Cookie.
ERR_TOO_MANY_REDIRECTS

一、问题原因

源站开启了HTTP重定向至HTTPS的功能,并且CDN控制台上配置的回源端口为80。在这种情况下,由于CDN回源端口为80,客户端无论是通过HTTP还是HTTPS访问CDN加速域名时,CDN在回源的时候都是使用HTTP请求源站,此时会触发源站的HTTPS强制跳转逻辑,然后源站会要求CDN重新发送一个HTTPS的请求,但是CDN回源的时候仍然会发送HTTP回源请求,然后再进行跳转,以此类推,就会出现反复重定向问题,最终导致出现报错。

二、解决方法

(一)方法一
登录CDN控制台,在域名管理页面单击目标域名对应的管理,然后单击 修改配置,将CDN的回源端口设置为443,并单击 确定。设置为443端口以后,CDN回源时会以HTTPS协议请求源站,就不会触发源站的强制跳转逻辑。

(二) 方法二
将协议跟随回源设置为“跟随”。设置为跟随以后,源站发起HTTPS重定向以后,CDN回源协议跟随为HTTPS回源。

登录CDN控制台—>在左侧导航栏,单击域名管理—>在域名管理页面,单击目标域名对应的管理—>在指定域名的左侧导航栏,单击回源配置—>在回源协议区域,打开回源协议开关—>单击修改配置—>在静态协议跟随回源对话框,选择的回源协议类型为:跟随、HTTP或HTTPS。

(三) 方法三
如果不希望将CDN的回源端口改成443,仍希望CDN以HTTP协议回源,这种情况下可以考虑关闭源站的HTTP重定向至HTTPS的强制跳转功能。

(四)方法四

这个不叫解决方法,把你的域名解析迁移至阿里云运解析。我开始解析在DNSPOD(这个后来被鹅厂收购),不论怎么搞,就是不行,不是这问题就是那问题,后来迁入阿里云解析,使用CDN 加速,没有一点问题啊,奇怪了。

三 、特别注意

如果按照上述建议修改配置以后问题还未解决,则可能是301被CDN节点缓存了,需要刷新下CDN的缓存(登录CDN控制台 —> 在左侧导航栏,单击刷新预热 —> 在刷新缓存区域,您可以根据所需,配置刷新或预热信息)。下面是一个异常现象的案例,访问HTTPS的URL以后,301重定向Location到同样的HTTPS地址,从Response Headers里可以看到301被CDN HIT缓存住了。

为您推荐

发表评论

电子邮件地址不会被公开。 必填项已用*标注