set_local_today
'set_local_today' 指令将本地变量设置为指定格式和作用域的当天日期。
NGINX Set-Misc module
·
httpserverlocationif in serverif in location
语法set_local_today variable_name format_string;
默认值none
上下文http, server, location, if in server, if in location
参数1
说明
'set_local_today' 指令在 NGINX 配置中用于分配一个包含当前日期(格式化为字符串)的本地变量。它在需要用当天日期标记或记录请求的场景中特别有用,尤其是在动态内容生成时。'set_local_today' 所赋的值在请求处理时确定,确保其反映服务器本地时间设置下的正确日期。
该指令期望一个参数:表示日期格式的格式说明符(例如 'YYYY-MM-DD')。该指令可以放在诸如 http、server、location 等上下文中,也可以放在这些上下文内的 if 块中,从而允许在不同配置中灵活使用。作为本地变量,其作用域限定于该请求,不会影响或对服务器正在处理的其他请求可见。
在使用方面,管理员应注意 NGINX 配置中的服务器时区设置,以确保该指令返回的日期准确。格式字符串严格遵循常见的 strftime 约定,允许根据具体需求或偏好进行自定义。
配置示例
location /example {
set_local_today $today "%Y-%m-%d";
add_header X-Today $today;
}⚠
使用不正确的格式字符串可能会导致意外结果或错误。
⚠
确保服务器的时区设置正确以获取准确的日期。
⚠
局部变量在其他上下文中不可访问,请确保在正确的作用域内使用它们。