set_base32_padding
'set_base32_padding' 指令配置是否在 Base32 编码中添加填充字符。
NGINX Set-Misc module
·
httpserverlocationif in serverif in location
语法set_base32_padding on | off;
默认值off
上下文http, server, location, if in server, if in location
参数flag
说明
set_base32_padding 指令是 NGINX Set-Misc 模块的一部分,影响 Base32 编码的行为。通过启用此指令的填充,可以通过在输出末尾追加 = 字符,使编码后的字符串对齐到固定长度。当 Base32 编码的输出可能被按 Base32 规范期望带有此类填充的系统消费时,这一点很重要。如果禁用填充,编码后的字符串长度可能会根据输入数据大小而变化,可能会导致与某些应用的兼容性问题。
该指令只接受一个参数,即一个标志值。将该标志设置为 'on' 时,会对 Base32 编码的输出应用填充;相反,将其设置为 'off' 则不会添加填充。这样可以根据下游系统解析 Base32 编码数据的具体要求,对编码过程进行精细控制。
配置示例
http {
server {
location / {
set_base32_padding on;
set $encoded_data $arg_data;
set $result_data $encoded_data;
}
}
}⚠
如果禁用填充,请确保下游应用能够处理不带填充的 Base32 字符串。
⚠
不正确的 flag 设置可能导致编码后字符串长度异常。
⚠
如果不确定消费该数据的应用是否兼容 Border32,请记得应用填充。