文章介绍了流盾WAF导致页面操作失败和登录死循环的问题,分析了可能是WAF回源协议不一致引起的Cookie写入失败或登录接口拦截。建议首先排查HTTPS与Cookie问题,并在wp-config.php中修改配置强制信任WAF传来的协议头,确保WAF回源时使用HTTPS。
轩玮博客
页面右上角弹窗提示“操作失败 0 error,请刷新页面后重试”,同时登录弹窗停留在登录状态(未跳转),这高度符合上一轮提到的 WAF 回源 HTTPS/HTTP 协议不一致导致的 Cookie 写入失败或登录接口被拦截现象。
结合你刚部署的“流盾 WAF(回源端口 8080/4343)”,请按以下优先级排查:
1. 首要排查:HTTPS 与 Cookie 问题(最可能导致登录死循环/失败)
访客通过 WAF 用 HTTPS 访问,但 WAF 回源到源站可能是 HTTP(8080),WordPress 识别为 HTTP 会拒绝写入登录 Cookie。
- 修改
wp-config.php:在/* That's all, stop editing! */前加入,强制信任 WAF 传来的协议头:
if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false) {
$_SERVER['HTTPS'] = 'on';
}
define('FORCE_SSL_ADMIN', true);
// 若数据库未改 https,可临时加这两行强制跳转
// define('WP_HOME', 'https://你的域名');
// define('WP_SITEURL', 'https://你的域名');
页面右上角弹窗提示“操作失败 0 error,请刷新页面后重试”,同时登录弹窗停留在登录状态(未跳转),这高度符合上一轮提到的 WAF 回源 HTTPS/HTTP 协议不一致导致的 Cookie 写入失败或登录接口被拦截现象。
结合你刚部署的“流盾 WAF(回源端口 8080/4343)”,请按以下优先级排查:
1. 首要排查:HTTPS 与 Cookie 问题(最可能导致登录死循环/失败)
访客通过 WAF 用 HTTPS 访问,但 WAF 回源到源站可能是 HTTP(8080),WordPress 识别为 HTTP 会拒绝写入登录 Cookie。
- 修改
wp-config.php:在/* That's all, stop editing! */前加入,强制信任 WAF 传来的协议头: phpphpif (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false) { $_SERVER['HTTPS'] = 'on'; } define('FORCE_SSL_ADMIN', true); // 若数据库未改 https,可临时加这两行强制跳转 // define('WP_HOME', 'https://你的域名'); // define('WP_SITEURL', 'https://你的域名'); - 源站强制跳转关闭:确保源站(8080端口)没有配置 80 跳 443 的强制 HTTPS,由 WAF 统一处理 SSL 终结。
2. 确认回源端口配置
流盾部署日志明确提示:本地网站已改为 HTTP 8080 / HTTPS 4343。
- 进入流盾面板(
http://10.0.0.12:9000/49835362afb4),检查该站点的回源配置,必须填 8080(HTTP)或 4343(HTTPS),不要填 80/443,否则源站端口冲突或回源失败会导致后台异常。
3. WAF 拦截登录接口
“操作失败 0 error”可能是 WAF 防护规则误伤了 wp-login.php 或 Ajax 登录请求。
- 在流盾面板中,将该站点防护临时设为观察模式,或针对以下路径加白(跳过 WAF):
/wp-login.php/wp-admin/*/wp-json/*(若主题用 Json 登录)
- 清理浏览器缓存/Cookie 或用无痕窗口测试,排除旧 Cookie 干扰。
4. 主题/插件交互(辅助排查)
从页面看(子比主题/资源站),弹窗登录通常走 Ajax。若上述 WAF 配置无误仍报“0 error”:
- 临时禁用缓存/安全插件(如 WP Super Cache、其他防火墙插件)。
- 检查浏览器 F12 → 网络(Network) → 点击登录时
admin-ajax.php的响应内容,若为 403 则确系拦截,若为 500 则查 PHP 错误日志。
建议操作顺序:先改 wp-config.php 信任代理 + 确认回源 8080 → 流盾放白后台路径 → 无痕模式登录。
笔墨有情,赞赏留香
您的支持是我们创作的最大动力















暂无评论内容