作者:北熙宝宝@Hikurn_Xi时间:2022-04-17 14:55:11
啊,今天在帮人解决关于IRO主题设置保存报错:
function(){return u(n),r.apply(this,arguments)}
这样的时候,我在之前遇到的情况下,对使用宝塔的服务器添加了白名单,但是依旧不行。
1. 尝试看控制台,返回是“404”状态码,这可不太对劲。
2. 跑去看了看伪静态,正常的伪静态,不应该返回404的。
3. 百思不得其解的时候,发现浏览器的IP提示和服务器IP不一样,询问发现确实用了CDN。
4. 手动回源,没问题,源站OK,正常POST传入,正常的response:200
5. 确定CDN问题了
1. 查看cdn缓存,UCLOUD的控制台可以配置的是真的少,转了一圈,就吧wp-admin/admin-ajax.php 白名单了【是真的没啥可以设置的了!!!!】
2. 刷新缓存,依旧报错,CDN的问题没找到。
3. 找官方协助,官方说是POST的请求,然后给我看了POST和GET的结果。
4. 没找到问题,正常直接POST和GET的回执是正常的,我说是携带了参数和数据的,只有正常携带了才会正常。
5. 官方给了个提醒,POST限制16KB, What?才16KB?疑似问题发现。
6. 手动获得POST的data数据,一看,16.03KB,加上其他仪器传递的数据一起,18.11KB,漂亮,超过了。
7. 尝试和UCLOUD技术支持询问是否能提高,回答:否。
8. 核对是否是这个问题,最后发现:是
UCLOUD的POST请求最多16KB,市面上很多的收费wordpress主题不支持【因为他们设置项很多,传递的data数据也不小,POST很容易超过16KB】+设置选项多的免费主题不支持。
UCLOUD的机制是,超过了请求就直接返回404,造成客户端报错,服务端根本没收到这次POST请求。
适当远离UCLOUD的加速,除非他们解决了这个问题~~~~~~~~~