# 跨版本升级
升级模块均需要按照安装指南中的说明重新安装。
# 从 9.x.x
升级到 10.x.x
- 如果你使用了指令
waf_http_status
,请根据文档将其替换为指令waf_action
。 - 如果你设置了指令
waf_cc_deny
的参数size
,你应该根据文档使用参数zone
来替代。 - 如果你使用了指令
waf_cc_deny
的参数CAPTCHA
,你应该根据文档使用指令waf_action
来替代。
# 从 8.x.x
升级到 9.x.x
- 安装 libmodsecurity (opens new window) 的动态链接库和头文件。
- 在项目根目录下运行命令
git clone -b v2.3.0 https://github.com/troydhanson/uthash.git lib/uthash
。 - 指令
waf_mode
的一些参数被删除,如果你使用了这些参数请删除。- LIBINJECTION
- LIBINJECTION-SQLI
- LIBINJECTION-XSS
- ADV
- 删除高级规则的文件
advanced
。 - 指令
waf_priority
的参数ADV
被删除,如果你使用了此参数请删除。 - 为指令
waf_priority
新增了一个参数MODSECURITY
,如果你使用了此指令请将改参数填写到合适的位置。
# 从 7.x.x
升级到 8.x.x
- 安装
libcurl
的动态链接库和头文件。 - 在项目根目录下运行命令
git clone https://github.com/DaveGamble/cJSON.git lib/cjson
。 - 在项目根目录下运行命令
git clone https://github.com/libinjection/libinjection.git lib/libinjection
。 - 如果你使用了指令
waf_mode
并且使用了该指令的参数CC
或CACHE
,请删除这两个参数。这两个参数的功能已经分别移动进了指令waf_cc_deny
和waf_cache
。 - 如果你想开启 CC 防护,请修改指令
waf_cc_deny
的参数,例如将waf_cc_deny rate=2000r/m duration=1h
改为waf_cc_deny on rate=2000r/m duration=1h
。 - 如果你想开启缓存,请修改指令
waf_cache
的参数,例如将waf_cache capacity=50
改为waf_cache on capacity=50
。 - 如果你在
http
块中使用了指令waf_cc_deny
或waf_cache
,请将这两个指令移动到更内层。 - 如果你使用了指令
waf_cache
并且使用了该指令的参数interval
或percent
,请删除这两个参数,这两个参数已经被移除。 - 如果你使用了指令
waf_priority
,请将VERIFY-BOT
和CAPTCHA
添加进去。
# 从 6.x.x
升级到 7.x.x
- 如果你在
http
块中使用了指令waf_cc_deny
,请将这个指令移动到更内层。
# 从 5.x.x
升级到 6.x.x
- 在规则目录下新建一个名为
advanced
的空文件。 - 如果使用了配置项
waf_priority
,可以将其删除或者按照文档中对该配置项的说明进行修改。