时间条件

OpenResty Edge 提供了 2 种类型的时间条件:

  • 绝对时间:用于表示时间范围
  • 相对时间:用于表示时间周期

在时间范围内、不在时间范围内

  • 变量:时间
  • 操作符:在时间范围内/不在时间范围内
  • Value:开始时间及结束时间

示例:

添加 2 条页面规则:

  • 在时间范围内,则输出 “Within”
  • 不在时间范围内,则输出 “Not Within”

结果示例:

$ curl http://test.com/ -v
*   Trying 10.0.0.200:80...
* Connected to test.com (10.0.0.200) port 80 (#0)
> GET / HTTP/1.1
> Host: test.com
> User-Agent: curl/7.79.1
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< Date: Wed, 12 Oct 2022 07:38:31 GMT
< Content-Type: text/plain
< Transfer-Encoding: chunked
< Connection: keep-alive
< Server: openresty+
< Req-ID: 00000080000447e7a7b80006
<
* Connection #0 to host test.com left intact
Within

在时间周期内、不在时间周期内

  • 变量:时间
  • 操作符:在时间周期内/不在时间周期内
  • Value:星期、每天中的开始时间、每天中的结束时间。如:星期一和星期二的 8:00 到 10:00。

示例:

添加 2 条页面规则:

  • 在时间周期内,则输出 “Within”
  • 不在时间周期内,则输出 “Not Within”

结果示例:

$ curl http://test.com/ -v
*   Trying 10.0.0.200:80...
* Connected to test.com (10.0.0.200) port 80 (#0)
> GET / HTTP/1.1
> Host: test.com
> User-Agent: curl/7.79.1
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< Date: Wed, 12 Oct 2022 07:45:32 GMT
< Content-Type: text/plain
< Transfer-Encoding: chunked
< Connection: keep-alive
< Server: openresty+
< Req-ID: 00000080000447e7b4e00007
<
* Connection #0 to host test.com left intact
Not Within