我的知识记录

修改帝国CMS模板出现Application Firewall Alert错误的原因与解决

帝国CMS(EmpireCMS)修改模板时出现"Application Firewall Alert"(应用防火墙告警),是服务器端的Web应用防火墙(WAF)拦截了请求。

错误原因。"Application Firewall Alert"是ModSecurity或云WAF(阿里云云盾、腾讯云安全、宝塔防火墙)的拦截提示。修改模板时,模板内容里可能包含被WAF规则判定为攻击的字符,如SQL关键字、script标签、PHP代码、特殊函数等。帝国CMS模板支持PHP和SQL,修改时提交的内容触发了WAF规则。

常见触发内容。1. PHP代码:模板里的<?php ?>、<?=$bqr?>等,被WAF当成PHP注入。2. SQL查询:灵动标签[e:loop={'select ...'}]里的SQL语句,包含select、union、where等关键字,被当成SQL注入。3. JavaScript:模板里的