irb(main):019:0> require "date"
=> true
irb(main):020:0> Date.new(2022,1,1).to_s
=> "2022-01-01"
irb(main):021:0> Date.parse("2022-01-01").to_s
=> "2022-01-01"
irb(main):022:0> Date.parse("1st Jan 2022").to_s
=> "2022-01-01"
irb(main):023:0> Date.parse("1/Jan/2022:00:00:00 +0800").to_s
=> "2021-01-01"
irb(main):024:0> Date.parse("1/Jan/2022").to_s
=> "2022-01-01"
irb(main):025:0> Date.parse("1/Jan/2022:00:00:00").to_s
=> "2021-01-01"
偶然发现的现象,Nginx 日志里的这种格式的时间,带上时间或时间+时区后反而格式化错了,而 Date 支持的其他格式都没有问题,简单搜索一下没搜到是什么原因