typecho开启CDN加速后无法登陆后台-解决办法

后台访问地址都是直接域名加上 /admin,访问地址很正常,但是输入账号密码登录的时候,就会一直在登录界面死循环,

应用场景:博客网站使用的是typecho搭建,网站加速使用的是又拍云
由于刚加入又拍云的联盟计划,对又拍云的CDN设置不熟悉,好多设置都不太明确,所以出现了很多问题。这边记录一下,给自己和其他遇到类似问题的朋友提个醒。

设置参数跟随

我们去又拍云CDN服务的配置中找到缓存控制,然后点击参数跟随,并且设置参数跟随模式为全程跟随
全程跟随:当选择【全程跟随】模式时,此时将不会忽略用户请求 URL 中 “?” 之后的参数,该模式下,可能会降低资源文件的缓存命中率,请根据业务情况合理配置。
参数跟随.png

缓存配置

缓存配置就是设置网站的那些文件或者目录需要被CDN服务加速缓存,哪些不被CDN服务缓存。
缓存规则
这是需要被缓存的。
我们需要设置全局为关的状态,其他的配置都是一些静态文件的缓存,这样就会使得网站速度变快。

不缓存规则
不缓存配置会优先被CDN处理
不缓存规则.png
这里主要添加三项设置

/index.php/action/*
/admin/*
/*.(php,php5,asp,aspx)

添加这三个网站路径,然后点击保存即可。前面两个是后台、登陆、登出,我们设置设置非缓存,后面一个是网站的动态文件,我们也设置非缓存模式。
我的情况到这步就解决了,如果其他朋友还没成功,可以再检查看看下面的这个部分


边缘规则

到上面这一步,网站还是不能正常的登录,所以还需要设置一下边缘规则,让其携带参数。让在未开启CDN的时候访问后台,地址栏会多出referer参数。
首先打开又拍云CDN控制台中的边缘规则设置,然后添加一条规则,规则如下:
重定向地址:
https://www.yoursite.com/admin/login.php?referer=https://www.yoursite.com/admin
https://www.yoursite.com/admin/login.php 这一节是你的网站后台登录地址,?referer=表示重定向到一个地址,https://www.yoursite.com/admin 这个就是重定向后的地址。

设置到这里,网站就应该能正常登录了,我们在网站地址的后面加上 /admin,地址栏就会自动的重定向到一个新的位置

然后输入账号密码就会到后台页面了。
最后,我们设置完边缘规则后会处于测试阶段,测试没有问题之后,我们就可以切换为启用状态。

TypechoCDN又拍云建站