You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@apisix.apache.org by gi...@apache.org on 2021/05/08 14:28:39 UTC

[apisix-website] branch asf-site updated: deploy: 1ba9782eab40314237988c5e8e4f7d698940da37

This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/apisix-website.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new c1695df  deploy: 1ba9782eab40314237988c5e8e4f7d698940da37
c1695df is described below

commit c1695df118f7e1e728a19b72be8873b1569a38b3
Author: juzhiyuan <ju...@users.noreply.github.com>
AuthorDate: Sat May 8 14:28:25 2021 +0000

    deploy: 1ba9782eab40314237988c5e8e4f7d698940da37
---
 404.html                                           |  8 ++---
 .../{19945770.a33d6a46.js => 19945770.d2953378.js} |  2 +-
 assets/js/1c89ab3b.2e2d8f4a.js                     |  1 +
 assets/js/1c89ab3b.8caa3515.js                     |  1 -
 assets/js/1ed156ee.950b212d.js                     |  1 -
 assets/js/1ed156ee.abdfea71.js                     |  1 +
 assets/js/21974872.29fe17da.js                     |  1 +
 .../{3393d167.4d0b91d4.js => 3393d167.f88c5383.js} |  2 +-
 .../{358566b4.809f5ab8.js => 358566b4.959a2e0c.js} |  2 +-
 assets/js/38095436.d061658d.js                     |  1 +
 .../{3dc9f306.9788c6ac.js => 3dc9f306.216fc5fa.js} |  2 +-
 .../{40fb2fae.ae8c8700.js => 40fb2fae.6b8e9bae.js} |  2 +-
 .../{50facf8e.edcdaf38.js => 50facf8e.65f847ef.js} |  2 +-
 .../{601c6eaa.50047dbe.js => 601c6eaa.4cf2a695.js} |  2 +-
 .../{66fbb9c2.46b8b0fe.js => 66fbb9c2.696bcf76.js} |  2 +-
 .../{7193710f.393d48eb.js => 7193710f.ba26b407.js} |  2 +-
 .../{7af3052c.45f9846a.js => 7af3052c.4a2b9e7c.js} |  2 +-
 .../{8e784bf3.6551a672.js => 8e784bf3.1a546879.js} |  2 +-
 assets/js/9da58367.132a7784.js                     |  1 +
 assets/js/9da58367.664cb6b0.js                     |  1 -
 .../{adbb350b.ec3756b1.js => adbb350b.7e633846.js} |  2 +-
 .../{b28b7341.0bf72feb.js => b28b7341.38cafc15.js} |  2 +-
 .../{d18db9b0.b7e71c84.js => d18db9b0.4c1ffd65.js} |  2 +-
 .../{d2247e49.e05ceca6.js => d2247e49.ad89cf8d.js} |  2 +-
 assets/js/main.20323177.js                         |  2 ++
 .../js/main.20323177.js.LICENSE.txt                |  0
 assets/js/main.2a1b2c66.js                         |  2 --
 assets/js/runtime~main.82efd67e.js                 |  1 +
 assets/js/runtime~main.bc7ee1e1.js                 |  1 -
 blog/2020/08/22/new-website/index.html             |  8 ++---
 .../index.html                                     |  8 ++---
 .../index.html                                     |  8 ++---
 .../21/run-ingress-apisix-on-amazon-eks/index.html | 10 +++---
 .../index.html                                     |  8 ++---
 .../index.html                                     |  8 ++---
 .../index.html                                     |  8 ++---
 .../index.html                                     |  8 ++---
 blog/index.html                                    |  8 ++---
 docs/apisix/FAQ/index.html                         |  8 ++---
 docs/apisix/IGNORE_DOC/index.html                  | 10 +++---
 docs/apisix/admin-api/index.html                   |  8 ++---
 docs/apisix/architecture-design/apisix/index.html  |  8 ++---
 .../apisix/architecture-design/consumer/index.html |  8 ++---
 .../architecture-design/debug-mode/index.html      |  8 ++---
 .../architecture-design/global-rule/index.html     |  8 ++---
 .../architecture-design/plugin-config/index.html   |  8 ++---
 docs/apisix/architecture-design/plugin/index.html  |  8 ++---
 docs/apisix/architecture-design/route/index.html   |  8 ++---
 docs/apisix/architecture-design/router/index.html  |  8 ++---
 docs/apisix/architecture-design/script/index.html  |  8 ++---
 docs/apisix/architecture-design/service/index.html |  8 ++---
 .../apisix/architecture-design/upstream/index.html |  8 ++---
 docs/apisix/aws/index.html                         |  8 ++---
 docs/apisix/batch-processor/index.html             |  8 ++---
 docs/apisix/benchmark/index.html                   |  8 ++---
 docs/apisix/control-api/index.html                 |  8 ++---
 .../customize-nginx-configuration/index.html       |  8 ++---
 docs/apisix/debug-function/index.html              |  8 ++---
 docs/apisix/discovery/consul_kv/index.html         |  8 ++---
 docs/apisix/discovery/dns/index.html               |  8 ++---
 docs/apisix/discovery/eureka/index.html            |  8 ++---
 docs/apisix/discovery/index.html                   |  8 ++---
 docs/apisix/discovery/nacos/index.html             |  8 ++---
 .../index.html                                     |  8 ++---
 docs/apisix/getting-started/index.html             |  8 ++---
 docs/apisix/grpc-proxy/index.html                  |  8 ++---
 docs/apisix/health-check/index.html                |  8 ++---
 docs/apisix/how-to-build/index.html                |  8 ++---
 docs/apisix/https/index.html                       |  8 ++---
 docs/apisix/install-dependencies/index.html        |  8 ++---
 docs/apisix/mtls/index.html                        |  8 ++---
 docs/apisix/plugin-develop/index.html              | 10 +++---
 docs/apisix/plugin-interceptors/index.html         |  8 ++---
 docs/apisix/plugins/api-breaker/index.html         |  8 ++---
 docs/apisix/plugins/authz-keycloak/index.html      |  8 ++---
 docs/apisix/plugins/basic-auth/index.html          |  8 ++---
 docs/apisix/plugins/batch-requests/index.html      |  8 ++---
 .../apisix/plugins/consumer-restriction/index.html |  8 ++---
 docs/apisix/plugins/cors/index.html                |  8 ++---
 docs/apisix/plugins/dubbo-proxy/index.html         |  8 ++---
 docs/apisix/plugins/echo/index.html                |  8 ++---
 docs/apisix/plugins/error-log-logger/index.html    |  8 ++---
 docs/apisix/plugins/fault-injection/index.html     |  8 ++---
 docs/apisix/plugins/grpc-transcode/index.html      |  8 ++---
 docs/apisix/plugins/hmac-auth/index.html           |  8 ++---
 docs/apisix/plugins/http-logger/index.html         |  8 ++---
 docs/apisix/plugins/index.html                     |  8 ++---
 docs/apisix/plugins/ip-restriction/index.html      |  8 ++---
 docs/apisix/plugins/jwt-auth/index.html            |  8 ++---
 docs/apisix/plugins/kafka-logger/index.html        |  8 ++---
 docs/apisix/plugins/key-auth/index.html            |  8 ++---
 docs/apisix/plugins/limit-conn/index.html          |  8 ++---
 docs/apisix/plugins/limit-count/index.html         | 10 +++---
 docs/apisix/plugins/limit-req/index.html           |  8 ++---
 docs/apisix/plugins/log-rotate/index.html          |  8 ++---
 docs/apisix/plugins/mqtt-proxy/index.html          |  8 ++---
 docs/apisix/plugins/node-status/index.html         |  8 ++---
 docs/apisix/plugins/openid-connect/index.html      |  8 ++---
 docs/apisix/plugins/prometheus/index.html          |  8 ++---
 docs/apisix/plugins/proxy-cache/index.html         |  8 ++---
 docs/apisix/plugins/proxy-mirror/index.html        |  8 ++---
 docs/apisix/plugins/proxy-rewrite/index.html       |  8 ++---
 docs/apisix/plugins/redirect/index.html            | 10 +++---
 docs/apisix/plugins/referer-restriction/index.html |  8 ++---
 docs/apisix/plugins/request-id/index.html          |  8 ++---
 docs/apisix/plugins/request-validation/index.html  |  8 ++---
 docs/apisix/plugins/response-rewrite/index.html    |  8 ++---
 docs/apisix/plugins/server-info/index.html         |  8 ++---
 docs/apisix/plugins/serverless/index.html          |  8 ++---
 docs/apisix/plugins/skywalking/index.html          |  8 ++---
 docs/apisix/plugins/sls-logger/index.html          |  8 ++---
 docs/apisix/plugins/syslog/index.html              |  8 ++---
 docs/apisix/plugins/tcp-logger/index.html          |  8 ++---
 docs/apisix/plugins/traffic-split/index.html       |  8 ++---
 docs/apisix/plugins/udp-logger/index.html          |  8 ++---
 docs/apisix/plugins/uri-blocker/index.html         |  8 ++---
 docs/apisix/plugins/wolf-rbac/index.html           |  8 ++---
 docs/apisix/plugins/zipkin/index.html              |  8 ++---
 docs/apisix/profile/index.html                     |  8 ++---
 docs/apisix/router-radixtree/index.html            |  8 ++---
 docs/apisix/stand-alone/index.html                 |  8 ++---
 docs/apisix/stream-proxy/index.html                |  8 ++---
 docs/dashboard/FAQ/index.html                      |  8 ++---
 docs/dashboard/I18N_USER_GUIDE/index.html          |  8 ++---
 docs/dashboard/IGNORE_DOC/index.html               | 10 +++---
 .../dashboard/IMPORT_OPENAPI_USER_GUIDE/index.html |  8 ++---
 docs/dashboard/USER_GUIDE/index.html               |  8 ++---
 docs/dashboard/api/api/index.html                  |  8 ++---
 docs/dashboard/back-end-tests/index.html           |  8 ++---
 docs/dashboard/deploy-with-docker/index.html       |  8 ++---
 docs/dashboard/deploy-with-rpm/index.html          |  8 ++---
 docs/dashboard/deploy/index.html                   |  8 ++---
 docs/dashboard/develop/index.html                  |  8 ++---
 docs/dashboard/front-end-e2e/index.html            |  8 ++---
 docs/docker/IGNORE_DOC/index.html                  | 10 +++---
 docs/docker/build/index.html                       |  8 ++---
 docs/docker/example/index.html                     |  8 ++---
 docs/docker/manual/index.html                      |  8 ++---
 docs/general/2fa/index.html                        | 10 +++---
 docs/general/committer-guide/index.html            | 10 +++---
 docs/general/contributor-guide/index.html          | 10 +++---
 .../general/integrate-with-project-docs/index.html | 10 +++---
 docs/general/release-guide/index.html              | 10 +++---
 docs/general/security/index.html                   | 10 +++---
 docs/general/subscribe-guide/index.html            | 10 +++---
 docs/helm-chart/IGNORE_DOC/index.html              | 10 +++---
 docs/helm-chart/apisix-dashboard/index.html        |  8 ++---
 .../apisix-ingress-controller/index.html           |  8 ++---
 docs/helm-chart/apisix/index.html                  |  8 ++---
 docs/index.html                                    |  8 ++---
 docs/ingress-controller/FAQ/index.html             |  8 ++---
 docs/ingress-controller/IGNORE_DOC/index.html      | 10 +++---
 .../concepts/apisix_cluster_config/index.html      | 36 ++++++++++++++++++++++
 .../concepts/apisix_route/index.html               | 10 +++---
 .../concepts/apisix_tls/index.html                 |  8 ++---
 .../concepts/apisix_upstream/index.html            |  8 ++---
 docs/ingress-controller/contribute/index.html      |  8 ++---
 docs/ingress-controller/deployments/ack/index.html |  8 ++---
 docs/ingress-controller/deployments/aws/index.html |  8 ++---
 .../deployments/azure/index.html                   |  8 ++---
 docs/ingress-controller/deployments/gke/index.html |  8 ++---
 .../deployments/k3s-rke/index.html                 |  8 ++---
 .../deployments/kubesphere/index.html              |  8 ++---
 .../deployments/minikube/index.html                |  8 ++---
 docs/ingress-controller/deployments/tke/index.html |  8 ++---
 docs/ingress-controller/design/index.html          |  8 ++---
 docs/ingress-controller/development/index.html     |  8 ++---
 docs/ingress-controller/getting-started/index.html |  8 ++---
 docs/ingress-controller/practices/index/index.html |  8 ++---
 .../index.html                                     |  8 ++---
 .../practices/proxy-the-httpbin-service/index.html |  8 ++---
 .../references/apisix_cluster_config/index.html    | 27 ++++++++++++++++
 .../references/apisix_route_v1/index.html          |  8 ++---
 .../references/apisix_route_v2alpha1/index.html    | 10 +++---
 .../references/apisix_tls/index.html               |  8 ++---
 .../references/apisix_upstream/index.html          |  8 ++---
 downloads/ProjectCard/index.html                   |  8 ++---
 downloads/index.html                               |  8 ++---
 .../index.html                                     |  8 ++---
 .../index.html                                     |  8 ++---
 .../02/09/release-apache-apisix-2.3/index.html     |  8 ++---
 .../index.html                                     |  8 ++---
 .../release-apache-apisix-dashboard-2.4/index.html |  8 ++---
 .../03/05/release-apache-apisix-2.4/index.html     |  8 ++---
 .../index.html                                     |  8 ++---
 .../04/05/release-apache-apisix-2.5/index.html     |  8 ++---
 .../index.html                                     |  8 ++---
 .../release-apache-apisix-dashboard-2.6/index.html |  8 ++---
 events/index.html                                  |  8 ++---
 help/index.html                                    |  8 ++---
 index.html                                         |  8 ++---
 search/index.html                                  |  8 ++---
 sitemap.xml                                        |  2 +-
 team/index.html                                    |  8 ++---
 zh/404.html                                        |  8 ++---
 .../{19945770.e77691b0.js => 19945770.2c6737e1.js} |  2 +-
 zh/assets/js/1c89ab3b.1221bf10.js                  |  1 -
 zh/assets/js/1c89ab3b.6227add0.js                  |  1 +
 zh/assets/js/21974872.2cb00284.js                  |  1 +
 .../{3393d167.6ee26a5b.js => 3393d167.5c7e2e7d.js} |  2 +-
 .../{358566b4.7b836ba1.js => 358566b4.83111334.js} |  2 +-
 zh/assets/js/38095436.0e51d174.js                  |  1 +
 .../{3dc9f306.a15c4cf5.js => 3dc9f306.1c6a9094.js} |  2 +-
 .../{40fb2fae.d06432ee.js => 40fb2fae.30eb7729.js} |  2 +-
 .../{50facf8e.8aa706a0.js => 50facf8e.d0319793.js} |  2 +-
 .../{5b5df5a4.8c2cfd56.js => 5b5df5a4.e0d5fce7.js} |  2 +-
 .../{601c6eaa.a91bd114.js => 601c6eaa.0e6a7c6a.js} |  2 +-
 .../{66fbb9c2.ad80d31f.js => 66fbb9c2.c535fc94.js} |  2 +-
 .../{7af3052c.ebc466fd.js => 7af3052c.815ef8ef.js} |  2 +-
 .../{8e784bf3.bc5227a1.js => 8e784bf3.12f48f8b.js} |  2 +-
 zh/assets/js/9da58367.2937ba54.js                  |  1 +
 zh/assets/js/9da58367.b326e697.js                  |  1 -
 .../{adbb350b.d272db7c.js => adbb350b.837c3bbf.js} |  2 +-
 .../{d18db9b0.e8492aa1.js => d18db9b0.313bacd7.js} |  2 +-
 .../{d2247e49.b1294619.js => d2247e49.57f2719c.js} |  2 +-
 .../{ece6e754.f56fdac4.js => ece6e754.a10440e6.js} |  2 +-
 zh/assets/js/fc9a947c.86b1e77e.js                  |  1 +
 zh/assets/js/fc9a947c.d8b02cc2.js                  |  1 -
 zh/assets/js/main.6d9ac8a0.js                      |  2 --
 zh/assets/js/main.c4271929.js                      |  2 ++
 .../assets/js/main.c4271929.js.LICENSE.txt         |  0
 zh/assets/js/runtime~main.0393718b.js              |  1 -
 zh/assets/js/runtime~main.b3b84ca9.js              |  1 +
 zh/blog/2020/08/22/new-website/index.html          |  8 ++---
 .../index.html                                     |  8 ++---
 .../index.html                                     |  8 ++---
 .../21/run-ingress-apisix-on-amazon-eks/index.html | 10 +++---
 .../index.html                                     |  8 ++---
 .../index.html                                     |  8 ++---
 .../index.html                                     |  8 ++---
 .../index.html                                     |  8 ++---
 zh/blog/index.html                                 |  8 ++---
 zh/docs/apisix/FAQ/index.html                      |  8 ++---
 zh/docs/apisix/IGNORE_DOC/index.html               | 10 +++---
 zh/docs/apisix/admin-api/index.html                |  8 ++---
 .../apisix/architecture-design/apisix/index.html   |  8 ++---
 .../apisix/architecture-design/consumer/index.html |  8 ++---
 .../architecture-design/debug-mode/index.html      |  8 ++---
 .../architecture-design/global-rule/index.html     |  8 ++---
 .../architecture-design/plugin-config/index.html   |  8 ++---
 .../apisix/architecture-design/plugin/index.html   |  8 ++---
 .../apisix/architecture-design/route/index.html    |  8 ++---
 .../apisix/architecture-design/router/index.html   |  8 ++---
 .../apisix/architecture-design/script/index.html   |  8 ++---
 .../apisix/architecture-design/service/index.html  |  8 ++---
 .../apisix/architecture-design/upstream/index.html |  8 ++---
 zh/docs/apisix/aws/index.html                      |  8 ++---
 zh/docs/apisix/batch-processor/index.html          |  8 ++---
 zh/docs/apisix/benchmark/index.html                |  8 ++---
 zh/docs/apisix/control-api/index.html              |  8 ++---
 .../customize-nginx-configuration/index.html       |  8 ++---
 zh/docs/apisix/debug-function/index.html           |  8 ++---
 zh/docs/apisix/discovery/consul_kv/index.html      |  8 ++---
 zh/docs/apisix/discovery/dns/index.html            |  8 ++---
 zh/docs/apisix/discovery/eureka/index.html         |  8 ++---
 zh/docs/apisix/discovery/index.html                |  8 ++---
 zh/docs/apisix/discovery/nacos/index.html          |  8 ++---
 .../index.html                                     |  8 ++---
 zh/docs/apisix/getting-started/index.html          |  8 ++---
 zh/docs/apisix/grpc-proxy/index.html               |  8 ++---
 zh/docs/apisix/health-check/index.html             |  8 ++---
 zh/docs/apisix/how-to-build/index.html             |  8 ++---
 zh/docs/apisix/https/index.html                    |  8 ++---
 zh/docs/apisix/install-dependencies/index.html     |  8 ++---
 zh/docs/apisix/mtls/index.html                     |  8 ++---
 zh/docs/apisix/plugin-develop/index.html           |  8 ++---
 zh/docs/apisix/plugin-interceptors/index.html      |  8 ++---
 zh/docs/apisix/plugins/api-breaker/index.html      |  8 ++---
 zh/docs/apisix/plugins/authz-keycloak/index.html   |  8 ++---
 zh/docs/apisix/plugins/basic-auth/index.html       |  8 ++---
 zh/docs/apisix/plugins/batch-requests/index.html   |  8 ++---
 .../apisix/plugins/consumer-restriction/index.html |  8 ++---
 zh/docs/apisix/plugins/cors/index.html             |  8 ++---
 zh/docs/apisix/plugins/dubbo-proxy/index.html      |  8 ++---
 zh/docs/apisix/plugins/echo/index.html             |  8 ++---
 zh/docs/apisix/plugins/error-log-logger/index.html |  8 ++---
 zh/docs/apisix/plugins/fault-injection/index.html  |  8 ++---
 zh/docs/apisix/plugins/grpc-transcode/index.html   |  8 ++---
 zh/docs/apisix/plugins/hmac-auth/index.html        |  8 ++---
 zh/docs/apisix/plugins/http-logger/index.html      |  8 ++---
 zh/docs/apisix/plugins/index.html                  |  8 ++---
 zh/docs/apisix/plugins/ip-restriction/index.html   |  8 ++---
 zh/docs/apisix/plugins/jwt-auth/index.html         |  8 ++---
 zh/docs/apisix/plugins/kafka-logger/index.html     |  8 ++---
 zh/docs/apisix/plugins/key-auth/index.html         |  8 ++---
 zh/docs/apisix/plugins/limit-conn/index.html       |  8 ++---
 zh/docs/apisix/plugins/limit-count/index.html      | 10 +++---
 zh/docs/apisix/plugins/limit-req/index.html        |  8 ++---
 zh/docs/apisix/plugins/log-rotate/index.html       |  8 ++---
 zh/docs/apisix/plugins/mqtt-proxy/index.html       |  8 ++---
 zh/docs/apisix/plugins/node-status/index.html      |  8 ++---
 zh/docs/apisix/plugins/openid-connect/index.html   |  8 ++---
 zh/docs/apisix/plugins/prometheus/index.html       | 10 +++---
 zh/docs/apisix/plugins/proxy-cache/index.html      |  8 ++---
 zh/docs/apisix/plugins/proxy-mirror/index.html     |  8 ++---
 zh/docs/apisix/plugins/proxy-rewrite/index.html    |  8 ++---
 zh/docs/apisix/plugins/redirect/index.html         | 10 +++---
 .../apisix/plugins/referer-restriction/index.html  |  8 ++---
 zh/docs/apisix/plugins/request-id/index.html       |  8 ++---
 .../apisix/plugins/request-validation/index.html   |  8 ++---
 zh/docs/apisix/plugins/response-rewrite/index.html |  8 ++---
 zh/docs/apisix/plugins/server-info/index.html      |  8 ++---
 zh/docs/apisix/plugins/serverless/index.html       |  8 ++---
 zh/docs/apisix/plugins/skywalking/index.html       |  8 ++---
 zh/docs/apisix/plugins/sls-logger/index.html       |  8 ++---
 zh/docs/apisix/plugins/syslog/index.html           |  8 ++---
 zh/docs/apisix/plugins/tcp-logger/index.html       |  8 ++---
 zh/docs/apisix/plugins/traffic-split/index.html    |  8 ++---
 zh/docs/apisix/plugins/udp-logger/index.html       |  8 ++---
 zh/docs/apisix/plugins/uri-blocker/index.html      |  8 ++---
 zh/docs/apisix/plugins/wolf-rbac/index.html        |  8 ++---
 zh/docs/apisix/plugins/zipkin/index.html           |  8 ++---
 zh/docs/apisix/profile/index.html                  |  8 ++---
 zh/docs/apisix/router-radixtree/index.html         |  8 ++---
 zh/docs/apisix/stand-alone/index.html              |  8 ++---
 zh/docs/apisix/stream-proxy/index.html             |  8 ++---
 zh/docs/dashboard/FAQ/index.html                   |  8 ++---
 zh/docs/dashboard/I18N_USER_GUIDE/index.html       |  8 ++---
 zh/docs/dashboard/IGNORE_DOC/index.html            | 10 +++---
 .../dashboard/IMPORT_OPENAPI_USER_GUIDE/index.html |  8 ++---
 zh/docs/dashboard/USER_GUIDE/index.html            |  8 ++---
 zh/docs/dashboard/api/api/index.html               |  8 ++---
 zh/docs/dashboard/back-end-tests/index.html        |  8 ++---
 zh/docs/dashboard/deploy-with-docker/index.html    |  8 ++---
 zh/docs/dashboard/deploy-with-rpm/index.html       |  8 ++---
 zh/docs/dashboard/deploy/index.html                |  8 ++---
 zh/docs/dashboard/develop/index.html               |  8 ++---
 zh/docs/dashboard/front-end-e2e/index.html         |  8 ++---
 zh/docs/docker/IGNORE_DOC/index.html               | 10 +++---
 zh/docs/docker/build/index.html                    |  8 ++---
 zh/docs/docker/example/index.html                  |  8 ++---
 zh/docs/docker/manual/index.html                   |  8 ++---
 zh/docs/general/2fa/index.html                     | 10 +++---
 zh/docs/general/committer-guide/index.html         | 10 +++---
 zh/docs/general/contributor-guide/index.html       | 10 +++---
 .../general/integrate-with-project-docs/index.html | 10 +++---
 zh/docs/general/release-guide/index.html           | 10 +++---
 zh/docs/general/security/index.html                | 10 +++---
 zh/docs/general/subscribe-guide/index.html         | 10 +++---
 zh/docs/helm-chart/IGNORE_DOC/index.html           | 10 +++---
 zh/docs/helm-chart/apisix-dashboard/index.html     |  8 ++---
 .../apisix-ingress-controller/index.html           |  8 ++---
 zh/docs/helm-chart/apisix/index.html               |  8 ++---
 zh/docs/index.html                                 |  8 ++---
 zh/docs/ingress-controller/FAQ/index.html          |  8 ++---
 zh/docs/ingress-controller/IGNORE_DOC/index.html   | 10 +++---
 .../concepts/apisix_cluster_config/index.html      | 36 ++++++++++++++++++++++
 .../concepts/apisix_route/index.html               | 10 +++---
 .../concepts/apisix_tls/index.html                 |  8 ++---
 .../concepts/apisix_upstream/index.html            |  8 ++---
 zh/docs/ingress-controller/contribute/index.html   |  8 ++---
 .../ingress-controller/deployments/ack/index.html  |  8 ++---
 .../ingress-controller/deployments/aws/index.html  |  8 ++---
 .../deployments/azure/index.html                   |  8 ++---
 .../ingress-controller/deployments/gke/index.html  |  8 ++---
 .../deployments/k3s-rke/index.html                 |  8 ++---
 .../deployments/kubesphere/index.html              |  8 ++---
 .../deployments/minikube/index.html                |  8 ++---
 .../ingress-controller/deployments/tke/index.html  |  8 ++---
 zh/docs/ingress-controller/design/index.html       |  8 ++---
 zh/docs/ingress-controller/development/index.html  |  8 ++---
 .../ingress-controller/getting-started/index.html  |  8 ++---
 .../ingress-controller/practices/index/index.html  |  8 ++---
 .../index.html                                     |  8 ++---
 .../practices/proxy-the-httpbin-service/index.html |  8 ++---
 .../references/apisix_cluster_config/index.html    | 27 ++++++++++++++++
 .../references/apisix_route_v1/index.html          |  8 ++---
 .../references/apisix_route_v2alpha1/index.html    | 10 +++---
 .../references/apisix_tls/index.html               |  8 ++---
 .../references/apisix_upstream/index.html          |  8 ++---
 zh/downloads/ProjectCard/index.html                |  8 ++---
 zh/downloads/index.html                            |  8 ++---
 .../index.html                                     |  8 ++---
 .../index.html                                     |  8 ++---
 .../02/09/release-apache-apisix-2.3/index.html     |  8 ++---
 .../index.html                                     |  8 ++---
 .../release-apache-apisix-dashboard-2.4/index.html |  8 ++---
 .../03/05/release-apache-apisix-2.4/index.html     |  8 ++---
 .../index.html                                     |  8 ++---
 .../04/05/release-apache-apisix-2.5/index.html     |  8 ++---
 .../index.html                                     |  8 ++---
 .../release-apache-apisix-dashboard-2.6/index.html |  8 ++---
 zh/events/index.html                               |  8 ++---
 zh/help/index.html                                 |  8 ++---
 zh/index.html                                      |  8 ++---
 zh/search/index.html                               |  8 ++---
 zh/sitemap.xml                                     |  2 +-
 zh/team/index.html                                 |  8 ++---
 388 files changed, 1514 insertions(+), 1384 deletions(-)

diff --git a/404.html b/404.html
index 8d63747..53b620a 100644
--- a/404.html
+++ b/404.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Page Not Found | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Page Not Found | Apache APISIX™"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//404.html"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsear [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/assets/js/19945770.a33d6a46.js b/assets/js/19945770.d2953378.js
similarity index 98%
rename from assets/js/19945770.a33d6a46.js
rename to assets/js/19945770.d2953378.js
index 4dff44e..ee20441 100644
--- a/assets/js/19945770.a33d6a46.js
+++ b/assets/js/19945770.d2953378.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[5067],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return p},kt:function(){return f}});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[5067],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return p},kt:function(){return f}});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
diff --git a/assets/js/1c89ab3b.2e2d8f4a.js b/assets/js/1c89ab3b.2e2d8f4a.js
new file mode 100644
index 0000000..ebb14d2
--- /dev/null
+++ b/assets/js/1c89ab3b.2e2d8f4a.js
@@ -0,0 +1 @@
+(self.webpackChunk=self.webpackChunk||[]).push([[2215],{3905:function(e,t,a){"use strict";a.d(t,{Zo:function(){return c},kt:function(){return m}});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function s(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n [...]
\ No newline at end of file
diff --git a/assets/js/1c89ab3b.8caa3515.js b/assets/js/1c89ab3b.8caa3515.js
deleted file mode 100644
index 1c65718..0000000
--- a/assets/js/1c89ab3b.8caa3515.js
+++ /dev/null
@@ -1 +0,0 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[2215],{3905:function(e,t,a){"use strict";a.d(t,{Zo:function(){return c},kt:function(){return m}});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function s(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n [...]
\ No newline at end of file
diff --git a/assets/js/1ed156ee.950b212d.js b/assets/js/1ed156ee.950b212d.js
deleted file mode 100644
index 03dc82a..0000000
--- a/assets/js/1ed156ee.950b212d.js
+++ /dev/null
@@ -1 +0,0 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[8680],{3905:function(e,n,t){"use strict";t.d(n,{Zo:function(){return c},kt:function(){return h}});var a=t(7294);function i(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function o(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a [...]
\ No newline at end of file
diff --git a/assets/js/1ed156ee.abdfea71.js b/assets/js/1ed156ee.abdfea71.js
new file mode 100644
index 0000000..9db0540
--- /dev/null
+++ b/assets/js/1ed156ee.abdfea71.js
@@ -0,0 +1 @@
+(self.webpackChunk=self.webpackChunk||[]).push([[8680],{3905:function(e,n,t){"use strict";t.d(n,{Zo:function(){return c},kt:function(){return d}});var a=t(7294);function i(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function o(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a [...]
\ No newline at end of file
diff --git a/assets/js/21974872.29fe17da.js b/assets/js/21974872.29fe17da.js
new file mode 100644
index 0000000..8351598
--- /dev/null
+++ b/assets/js/21974872.29fe17da.js
@@ -0,0 +1 @@
+(self.webpackChunk=self.webpackChunk||[]).push([[1186],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return u},kt:function(){return d}});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
diff --git a/assets/js/3393d167.4d0b91d4.js b/assets/js/3393d167.f88c5383.js
similarity index 96%
rename from assets/js/3393d167.4d0b91d4.js
rename to assets/js/3393d167.f88c5383.js
index cceaf67..555ec9b 100644
--- a/assets/js/3393d167.4d0b91d4.js
+++ b/assets/js/3393d167.f88c5383.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[7314],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return s},kt:function(){return d}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[7314],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return s},kt:function(){return d}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
diff --git a/assets/js/358566b4.809f5ab8.js b/assets/js/358566b4.959a2e0c.js
similarity index 94%
rename from assets/js/358566b4.809f5ab8.js
rename to assets/js/358566b4.959a2e0c.js
index 159be8e..77cab83 100644
--- a/assets/js/358566b4.809f5ab8.js
+++ b/assets/js/358566b4.959a2e0c.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[3553],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return d}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[3553],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return d}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
diff --git a/assets/js/38095436.d061658d.js b/assets/js/38095436.d061658d.js
new file mode 100644
index 0000000..9634870
--- /dev/null
+++ b/assets/js/38095436.d061658d.js
@@ -0,0 +1 @@
+(self.webpackChunk=self.webpackChunk||[]).push([[5756],{3905:function(e,n,t){"use strict";t.d(n,{Zo:function(){return p},kt:function(){return d}});var i=t(7294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);n&&(i=i.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,i [...]
\ No newline at end of file
diff --git a/assets/js/3dc9f306.9788c6ac.js b/assets/js/3dc9f306.216fc5fa.js
similarity index 98%
rename from assets/js/3dc9f306.9788c6ac.js
rename to assets/js/3dc9f306.216fc5fa.js
index 4e3db11..98312f4 100644
--- a/assets/js/3dc9f306.9788c6ac.js
+++ b/assets/js/3dc9f306.216fc5fa.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[8393],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return l},kt:function(){return f}});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[8393],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return l},kt:function(){return f}});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
diff --git a/assets/js/40fb2fae.ae8c8700.js b/assets/js/40fb2fae.6b8e9bae.js
similarity index 96%
rename from assets/js/40fb2fae.ae8c8700.js
rename to assets/js/40fb2fae.6b8e9bae.js
index 43ec56f..c0aaa34 100644
--- a/assets/js/40fb2fae.ae8c8700.js
+++ b/assets/js/40fb2fae.6b8e9bae.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[2547],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return m}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[2547],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return m}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
diff --git a/assets/js/50facf8e.edcdaf38.js b/assets/js/50facf8e.65f847ef.js
similarity index 96%
rename from assets/js/50facf8e.edcdaf38.js
rename to assets/js/50facf8e.65f847ef.js
index 29f510f..4573b46 100644
--- a/assets/js/50facf8e.edcdaf38.js
+++ b/assets/js/50facf8e.65f847ef.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[7974],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return u},kt:function(){return d}});var i=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[7974],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return u},kt:function(){return d}});var i=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i [...]
\ No newline at end of file
diff --git a/assets/js/601c6eaa.50047dbe.js b/assets/js/601c6eaa.4cf2a695.js
similarity index 94%
rename from assets/js/601c6eaa.50047dbe.js
rename to assets/js/601c6eaa.4cf2a695.js
index 3c05a61..473ab69 100644
--- a/assets/js/601c6eaa.50047dbe.js
+++ b/assets/js/601c6eaa.4cf2a695.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[7117],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return s},kt:function(){return m}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[7117],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return s},kt:function(){return m}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
diff --git a/assets/js/66fbb9c2.46b8b0fe.js b/assets/js/66fbb9c2.696bcf76.js
similarity index 96%
rename from assets/js/66fbb9c2.46b8b0fe.js
rename to assets/js/66fbb9c2.696bcf76.js
index 2a8b70b..168a834 100644
--- a/assets/js/66fbb9c2.46b8b0fe.js
+++ b/assets/js/66fbb9c2.696bcf76.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[7668],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return y}});var n=r(7294);function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[7668],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return y}});var n=r(7294);function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
diff --git a/assets/js/7193710f.393d48eb.js b/assets/js/7193710f.ba26b407.js
similarity index 57%
rename from assets/js/7193710f.393d48eb.js
rename to assets/js/7193710f.ba26b407.js
index b7deed9..2e8b988 100644
--- a/assets/js/7193710f.393d48eb.js
+++ b/assets/js/7193710f.ba26b407.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[1512],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return d},kt:function(){return m}});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[1512],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return d},kt:function(){return m}});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
diff --git a/assets/js/7af3052c.45f9846a.js b/assets/js/7af3052c.4a2b9e7c.js
similarity index 99%
rename from assets/js/7af3052c.45f9846a.js
rename to assets/js/7af3052c.4a2b9e7c.js
index f4b3ed5..050418f 100644
--- a/assets/js/7af3052c.45f9846a.js
+++ b/assets/js/7af3052c.4a2b9e7c.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[5032],{3905:function(e,a,t){"use strict";t.d(a,{Zo:function(){return d},kt:function(){return u}});var n=t(7294);function i(e,a,t){return a in e?Object.defineProperty(e,a,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[a]=t,e}function r(e,a){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);a&&(n=n.filter((function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable}))),t.push.apply(t,n [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[5032],{3905:function(e,a,t){"use strict";t.d(a,{Zo:function(){return d},kt:function(){return u}});var n=t(7294);function i(e,a,t){return a in e?Object.defineProperty(e,a,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[a]=t,e}function r(e,a){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);a&&(n=n.filter((function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable}))),t.push.apply(t,n [...]
\ No newline at end of file
diff --git a/assets/js/8e784bf3.6551a672.js b/assets/js/8e784bf3.1a546879.js
similarity index 97%
rename from assets/js/8e784bf3.6551a672.js
rename to assets/js/8e784bf3.1a546879.js
index fb0101d..478c85e 100644
--- a/assets/js/8e784bf3.6551a672.js
+++ b/assets/js/8e784bf3.1a546879.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[8216],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return m},kt:function(){return d}});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[8216],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return m},kt:function(){return d}});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
diff --git a/assets/js/9da58367.132a7784.js b/assets/js/9da58367.132a7784.js
new file mode 100644
index 0000000..79ec070
--- /dev/null
+++ b/assets/js/9da58367.132a7784.js
@@ -0,0 +1 @@
+(self.webpackChunk=self.webpackChunk||[]).push([[5994],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return l},kt:function(){return m}});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a [...]
\ No newline at end of file
diff --git a/assets/js/9da58367.664cb6b0.js b/assets/js/9da58367.664cb6b0.js
deleted file mode 100644
index 561f8b6..0000000
--- a/assets/js/9da58367.664cb6b0.js
+++ /dev/null
@@ -1 +0,0 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[5994],{3905:function(e,n,t){"use strict";t.d(n,{Zo:function(){return l},kt:function(){return m}});var a=t(7294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function i(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a [...]
\ No newline at end of file
diff --git a/assets/js/adbb350b.ec3756b1.js b/assets/js/adbb350b.7e633846.js
similarity index 98%
rename from assets/js/adbb350b.ec3756b1.js
rename to assets/js/adbb350b.7e633846.js
index 12fea0c..a62daed 100644
--- a/assets/js/adbb350b.ec3756b1.js
+++ b/assets/js/adbb350b.7e633846.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[5427],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return p},kt:function(){return d}});var i=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[5427],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return p},kt:function(){return d}});var i=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i [...]
\ No newline at end of file
diff --git a/assets/js/b28b7341.0bf72feb.js b/assets/js/b28b7341.38cafc15.js
similarity index 84%
rename from assets/js/b28b7341.0bf72feb.js
rename to assets/js/b28b7341.38cafc15.js
index 35a8f96..36977e9 100644
--- a/assets/js/b28b7341.0bf72feb.js
+++ b/assets/js/b28b7341.38cafc15.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[6324],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return p},kt:function(){return c}});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[6324],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return p},kt:function(){return c}});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
diff --git a/assets/js/d18db9b0.b7e71c84.js b/assets/js/d18db9b0.4c1ffd65.js
similarity index 95%
rename from assets/js/d18db9b0.b7e71c84.js
rename to assets/js/d18db9b0.4c1ffd65.js
index e32b3c2..67c2740 100644
--- a/assets/js/d18db9b0.b7e71c84.js
+++ b/assets/js/d18db9b0.4c1ffd65.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[7825],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return m}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[7825],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return m}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
diff --git a/assets/js/d2247e49.e05ceca6.js b/assets/js/d2247e49.ad89cf8d.js
similarity index 63%
rename from assets/js/d2247e49.e05ceca6.js
rename to assets/js/d2247e49.ad89cf8d.js
index 7114fea..6376b59 100644
--- a/assets/js/d2247e49.e05ceca6.js
+++ b/assets/js/d2247e49.ad89cf8d.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[4397],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return d},kt:function(){return c}});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[4397],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return s},kt:function(){return c}});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a [...]
\ No newline at end of file
diff --git a/assets/js/main.20323177.js b/assets/js/main.20323177.js
new file mode 100644
index 0000000..8c6d517
--- /dev/null
+++ b/assets/js/main.20323177.js
@@ -0,0 +1,2 @@
+/*! For license information please see main.20323177.js.LICENSE.txt */
+(self.webpackChunk=self.webpackChunk||[]).push([[179],{4644:function(e){"use strict";e.exports={}},2122:function(e,t,n){"use strict";function r(){return(r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}n.d(t,{Z:function(){return r}})},3552:function(e,t,n){"use strict";function r(e,t){return(r=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e} [...]
\ No newline at end of file
diff --git a/zh/assets/js/main.6d9ac8a0.js.LICENSE.txt b/assets/js/main.20323177.js.LICENSE.txt
similarity index 100%
rename from zh/assets/js/main.6d9ac8a0.js.LICENSE.txt
rename to assets/js/main.20323177.js.LICENSE.txt
diff --git a/assets/js/main.2a1b2c66.js b/assets/js/main.2a1b2c66.js
deleted file mode 100644
index f78b3ff..0000000
--- a/assets/js/main.2a1b2c66.js
+++ /dev/null
@@ -1,2 +0,0 @@
-/*! For license information please see main.2a1b2c66.js.LICENSE.txt */
-(self.webpackChunk=self.webpackChunk||[]).push([[179],{4644:function(e){"use strict";e.exports={}},2122:function(e,t,n){"use strict";function r(){return(r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}n.d(t,{Z:function(){return r}})},3552:function(e,t,n){"use strict";function r(e,t){return(r=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e} [...]
\ No newline at end of file
diff --git a/assets/js/runtime~main.82efd67e.js b/assets/js/runtime~main.82efd67e.js
new file mode 100644
index 0000000..44663ee
--- /dev/null
+++ b/assets/js/runtime~main.82efd67e.js
@@ -0,0 +1 @@
+!function(){"use strict";var e,f,a,c,b={},d={};function t(e){var f=d[e];if(void 0!==f)return f.exports;var a=d[e]={id:e,loaded:!1,exports:{}};return b[e].call(a.exports,a,a.exports,t),a.loaded=!0,a.exports}t.m=b,t.c=d,e=[],t.O=function(f,a,c,b){if(!a){var d=1/0;for(o=0;o<e.length;o++){a=e[o][0],c=e[o][1],b=e[o][2];for(var n=!0,r=0;r<a.length;r++)(!1&b||d>=b)&&Object.keys(t.O).every((function(e){return t.O[e](a[r])}))?a.splice(r--,1):(n=!1,b<d&&(d=b));n&&(e.splice(o--,1),f=c())}return f}b [...]
\ No newline at end of file
diff --git a/assets/js/runtime~main.bc7ee1e1.js b/assets/js/runtime~main.bc7ee1e1.js
deleted file mode 100644
index 741eb7d..0000000
--- a/assets/js/runtime~main.bc7ee1e1.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(){"use strict";var e,f,a,b,c={},d={};function t(e){var f=d[e];if(void 0!==f)return f.exports;var a=d[e]={id:e,loaded:!1,exports:{}};return c[e].call(a.exports,a,a.exports,t),a.loaded=!0,a.exports}t.m=c,t.c=d,e=[],t.O=function(f,a,b,c){if(!a){var d=1/0;for(o=0;o<e.length;o++){a=e[o][0],b=e[o][1],c=e[o][2];for(var n=!0,r=0;r<a.length;r++)(!1&c||d>=c)&&Object.keys(t.O).every((function(e){return t.O[e](a[r])}))?a.splice(r--,1):(n=!1,c<d&&(d=c));n&&(e.splice(o--,1),f=b())}return f}c [...]
\ No newline at end of file
diff --git a/blog/2020/08/22/new-website/index.html b/blog/2020/08/22/new-website/index.html
index 7102f3f..8afc2ab 100644
--- a/blog/2020/08/22/new-website/index.html
+++ b/blog/2020/08/22/new-website/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">New website for Apache APISIX | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="New website for Apache APISIX | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="We are just refactored out website for Apache APISIX by using docusaurus."><meta data-react-helmet="true" propert [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/blog/2020/12/16/another-way-to-implement-envoy-filter/index.html b/blog/2020/12/16/another-way-to-implement-envoy-filter/index.html
index c785d28..9699a01 100644
--- a/blog/2020/12/16/another-way-to-implement-envoy-filter/index.html
+++ b/blog/2020/12/16/another-way-to-implement-envoy-filter/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Envoy and Apache APISIX: Another way to implement the Envoy filter | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Envoy and Apache APISIX: Another way to implement the Envoy filter | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="@nic-chen, Apache APISIX PMC from Shenz [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 A pluggable filter chain mechanism allows filters to be written to perform different tasks and inserted into the main server.</p><p><img src="https://static.apiseven.com/filters.png" alt="Envoy filter"></p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="expansion-method"></a>Expansion method<a class="hash-link" href="#expansion-method" title="Direct link to heading">#</a></h3><p>The existing filters may not meet the user&#x27;s custom requirements. In this case, Envoy needs to [...]
 In the example, we configured plugin <code>uri-blocker</code> for the route whose prefix is ​​<code>/foo</code>, as well as the block rule of the plugin and the response status when a block is required.</p><h4><a aria-hidden="true" tabindex="-1" class="anchor" id="second-step-parse-request"></a>Second step, parse request<a class="hash-link" href="#second-step-parse-request" title="Direct link to heading">#</a></h4><p>We encapsulated the client request data into <code>ctx</code> so that i [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/blog/2020/12/18/a-first-look-at-kubernetes-service-api/index.html b/blog/2020/12/18/a-first-look-at-kubernetes-service-api/index.html
index e082437..ab556a2 100644
--- a/blog/2020/12/18/a-first-look-at-kubernetes-service-api/index.html
+++ b/blog/2020/12/18/a-first-look-at-kubernetes-service-api/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">初探 Kubernetes Service APIs | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="初探 Kubernetes Service APIs | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="@gxthrj, Apache APISIX PMC &amp; Apache apisix-ingress-controller Founder from Shenzhen Zhiliu Technology Co."><meta da [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/blog/2021/01/21/run-ingress-apisix-on-amazon-eks/index.html b/blog/2021/01/21/run-ingress-apisix-on-amazon-eks/index.html
index ce89c24..7a1c0ef 100644
--- a/blog/2021/01/21/run-ingress-apisix-on-amazon-eks/index.html
+++ b/blog/2021/01/21/run-ingress-apisix-on-amazon-eks/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Run Ingress APISIX on Amazon EKS | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Run Ingress APISIX on Amazon EKS | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="@Chao Zhang, Apache APISIX Committer from Shenzhen Zhiliu Technology Co."><meta data-react-helmet="true" pr [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">  </span><span class="token string" style="color:rgb(195, 232, 141)">&quot;headers&quot;</span><span class="token builtin class-name" style="color:rgb(255, 203, 107)">:</span><span class="token plain"> </span><span c [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/blog/2021/02/08/stable-product-delivery-with-cypress/index.html b/blog/2021/02/08/stable-product-delivery-with-cypress/index.html
index 71c5149..60de0a3 100644
--- a/blog/2021/02/08/stable-product-delivery-with-cypress/index.html
+++ b/blog/2021/02/08/stable-product-delivery-with-cypress/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Stable Product Delivery with Cypress | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Stable Product Delivery with Cypress | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="@LiteSun, Apache APISIX Committer from Shenzhen Zhiliu Technology Co."><meta data-react-helmet="tru [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/blog/2021/02/26/install-apache-apisix-from-helm-charts/index.html b/blog/2021/02/26/install-apache-apisix-from-helm-charts/index.html
index 8351e5e..4f1cc9e 100644
--- a/blog/2021/02/26/install-apache-apisix-from-helm-charts/index.html
+++ b/blog/2021/02/26/install-apache-apisix-from-helm-charts/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Apache APISIX from Helm Charts | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Install Apache APISIX from Helm Charts | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="@tokers, Apache APISIX Committer from Shenzhen Zhiliu Technology Co."><meta data-react-helmet=" [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">NAME                    CHART VERSION   APP VERSION     DESCRIPTION</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">apisix/apisix           0.1.2           2.1.0           A Helm chart for Apache APISIX</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">apisix/apisix-dashboard 0.1.0           2.3.0           A Helm chart for Apache APIS [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">NAME: apisix-gw</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">LAST DEPLOYED: Fri Feb 19 11:34:14 2021</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">NAMESPACE: default</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">STATUS: deployed</span></div><div class="token-line" style="color:#bfc7d5"><span [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/blog/2021/03/02/get-front-end-test-coverage-with-cypress/index.html b/blog/2021/03/02/get-front-end-test-coverage-with-cypress/index.html
index 15f6e0b..ab6e540 100644
--- a/blog/2021/03/02/get-front-end-test-coverage-with-cypress/index.html
+++ b/blog/2021/03/02/get-front-end-test-coverage-with-cypress/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Get Front-End Test Coverage with Cypress | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Get Front-End Test Coverage with Cypress | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="@LiteSun, Apache APISIX Committer from Shenzhen Zhiliu Technology Co."><meta data-react-hel [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/blog/2021/03/27/traffic-split-in-apache-apisix-ingress-controller/index.html b/blog/2021/03/27/traffic-split-in-apache-apisix-ingress-controller/index.html
index 41c9b81..cecd667 100644
--- a/blog/2021/03/27/traffic-split-in-apache-apisix-ingress-controller/index.html
+++ b/blog/2021/03/27/traffic-split-in-apache-apisix-ingress-controller/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Traffic Split in Apache APISIX Ingress Controller | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Traffic Split in Apache APISIX Ingress Controller | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="@tokers, Apache APISIX Committer from Shenzhen Zhiliu Technology Co."><me [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/blog/index.html b/blog/index.html
index 151db36..d99bd2e 100644
--- a/blog/index.html
+++ b/blog/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Blog | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Blog | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="Blog"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//blog"><meta data-react-helmet="true" name="docsearch:language" content=" [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/FAQ/index.html b/docs/apisix/FAQ/index.html
index 91038e7..8590f8b 100644
--- a/docs/apisix/FAQ/index.html
+++ b/docs/apisix/FAQ/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">FAQ | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/FAQ"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" cont [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -29,7 +29,7 @@ For China mainland users, you can use the <code>luarocks.cn</code> as the luaroc
 See the <code>Hot reload</code> section in <a href="/docs/apisix/plugins">plugins</a> for how to do that.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="how-to-make-apisix-listen-on-multiple-ports-when-handling-http-or-https-requests"></a>How to make APISIX listen on multiple ports when handling HTTP or HTTPS requests?<a class="hash-link" href="#how-to-make-apisix-listen-on-multiple-ports-when-handling-http-or-https-requests" title="Direct link to heading">#</a></h2><p>By  [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># The uri match failed</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/12ab -i</span></div><div class="token-line" style= [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">HTTP/1.1 </span><span class="token number" style="color:rgb(247, 140, 108)">200</span><span class="token plain"> OK</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token punctuation" style="color:rgb(199 [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/IGNORE_DOC/index.html b/docs/apisix/IGNORE_DOC/index.html
index b335a39..9d691f4 100644
--- a/docs/apisix/IGNORE_DOC/index.html
+++ b/docs/apisix/IGNORE_DOC/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">IGNORE_DOC | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/IGNORE_DOC"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusa [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/admin-api/index.html b/docs/apisix/admin-api/index.html
index c4d65d5..6b4a385 100644
--- a/docs/apisix/admin-api/index.html
+++ b/docs/apisix/admin-api/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Admin API | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/admin-api"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaur [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -83,7 +83,7 @@ This feature requires APISIX to run on <a href="/docs/how-to-build.md#6-build-op
 used when all the nodes with higher priority are unavailable or tried.</p><p>As the default priority is 0, we can configure nodes with negative priority as the backup.</p><p>For example:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly json"><div tabindex="0" class="prism-code language-json codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token [...]
 Therefore it is the backup of <code>127.0.0.1</code>.</p><blockquote><p>Response Parameters</p></blockquote><p>Return response from etcd currently.</p><p><a href="#table-of-contents">Back to TOC</a></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="ssl"></a>SSL<a class="hash-link" href="#ssl" title="Direct link to heading">#</a></h2><p><em>API</em>:/apisix/admin/ssl/{id}</p><p><em>Description</em>:SSL.</p><blockquote><p>Request Methods:</p></blockquote><table><thead><tr><th>M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">&quot;http://127.0.0.1:9080/apisix/admin/plugins/key-auth&quot;</span><span class="token plain"> -H </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;X-API-KEY: edd1c9f034335f136f87ad84b625c8f1&#x27;</span><s [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/architecture-design/apisix/index.html b/docs/apisix/architecture-design/apisix/index.html
index cd01ab4..fce40ce 100644
--- a/docs/apisix/architecture-design/apisix/index.html
+++ b/docs/apisix/architecture-design/apisix/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">APISIX | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/architecture-design/apisix"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docs [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 and keep other configurations as default. The configuration in <code>config.yaml</code> should be like this:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apisix</span><span class="token punctuation" style="color:rgb(199 [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token key atrule">etcd</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">  </span><span class="token key atrule">host</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"> </span><span class="tok [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/architecture-design/consumer/index.html b/docs/apisix/architecture-design/consumer/index.html
index dda368c..c70026d 100644
--- a/docs/apisix/architecture-design/consumer/index.html
+++ b/docs/apisix/architecture-design/consumer/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Consumer | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/architecture-design/consumer"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name=" [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -28,7 +28,7 @@
 </span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>Use the <a href="/docs/apisix/plugins/consumer-restriction">consumer-restriction</a> plug-in to restrict the access of Jack to this API.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;bac [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># Repeated tests, all return 403; Jack is forbidden to access this API</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/he [...]
 </span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/en/latest/architecture-design/consumer.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_ [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/architecture-design/debug-mode/index.html b/docs/apisix/architecture-design/debug-mode/index.html
index 2699813..513ed3a 100644
--- a/docs/apisix/architecture-design/debug-mode/index.html
+++ b/docs/apisix/architecture-design/debug-mode/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Debug Mode | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/architecture-design/debug-mode"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" na [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">hello world</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>If the information can be delivered via HTTP response header, for example, the plugin is in stream
 subsystem, the information will be logged in the error log with <code>warn</code> level.</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="advanced-debug-mode"></a>Advanced Debug Mode<a class="hash-link" href="#advanced-debug-mode" title="Direct link to heading">#</a></h3><p>Enable advanced debug mode by modifying the configuration in <code>conf/debug.yaml</code> file. Because there will be a check every second, only the checker reads the <code>#END</code> flag, and the file  [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token key atrule">hook_phase</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"> </span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># Module Function List, Name: hook_phase</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">  </span [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/architecture-design/global-rule/index.html b/docs/apisix/architecture-design/global-rule/index.html
index 57d3d5d..e0cb407 100644
--- a/docs/apisix/architecture-design/global-rule/index.html
+++ b/docs/apisix/architecture-design/global-rule/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Global rule | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/architecture-design/global-rule"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true"  [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 We can register a global <a href="/docs/apisix/architecture-design/plugin">Plugin</a> with <code>GlobalRule</code>:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="t [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/architecture-design/plugin-config/index.html b/docs/apisix/architecture-design/plugin-config/index.html
index 5d58f60..a3cebd5 100644
--- a/docs/apisix/architecture-design/plugin-config/index.html
+++ b/docs/apisix/architecture-design/plugin-config/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Plugin Config | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/architecture-design/plugin-config"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="tr [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 bind it with a route directly.</p><p>For instance, you can do something like:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># create a plugin config</span><span class="to [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># bind it to route</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/routes/1 -H </span><span class="token str [...]
 will be merged into it. The same plugin in the plugin config will override one in the <code>plugins</code>.</p><p>For example, when we configure a plugin config</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly"><div tabindex="0" class="prism-code language-undefined codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">{</span></div><div [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/architecture-design/plugin/index.html b/docs/apisix/architecture-design/plugin/index.html
index 9b16faf..deb5795 100644
--- a/docs/apisix/architecture-design/plugin/index.html
+++ b/docs/apisix/architecture-design/plugin/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Plugin | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/architecture-design/plugin"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docs [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/architecture-design/route/index.html b/docs/apisix/architecture-design/route/index.html
index bdd955b..ec41f83 100644
--- a/docs/apisix/architecture-design/route/index.html
+++ b/docs/apisix/architecture-design/route/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Route | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/architecture-design/route"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">HTTP/1.1 </span><span class="token number" style="color:rgb(247, 140, 108)">201</span><span class="token plain"> Created</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Date: Sat, </span><span class="token number" style="color:rgb(247, 140, 108)">31</span><span class="token plain"> Aug </span><span class="token number" style="color:rgb(247, 140, 108)">2019</span><span  [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;node&quot;</span><span class="token plain">:</span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;value&quot;</span><span class="token plain">:</span><span class="token  [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/architecture-design/router/index.html b/docs/apisix/architecture-design/router/index.html
index f97e92c..f057667 100644
--- a/docs/apisix/architecture-design/router/index.html
+++ b/docs/apisix/architecture-design/router/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Router | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/architecture-design/router"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docs [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/architecture-design/script/index.html b/docs/apisix/architecture-design/script/index.html
index 16f4193..a8857fa 100644
--- a/docs/apisix/architecture-design/script/index.html
+++ b/docs/apisix/architecture-design/script/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Script | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/architecture-design/script"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docs [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/architecture-design/service/index.html b/docs/apisix/architecture-design/service/index.html
index 8812359..c24e512 100644
--- a/docs/apisix/architecture-design/service/index.html
+++ b/docs/apisix/architecture-design/service/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Service | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/architecture-design/service"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="do [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># create new Route and reference the service by id `200`</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/route [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/routes/101 -H </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;X-API-KEY: edd1c9f034335f136f87ad84b625c8f1&#x27;</span><span class="token plain"> -X PUT -d </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;</span></div [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/architecture-design/upstream/index.html b/docs/apisix/architecture-design/upstream/index.html
index 3ffd998..211aa84 100644
--- a/docs/apisix/architecture-design/upstream/index.html
+++ b/docs/apisix/architecture-design/upstream/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Upstream | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/architecture-design/upstream"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name=" [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/aws/index.html b/docs/apisix/aws/index.html
index 509fcce..3e09f57 100644
--- a/docs/apisix/aws/index.html
+++ b/docs/apisix/aws/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Running APISIX in AWS with AWS CDK | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/aws"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name= [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -43,7 +43,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Non-authoritative answer:</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Name:   apiSi-PhpSe-FOL2MM4TW7G8-09029e095ab36fcc.elb.us-west-2.amazonaws.com</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Address: </span><span class="token number" style="color:rgb(247, 140, 108)">44.224</span><span class="token plain">.124.213</span></div [...]
 <img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/aws-define-service.png">
 <img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/aws-define-route.png"></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="validation"></a>Validation<a class="hash-link" href="#validation" title="Direct link to heading">#</a></h2><p>OK. Let&#x27;s test the <code>/index.php</code> on <code>{apiSix.ApiSixServiceServiceURL}/index.php</code></p><p><img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/aws-caddy-php-we [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/batch-processor/index.html b/docs/apisix/batch-processor/index.html
index cc36f86..eee81e6 100644
--- a/docs/apisix/batch-processor/index.html
+++ b/docs/apisix/batch-processor/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Batch Processor | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/batch-processor"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -31,7 +31,7 @@ argument and the batch configuration as the second parameter.</p><div class="cod
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">if batch_processor then</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    batch_processor:push({hello=&#x27;world&#x27;})</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">end</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>Note: Please make sure th [...]
 The timer to flush the batch runs based on the <code>inactive_timeout</code> configuration. Thus, for optimal usage,
 keep the <code>inactive_timeout</code> smaller than the <code>buffer_duration</code>.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/en/latest/batch-processor.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_2_ui" aria-label="Edit page"><g><path d="m34.5 11.7l-3 3 [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/benchmark/index.html b/docs/apisix/benchmark/index.html
index 6fe573f..6c12f09 100644
--- a/docs/apisix/benchmark/index.html
+++ b/docs/apisix/benchmark/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Benchmark | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/benchmark"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaur [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -26,7 +26,7 @@ and the response size was 1KB.</p><h4><a aria-hidden="true" tabindex="-1" class=
 <img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/flamegraph-1.jpg" alt="flamegraph-1"></p><p>And if you want to run the benchmark test in your machine, you should run another Nginx to listen 80 port.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="to [...]
 and the response size was 1KB.</p><h4><a aria-hidden="true" tabindex="-1" class="anchor" id="qps-1"></a>QPS<a class="hash-link" href="#qps-1" title="Direct link to heading">#</a></h4><p>The x-axis means the size of CPU core, and the y-axis is QPS.</p><p><img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/benchmark-2.jpg" alt="benchmark-2"></p><h4><a aria-hidden="true" tabindex="-1" class="anchor" id="latency-1"></a>Latency<a class="hash-link" href="#latenc [...]
 <img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/flamegraph-2.jpg" alt="flamegraph-2"></p><p>And if you want to run the benchmark test in your machine, you should run another Nginx to listen 80 port.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="to [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/control-api/index.html b/docs/apisix/control-api/index.html
index 3141549..30928e1 100644
--- a/docs/apisix/control-api/index.html
+++ b/docs/apisix/control-api/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Control API | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/control-api"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docu [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -26,7 +26,7 @@ If a plugin adds such a control API, please refer to each plugin&#x27;s document
 of fields like <code>consumer_schema</code> or <code>type</code>, it is depended on by the plugin&#x27;s
 definition.</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="get-v1healthcheck"></a>GET /v1/healthcheck<a class="hash-link" href="#get-v1healthcheck" title="Direct link to heading">#</a></h3><p>Introduced since <code>v2.3</code>.</p><p>Return current <a href="/docs/apisix/health-check">health check</a> status in the format below:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly json"><div tabindex="0" class="prism-code language-json codeBlock_23N8 th [...]
 object with id 1 creates a health checker, the <code>src_type</code> is <code>upstreams</code> and the <code>src_id</code> is <code>1</code>.</li><li>name: the name of the health checker.</li><li>nodes: the target nodes of the health checker.</li><li>healthy_nodes: the healthy node known by the health checker.</li></ul><p>User can also use <code>/v1/healthcheck/$src_type/$src_id</code> can get the status of a health checker.</p><p>For example, <code>GET /v1/healthcheck/upstreams/1</code> [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/customize-nginx-configuration/index.html b/docs/apisix/customize-nginx-configuration/index.html
index cd5b6e5..dae456d 100644
--- a/docs/apisix/customize-nginx-configuration/index.html
+++ b/docs/apisix/customize-nginx-configuration/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Customize Nginx configuration | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/customize-nginx-configuration"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-reac [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">            location /ysec_status </span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">                req_status_show;</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">                allow 127.0.0.1;</span></div><div class="token-li [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">        chunked_transfer_encoding on;</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    </span><span class="token key atrule">http_server_configuration_snippet</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">|</span><span class="token scalar string" style="color:rgb(195, 232, 141)"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token  [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/debug-function/index.html b/docs/apisix/debug-function/index.html
index ef81b8e..3a053dc 100644
--- a/docs/apisix/debug-function/index.html
+++ b/docs/apisix/debug-function/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Debug Function | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/debug-function"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>It has a response header of <code>X-APISIX-Upstream-Status: 502</code>.</p><blockquote><p>Example 2: <code>502</code> response status code comes from <code>APISIX</code></p></blockquote><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class= [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/discovery/consul_kv/index.html b/docs/apisix/discovery/consul_kv/index.html
index d04b3bd..9002772 100644
--- a/docs/apisix/discovery/consul_kv/index.html
+++ b/docs/apisix/discovery/consul_kv/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">consul_kv | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/discovery/consul_kv"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 <img src="https://user-images.githubusercontent.com/548385/107141841-6ced3e00-6966-11eb-8aa4-bc790a4ad113.png"></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="configuration-for-discovery-client"></a>Configuration for discovery client<a class="hash-link" href="#configuration-for-discovery-client" title="Direct link to heading">#</a></h2><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="configuration-for-consul-kv"></a>Configuration for Consul KV<a class="hash-link" [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">\</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    -X PUT </span><span class="token punctuation" style="color:rgb(199, 146, 234)">\</span><span class="token [...]
 To avoid confusion, use the full consul key url path as service name in practice.</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="upstream-setting"></a>Upstream setting<a class="hash-link" href="#upstream-setting" title="Direct link to heading">#</a></h3><p>Here is an example of routing a request with a URL of &quot;/*&quot; to a service which named &quot;<a href="http://127.0.0.1:8500/v1/kv/upstreams/webpages/%22" target="_blank" rel="noopener noreferrer">http://127.0.0.1: [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/discovery/dns/index.html b/docs/apisix/discovery/dns/index.html
index 0e7de50..aa0a540 100644
--- a/docs/apisix/discovery/dns/index.html
+++ b/docs/apisix/discovery/dns/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">DNS | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/discovery/dns"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -30,7 +30,7 @@ noisy).  In the presence of records containing weights greater
 than 0, records with weight 0 should have a very small chance of
 being selected.</p></blockquote><p>We treat weight 0 record has a weight of 1 so the node &quot;have a very small chance of
 being selected&quot;, which is also the common way to treat this type of record.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/en/latest/discovery/dns.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_2_ui" aria-label="Edit page"><g><path d="m34.5 11.7l-3 3.1-6.3- [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/discovery/eureka/index.html b/docs/apisix/discovery/eureka/index.html
index 6ffdf29..b04ed7c 100644
--- a/docs/apisix/discovery/eureka/index.html
+++ b/docs/apisix/discovery/eureka/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">eureka | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/discovery/eureka"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docu [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 reading from <a href="/docs/apisix/discovery#supported-discovery-registries">Supported discovery registries</a>.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/en/latest/discovery/eureka.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_2_ui" aria-label="Edit page" [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/discovery/index.html b/docs/apisix/discovery/index.html
index 77551cb..6ba5af6 100644
--- a/docs/apisix/discovery/index.html
+++ b/docs/apisix/discovery/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Integration service discovery registry | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/discovery"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="t [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -32,7 +32,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">HTTP/1.1 </span><span class="token number" style="color:rgb(247, 140, 108)">201</span><span class="token plain"> Created</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Date: Sat, </span><span class="token number" style="color:rgb(247, 140, 108)">31</span><span class="token plain"> Aug </span><span class="token number" style="color:rgb(247, 140, 108)">2019</span><span  [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;node&quot;</span><span class="token plain">:</span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;value&quot;</span><span class="token plain">:</span><span class="token  [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/routes/2 -H </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;X-API-KEY: edd1c9f034335f136f87ad84b625c8f1&#x27;</span><span class="token plain"> -X PUT -i -d </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;</span></ [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/discovery/nacos/index.html b/docs/apisix/discovery/nacos/index.html
index bff3ee3..198a059 100644
--- a/docs/apisix/discovery/nacos/index.html
+++ b/docs/apisix/discovery/nacos/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">nacos | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/discovery/nacos"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusa [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/examples/plugins-hmac-auth-generate-signature/index.html b/docs/apisix/examples/plugins-hmac-auth-generate-signature/index.html
index 1ec8030..9a6cd4c 100644
--- a/docs/apisix/examples/plugins-hmac-auth-generate-signature/index.html
+++ b/docs/apisix/examples/plugins-hmac-auth-generate-signature/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">HMAC Generate Signature Examples | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/examples/plugins-hmac-auth-generate-signature"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="curre [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -55,7 +55,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">--to base64</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">ngx.say(ngx.encode_base64(digest))</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="shell"></a>Shell<a class="hash-link" href="#shell" title="Direct link to heading">#</a [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># to lowercase hexits</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token builtin class-name" style="color:rgb(255, 203, 107)">echo</span><span class="token plain"> -e </span><span class="token variable" style="color:rgb(191, 199, [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># to base64</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token builtin class-name" style="color:rgb(255, 203, 107)">echo</span><span class="token plain"> -e </span><span class="token variable" style="color:rgb(191, 199, 213)">$ME [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/getting-started/index.html b/docs/apisix/getting-started/index.html
index 9cc9cd4..748ad6a 100644
--- a/docs/apisix/getting-started/index.html
+++ b/docs/apisix/getting-started/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Getting Started | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/getting-started"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 the proxy-rewrite plugin to do it.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly bash"><div tabindex="0" class="prism-code language-bash codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> </span><span class="token string" s [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/grpc-proxy/index.html b/docs/apisix/grpc-proxy/index.html
index 7de2da3..a2d362a 100644
--- a/docs/apisix/grpc-proxy/index.html
+++ b/docs/apisix/grpc-proxy/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">gRPC Proxy | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/grpc-proxy"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusa [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 gRPC client -&gt; APISIX -&gt; gRPC/gRPCS server</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="parameters"></a>Parameters<a class="hash-link" href="#parameters" title="Direct link to heading">#</a></h2><ul><li><code>scheme</code>: the <code>scheme</code> of the route&#x27;s upstream must be <code>grpc</code> or <code>grpcs</code>.</li><li><code>uri</code>: format likes /service/method, Example:/helloworld.Greeter/SayHello</li></ul><h3><a aria-hidden="true" tabindex="-1" c [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/health-check/index.html b/docs/apisix/health-check/index.html
index 96cd150..f28cb71 100644
--- a/docs/apisix/health-check/index.html
+++ b/docs/apisix/health-check/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Health Check | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/health-check"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:do [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@ you can use it for upstream.</p><p>Note:</p><ul><li>We only start the health che
 There won&#x27;t be any health check if an upstream is configured but isn&#x27;t in used.</li><li>If there is no healthy node can be chosen, we will continue to access the upstream.</li><li>We won&#x27;t start the health check when the upstream only has one node, as we will access
 it whether this unique node is healthy or not.</li></ul><p>The following is an example of health check:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> [...]
 contains: <code>active</code> or <code>passive</code>.</p><ul><li><p><code>active</code>: To enable active health checks, you need to specify the configuration items under <code>checks.active</code> in the Upstream object configuration.</p><ul><li><p><code>active.timeout</code>: Socket timeout for active checks (in seconds), support decimals. For example <code>1.01</code> means <code>1010</code> milliseconds, <code>2</code> means <code>2000</code> milliseconds.</p></li><li><p><code>activ [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/how-to-build/index.html b/docs/apisix/how-to-build/index.html
index 70235be..385e5f4 100644
--- a/docs/apisix/how-to-build/index.html
+++ b/docs/apisix/how-to-build/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">How to build Apache APISIX | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/how-to-build"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -32,7 +32,7 @@ Here is an example:</p><div class="codeBlockContainer_K1bP"><div class="codeBloc
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/routes?api_key</span><span class="token operator" style="color:rgb(137, 221, 255)">=</span><span class="token plain">abcdefghabcdefgh-invalid -i</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">HTTP/1.1 </span><span class="token [...]
 If you need those features, you can build OpenResty with
 <a href="https://raw.githubusercontent.com/api7/apisix-build-tools/master/build-apisix-openresty.sh" target="_blank" rel="noopener noreferrer">this build script</a>.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/en/latest/how-to-build.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/https/index.html b/docs/apisix/https/index.html
index 423cf2b..aeb3b41 100644
--- a/docs/apisix/https/index.html
+++ b/docs/apisix/https/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">HTTPS | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/https"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus_tag"  [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -36,7 +36,7 @@ and RSA key-exchange algorithm, then just configure the extra certificates (the
 first certificate and private key should be still put in <code>cert</code> and <code>key</code>) and
 private keys by <code>certs</code> and <code>keys</code>.</p><ul><li><code>certs</code>: PEM-encoded certificate array.</li><li><code>keys</code>: PEM-encoded private key array.</li></ul><p><code>APISIX</code> will pair certificate and private key with the same indice as a SSL key
 pair. So the length of <code>certs</code> and <code>keys</code> must be same.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/en/latest/https.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_2_ui" aria-label="Edit page"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0 [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/install-dependencies/index.html b/docs/apisix/install-dependencies/index.html
index 7400c10..1784b49 100644
--- a/docs/apisix/install-dependencies/index.html
+++ b/docs/apisix/install-dependencies/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Dependencies | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/install-dependencies"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" na [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -40,7 +40,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># start etcd server</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">nohup</span><span class="token plain"> etcd </span><span class="token operator" style="color:rgb(137, 221, 255)">&a [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># start etcd server</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">brew services start etcd</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># enable TLS for etcd server</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">etcd --cert-file</span><span class="token operator" style="color:rgb(137, 221, 255)">=</span><span class="token plain">/path/to/cert --key-file</span><span class="token operat [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/mtls/index.html b/docs/apisix/mtls/index.html
index 55919ce..4dd0c5b 100644
--- a/docs/apisix/mtls/index.html
+++ b/docs/apisix/mtls/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Mutual TLS authentication for Admin API | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/mtls"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">  </span><span class="token key atrule">admin_api_mtls</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    </span><span class="token key atrule">admin_ssl_ca_cert</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plai [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugin-develop/index.html b/docs/apisix/plugin-develop/index.html
index 1b7b653..a8c6ea6 100644
--- a/docs/apisix/plugin-develop/index.html
+++ b/docs/apisix/plugin-develop/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Plugin Develop | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugin-develop"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -28,7 +28,7 @@ configuration file in <strong>apisix/cli/ngx_tpl.lua</strong> file. But it is ea
 existing plugin mechanism, <strong>we do not recommend this unless you have a complete grasp of the code</strong>.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="name-and-config"></a>name and config<a class="hash-link" href="#name-and-config" title="Direct link to heading">#</a></h2><p>Determine the name and priority of the plugin, and add to conf/config-default.yaml. For example, for the example-plugin plugin,
 you need to specify the plugin name in the code (the name is the unique identifier of the plugin and cannot be
 duplicate), you can see the code in file &quot;<strong>apisix/plugins/example-plugin.lua</strong>&quot; :</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly lua"><div tabindex="0" class="prism-code language-lua codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">local plugin_name = &quot;example-plugin&quot;</span></div><div class="toke [...]
-</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">local _M = {</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    version = 0.1,</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    priority = 0,</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    name = plugin_name,</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plai [...]
+</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">local _M = {</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    version = 0.1,</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    priority = 0,</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    name = plugin_name,</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plai [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token key atrule">plugins</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"> </span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># copied from config-default.yaml</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">  </span><span cla [...]
 configuration data:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly json"><div tabindex="0" class="prism-code language-json codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">  [...]
 verification.</p><p>In addition, if the plugin needs to use some metadata, we can define the plugin <code>metadata_schema</code>, and then we can dynamically manage these metadata through the <code>admin api</code>. Example:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly lua"><div tabindex="0" class="prism-code language-lua codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" styl [...]
@@ -53,7 +53,7 @@ return items of HTTP include HTTP status, HTTP response header, HTTP response bo
 You may need to use <a href="/docs/apisix/plugin-interceptors">interceptors</a> to protect it.</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="register-control-api"></a>Register control API<a class="hash-link" href="#register-control-api" title="Direct link to heading">#</a></h3><p>If you only want to expose the API to the localhost or intranet, you can expose it via <a href="/docs/apisix/control-api">Control API</a>.</p><p>Take a look at example-plugin plugin:</p><div clas [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">function _M.control_api()</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    return {</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">        {</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">            methods = {&quot;GET&quot;},</span></div><div class="token-line" style="color:#bfc7d5"><span c [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugin-interceptors/index.html b/docs/apisix/plugin-interceptors/index.html
index 056d4b9..a0c286a 100644
--- a/docs/apisix/plugin-interceptors/index.html
+++ b/docs/apisix/plugin-interceptors/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Plugin interceptors | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugin-interceptors"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -26,7 +26,7 @@ to run rules to protect them.</p><p>Here is an example to limit the access of <c
 to clients in <code>10.0.0.0/24</code>:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix [...]
 the name of plugin which you want to run and the <code>conf</code> is the configuration of the
 plugin.</p><p>Currently we only support a subset of plugins which can be run as interceptors.</p><p>Supported interceptors:</p><ul><li><a href="/docs/apisix/plugins/ip-restriction">ip-restriction</a></li></ul></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/en/latest/plugin-interceptors.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectR [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/api-breaker/index.html b/docs/apisix/plugins/api-breaker/index.html
index d04022b..766d804 100644
--- a/docs/apisix/plugins/api-breaker/index.html
+++ b/docs/apisix/plugins/api-breaker/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">api-breaker | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/api-breaker"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token plain">. </span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token plain">.</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h2><a aria-hidden="true" tabindex="-1" class="anchor" id= [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/authz-keycloak/index.html b/docs/apisix/plugins/authz-keycloak/index.html
index d0e7096..95fc6b1 100644
--- a/docs/apisix/plugins/authz-keycloak/index.html
+++ b/docs/apisix/plugins/authz-keycloak/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">authz-keycloak | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/authz-keycloak"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name=" [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -47,7 +47,7 @@ APISIX plugins are hot-reloaded, therefore no need to restart APISIX.</p><div cl
 API workflows. Run the following docker image and visit <code>http://localhost:8090</code> to view the associated policies for the unit tests.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly bash"><div tabindex="0" class="prism-code language-bash codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">docker run -e </span><span class="to [...]
 However, Keycloak&#x27;s official adapters (Java, JS) also provides path matching by querying Keycloak paths dynamically, and
 lazy loading the paths to identity resources. Future version on authz-plugin will support this functionality.</p></li><li><p>Support to read scope and configurations from the Keycloak JSON File</p></li></ul></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/en/latest/plugins/authz-keycloak.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspect [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/basic-auth/index.html b/docs/apisix/plugins/basic-auth/index.html
index ec11363..9e5ec30 100644
--- a/docs/apisix/plugins/basic-auth/index.html
+++ b/docs/apisix/plugins/basic-auth/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">basic-auth | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/basic-auth"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> htt [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/batch-requests/index.html b/docs/apisix/plugins/batch-requests/index.html
index e770400..e06cef1 100644
--- a/docs/apisix/plugins/batch-requests/index.html
+++ b/docs/apisix/plugins/batch-requests/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">batch-requests | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/batch-requests"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name=" [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 You may need to use <a href="/docs/apisix/plugin-interceptors">interceptors</a> to protect it.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="how-to-enable"></a>How To Enable<a class="hash-link" href="#how-to-enable" title="Direct link to heading">#</a></h2><p>Default enabled</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="how-to-configure"></a>How To Configure<a class="hash-link" href="#how-to-configure" title="Direct link to heading">#</a></h2><p>By default [...]
 You can configure it via <code>apisix/admin/plugin_metadata/batch-requests</code>:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:908 [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/consumer-restriction/index.html b/docs/apisix/plugins/consumer-restriction/index.html
index 5465916..f1cdbae 100644
--- a/docs/apisix/plugins/consumer-restriction/index.html
+++ b/docs/apisix/plugins/consumer-restriction/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">consumer-restriction | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/consumer-restriction"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet=" [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -26,7 +26,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/services/2 -H </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;X-API-KEY: edd1c9f034335f136f87ad84b625c8f1&#x27;</span><span class="token plain"> -X PUT -d </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;</span></div [...]
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/rou [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/cors/index.html b/docs/apisix/plugins/cors/index.html
index ebb88d9..80bb12d 100644
--- a/docs/apisix/plugins/cors/index.html
+++ b/docs/apisix/plugins/cors/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">cors | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/cors"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 When using <code>**</code>, you must fully understand that it introduces some security risks, such as CSRF, so make sure that this security level meets your expectations before using it。</p></blockquote><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="how-to-enable"></a>How To Enable<a class="hash-link" href="#how-to-enable" title="Direct link to heading">#</a></h2><p>Create a <code>Route</code> or <code>Service</code> object and configure <code>cors</code> plugin.</p><div clas [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/dubbo-proxy/index.html b/docs/apisix/plugins/dubbo-proxy/index.html
index a5980b0..7e0e11a 100644
--- a/docs/apisix/plugins/dubbo-proxy/index.html
+++ b/docs/apisix/plugins/dubbo-proxy/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">dubbo-proxy | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/dubbo-proxy"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -27,7 +27,7 @@ They should provide the same result.</p><p>The returned data from upstream dubbo
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> htt [...]
 you need to comment out in the <code>config.yaml</code>:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">plugins</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></sp [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/echo/index.html b/docs/apisix/plugins/echo/index.html
index d2bde94..161817c 100644
--- a/docs/apisix/plugins/echo/index.html
+++ b/docs/apisix/plugins/echo/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">echo | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/echo"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 APISIX plugins are hot-reloaded, therefore no need to restart APISIX.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain" [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/error-log-logger/index.html b/docs/apisix/plugins/error-log-logger/index.html
index 242c574..5ab0855 100644
--- a/docs/apisix/plugins/error-log-logger/index.html
+++ b/docs/apisix/plugins/error-log-logger/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">error-log-logger | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/error-log-logger"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" na [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 <a href="/docs/apisix/batch-processor">Batch-Processor</a></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="attributes"></a>Attributes<a class="hash-link" href="#attributes" title="Direct link to heading">#</a></h2><table><thead><tr><th>Name</th><th>Type</th><th>Requirement</th><th>Default</th><th>Valid</th><th>Description</th></tr></thead><tbody><tr><td>host</td><td>string</td><td>required</td><td></td><td></td><td>IP address or the Hostname of the TCP server.</td></tr><tr> [...]
 It does not need to be bound in any route or service.</p><p>Here is an example of <code>conf/config.yaml</code>:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">plugins</span><span class="token punctuation" style="color:rg [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/fault-injection/index.html b/docs/apisix/plugins/fault-injection/index.html
index 77a390c..2965e89 100644
--- a/docs/apisix/plugins/fault-injection/index.html
+++ b/docs/apisix/plugins/fault-injection/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">fault-injection | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/fault-injection"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -41,7 +41,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Fault Injection</span><span class="token operator" style="color:rgb(137, 221, 255)">!</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><ol start="2"><li>The request header <code>apikey</code> is successfully matched, and the request parameters are missing, and fault injection is performed:</li></ol><div class="codeBlockCont [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Fault Injection</span><span class="token operator" style="color:rgb(137, 221, 255)">!</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><ol start="3"><li>Both request parameters and request headers fail to match, and fault injection is not performed:</li></ol><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_ [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">hello</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="disable-plugin"></a>Disable Plugin<a class="hash-link" href="#disable-plugin" title="Direct link to heading">#</a></h2><p>Remove the corresponding JSON in the plugin configuration to disable the plugin immediate [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/grpc-transcode/index.html b/docs/apisix/plugins/grpc-transcode/index.html
index 7463a85..f9143b7 100644
--- a/docs/apisix/plugins/grpc-transcode/index.html
+++ b/docs/apisix/plugins/grpc-transcode/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">grpc-transcode | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/grpc-transcode"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name=" [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;message&quot;</span><span class="token builtin class-name" style="color:rgb(255, 203, 107)">:</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;Hello world&quot;</span><span class="token punctuation" style="color:rgb(199, 146, 234)">}</spa [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;workflowKey&quot;</span><span class="token builtin class-name" style="color:rgb(255, 203, 107)">:</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;#2251799813685260&quot;</span><span class="token plain">,</span><span class="token string"  [...]
 APISIX plugins are hot-reloaded, therefore no need to restart APISIX.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admi [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/hmac-auth/index.html b/docs/apisix/plugins/hmac-auth/index.html
index 60895f6..142da6a 100644
--- a/docs/apisix/plugins/hmac-auth/index.html
+++ b/docs/apisix/plugins/hmac-auth/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">hmac-auth | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/hmac-auth"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch: [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -33,7 +33,7 @@
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> htt [...]
 Need to pay attention to the handling of newline characters in signature strings in various languages, which can easily lead to the problem of <code>{&quot;message&quot;:&quot;Invalid signature&quot;}</code>.</p><p>Example inputs:</p><table><thead><tr><th>Variable</th><th>Value</th></tr></thead><tbody><tr><td>secret</td><td>this is secret key</td></tr><tr><td>message</td><td>this is signature string</td></tr></tbody></table><p>Example outputs:</p><table><thead><tr><th>Type</th><th>Hash</ [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/http-logger/index.html b/docs/apisix/plugins/http-logger/index.html
index f2286ea..6d08344 100644
--- a/docs/apisix/plugins/http-logger/index.html
+++ b/docs/apisix/plugins/http-logger/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">http-logger | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/http-logger"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 APISIX plugins are hot-reloaded, therefore no need to restart APISIX.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain" [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/index.html b/docs/apisix/plugins/index.html
index c93e4e2..fa80ab4 100644
--- a/docs/apisix/plugins/index.html
+++ b/docs/apisix/plugins/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Plugins | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus_t [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 the its execution will be skipped.</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="hot-reload-in-stand-alone-mode"></a>Hot reload in stand-alone mode<a class="hash-link" href="#hot-reload-in-stand-alone-mode" title="Direct link to heading">#</a></h3><p>For stand-alone mode, see plugin related section in <a href="/docs/apisix/stand-alone">stand alone mode</a>.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/ip-restriction/index.html b/docs/apisix/plugins/ip-restriction/index.html
index 2888c96..f032971 100644
--- a/docs/apisix/plugins/ip-restriction/index.html
+++ b/docs/apisix/plugins/ip-restriction/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ip-restriction | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/ip-restriction"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name=" [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -28,7 +28,7 @@ you can send the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/rou [...]
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> htt [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/jwt-auth/index.html b/docs/apisix/plugins/jwt-auth/index.html
index 6d8756e..bb8c046 100644
--- a/docs/apisix/plugins/jwt-auth/index.html
+++ b/docs/apisix/plugins/jwt-auth/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">jwt-auth | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/jwt-auth"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:do [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -30,7 +30,7 @@ You may need to use <a href="/docs/apisix/plugin-interceptors">interceptors</a>
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token operator" style="color:rgb(137, 221, 255)">!</span><span class="token plain">DOCTYPE html</span><span class="token operator" style="color:rgb(137, 221, 255)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token op [...]
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> htt [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/kafka-logger/index.html b/docs/apisix/plugins/kafka-logger/index.html
index 5596bc3..5b62f63 100644
--- a/docs/apisix/plugins/kafka-logger/index.html
+++ b/docs/apisix/plugins/kafka-logger/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">kafka-logger | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/kafka-logger"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docs [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -28,7 +28,7 @@ or every <code>buffer_duration</code> flush the buffer.</p><p>In case of success
 In case of errors, returns <code>nil</code> with a string describing the error (<code>buffer overflow</code>).</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="sample-broker-list"></a>Sample broker list<a class="hash-link" href="#sample-broker-list" title="Direct link to heading">#</a></h3><p>This plugin supports to push in to more than one broker at a time. Specify the brokers of the external kafka servers as below
 sample to take effect of this functionality.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly json"><div tabindex="0" class="prism-code language-json codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><s [...]
 APISIX plugins are hot-reloaded, therefore no need to restart APISIX.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain" [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/key-auth/index.html b/docs/apisix/plugins/key-auth/index.html
index 75640c2..c7747ff 100644
--- a/docs/apisix/plugins/key-auth/index.html
+++ b/docs/apisix/plugins/key-auth/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">key-auth | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/key-auth"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:do [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -26,7 +26,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.2:9080/index.html -H </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;apikey: abcabcabc&#x27;</span><span class="token plain"> -i</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">HTTP/1.1 </span><span class="token number" st [...]
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> htt [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/limit-conn/index.html b/docs/apisix/plugins/limit-conn/index.html
index 2f4e766..1a5d362 100644
--- a/docs/apisix/plugins/limit-conn/index.html
+++ b/docs/apisix/plugins/limit-conn/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">limit-conn | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/limit-conn"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -26,7 +26,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> -i http://127.0.0.1:9080/index.html?sleep</span><span class="token operator" style="color:rgb(137, 221, 255)">=</span><span class="token number" style="color:rgb(247, 140, 108)">20</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></ [...]
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/rou [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/limit-count/index.html b/docs/apisix/plugins/limit-count/index.html
index cf370d0..3b78e3e 100644
--- a/docs/apisix/plugins/limit-count/index.html
+++ b/docs/apisix/plugins/limit-count/index.html
@@ -15,19 +15,19 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">limit-count | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/limit-count"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 <img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/plugin/limit-count-1.png" alt="Add a router."></p><p>Then add limit-count plugin:
-<img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/plugin/limit-count-2.png" alt="Add limit-count plugin."></p><p>If you need a cluster-level precision traffic limit, then we can do it with the redis server. The rate limit of the traffic will be shared between different APISIX nodes to limit the rate of cluster traffic.</p><p>Here is the example if we use single <code>redis</code> policy:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockConten [...]
+<img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/plugin/limit-count-2.png" alt="Add limit-count plugin."></p><p>If you need a cluster-level precision traffic limit, then we can do it with the redis server. The rate limit of the traffic will be shared between different APISIX nodes to limit the rate of cluster traffic.</p><p>Here is the example if we use single <code>redis</code> policy:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockConten [...]
 which mean the total number of requests and the remaining number of requests that can be sent:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">HTTP/1.1 </span><span class="token number" style="color:rgb(247, 140, 108)">200</s [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token plain">html</span><span class="token operator" style="color:rgb(137, 221, 255)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token plain"> [...]
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/rou [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/limit-req/index.html b/docs/apisix/plugins/limit-req/index.html
index fcd2c4b..9cadbef 100644
--- a/docs/apisix/plugins/limit-req/index.html
+++ b/docs/apisix/plugins/limit-req/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">limit-req | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/limit-req"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch: [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&lt;</span><span class="token tag" style="color:rgb(255, 85, 114)">html</span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(19 [...]
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/rou [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/log-rotate/index.html b/docs/apisix/plugins/log-rotate/index.html
index d4adea7..db0b9fa 100644
--- a/docs/apisix/plugins/log-rotate/index.html
+++ b/docs/apisix/plugins/log-rotate/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">log-rotate | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/log-rotate"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@ When the number of log files exceeds the remaining number, the old files are aut
 For example, the following example is a sample based on <code>interval: 10</code> and <code>max_kept: 10</code>.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ ll logs</span></div><div class="token-line" style="color:#bfc7 [...]
 It does not need to be bound in any route or service.</p><p>Here is an example of <code>conf/config.yaml</code>:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">plugins</span><span class="token punctuation" style="color:rg [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token key atrule">plugin_attr</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    </span><span class="token key atrule">log-rotate</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span></ [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/mqtt-proxy/index.html b/docs/apisix/plugins/mqtt-proxy/index.html
index af0ab26..87f9286 100644
--- a/docs/apisix/plugins/mqtt-proxy/index.html
+++ b/docs/apisix/plugins/mqtt-proxy/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">mqtt-proxy | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/mqtt-proxy"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 balance by <code>client_id</code> of MQTT.</p><p>And this plugin both support MQTT protocol <a href="http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html" target="_blank" rel="noopener noreferrer">3.1.*</a> and <a href="https://docs.oasis-open.org/mqtt/mqtt/v5.0/mqtt-v5.0.html" target="_blank" rel="noopener noreferrer">5.0</a>.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="attributes"></a>Attributes<a class="hash-link" href="#attributes" title="Direct link t [...]
 For example, the following configuration represents listening on the 9100 TCP port.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(199, 146, 234)">...</span><span cla [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/node-status/index.html b/docs/apisix/plugins/node-status/index.html
index e5436c5..903d640 100644
--- a/docs/apisix/plugins/node-status/index.html
+++ b/docs/apisix/plugins/node-status/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">node-status | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/node-status"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -28,7 +28,7 @@ And this plugin will not make any difference in future requests, so usually we d
 then you can not add this plugin in any route.</li></ol><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly"><div tabindex="0" class="prism-code language-undefined codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">plugins:                          # plugin list</span></div><div class="token-line" style="color:#bfc7d5"><span class="token p [...]
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately.</li></ol><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly sh"><div tabindex="0" class="prism-code language-sh codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ curl http://127.0.0.1:9080/apisix/admin/routes/1 -H &#x27;X-API-KEY: edd1c9f034335f136f87ad84b625c8f1&#x27; -X [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/openid-connect/index.html b/docs/apisix/plugins/openid-connect/index.html
index cb0b29f..2eb1b57 100644
--- a/docs/apisix/plugins/openid-connect/index.html
+++ b/docs/apisix/plugins/openid-connect/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">openid-connect | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/openid-connect"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name=" [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -48,7 +48,7 @@ Once the user has authenticated against the identity provider, the plugin will o
 and further information from the identity provider on behalf of the user. The information is currently stored
 in a session cookie that the user agent can submit on subsequent requests. The plugin will recognize the cookie
 and use the information therein to avoid having to go through the flow again.</p><p>The following command adds this mode of operation to a route.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly bash"><div tabindex="0" class="prism-code language-bash codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255 [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/prometheus/index.html b/docs/apisix/plugins/prometheus/index.html
index f0968da..90b1118 100644
--- a/docs/apisix/plugins/prometheus/index.html
+++ b/docs/apisix/plugins/prometheus/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">prometheus | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/prometheus"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -26,7 +26,7 @@ you may need to use <a href="/docs/apisix/plugin-interceptors">interceptors</a>
 Notice, <code>name</code> could be duplicated for multiple routes/services, so when set <code>prefer_name</code> to <code>true</code>, take care of naming format or it could be misleading.</p><p>For example:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc [...]
 these metric data.</p><p>For example like this:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">scrape_configs</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span [...]
 APISIX plugins are hot-reloaded, therefore no need to restart APISIX.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admi [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/proxy-cache/index.html b/docs/apisix/plugins/proxy-cache/index.html
index fb9f11f..2fb723b 100644
--- a/docs/apisix/plugins/proxy-cache/index.html
+++ b/docs/apisix/plugins/proxy-cache/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">proxy-cache | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/proxy-cache"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -26,7 +26,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">hello</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><blockquote><p>http status is &#x27;200&#x27; and the response header contains &#x27;Apisix-Cache-Status&#x27; to indicate that the plug-in is enabled.</p></blockquote><ol start="3"><li>Verify that the data is cached and request the above address again:</li></ol><div cl [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">hello</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><blockquote><p>The response header <code>Apisix-Cache-Status</code> value has changed to HIT, indicating that the data has been cached</p></blockquote><p>Example 3: Specifying cache_zone as <code>invalid_disk_cache</code> is inconsistent with the cache area <code>disk_c [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token plain">html</span><span class="token operator" style="color:rgb(137, 221, 255)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token plain"> [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/proxy-mirror/index.html b/docs/apisix/plugins/proxy-mirror/index.html
index 74cf1de..cf7cb6a 100644
--- a/docs/apisix/plugins/proxy-mirror/index.html
+++ b/docs/apisix/plugins/proxy-mirror/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">proxy-mirror | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/proxy-mirror"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docs [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">hello world</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><blockquote><p>Since the specified mirror address is 127.0.0.1:9797, so to verify whether this plugin is in effect, we need to confirm on the service with port 9797.
 For example, we can start a simple server:  python -m SimpleHTTPServer 9797</p></blockquote><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="disable-plugin"></a>Disable Plugin<a class="hash-link" href="#disable-plugin" title="Direct link to heading">#</a></h2><p>Remove the corresponding JSON in the plugin configuration to disable the plugin immediately without restarting the service:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex= [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/proxy-rewrite/index.html b/docs/apisix/plugins/proxy-rewrite/index.html
index 3aad4f0..013121d 100644
--- a/docs/apisix/plugins/proxy-rewrite/index.html
+++ b/docs/apisix/plugins/proxy-rewrite/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">proxy-rewrite | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/proxy-rewrite"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="do [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately :</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/ro [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/redirect/index.html b/docs/apisix/plugins/redirect/index.html
index dda5eb8..c138ed4 100644
--- a/docs/apisix/plugins/redirect/index.html
+++ b/docs/apisix/plugins/redirect/index.html
@@ -15,16 +15,16 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">redirect | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/redirect"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:do [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token plain">.</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>We can check the response code and the response header <code>Location</code>.</p><p>It shows that the <code>redirect</code> plugin is in effect.</p><p> Here is an e [...]
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately :</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/ro [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/referer-restriction/index.html b/docs/apisix/plugins/referer-restriction/index.html
index 9044c8a..841cbca 100644
--- a/docs/apisix/plugins/referer-restriction/index.html
+++ b/docs/apisix/plugins/referer-restriction/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">referer-restriction | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/referer-restriction"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="tr [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 whitelisting request header Referrers.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="attributes"></a>Attributes<a class="hash-link" href="#attributes" title="Direct link to heading">#</a></h2><table><thead><tr><th>Name</th><th>Type</th><th>Requirement</th><th>Default</th><th>Valid</th><th>Description</th></tr></thead><tbody><tr><td>whitelist</td><td>array[string]</td><td>required</td><td></td><td></td><td>List of hostname to whitelist. The hostname can be started with <co [...]
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> htt [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/request-id/index.html b/docs/apisix/plugins/request-id/index.html
index f2db2d6..c68255a 100644
--- a/docs/apisix/plugins/request-id/index.html
+++ b/docs/apisix/plugins/request-id/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">request-id | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/request-id"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 API request. The plugin will not add a request id if the <code>header_name</code> is already present in the request.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="attributes"></a>Attributes<a class="hash-link" href="#attributes" title="Direct link to heading">#</a></h2><table><thead><tr><th>Name</th><th>Type</th><th>Requirement</th><th>Default</th><th>Valid</th><th>Description</th></tr></thead><tbody><tr><td>header_name</td><td>string</td><td>optional</td><td>&quot;X-Requ [...]
 APISIX plugins are hot-reloaded, therefore no need to restart APISIX.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admi [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/request-validation/index.html b/docs/apisix/plugins/request-validation/index.html
index fdf119d..c4f09d7 100644
--- a/docs/apisix/plugins/request-validation/index.html
+++ b/docs/apisix/plugins/request-validation/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">request-validation | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/request-validation"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 json-schema to validate the schema. The plugin can be used to validate the headers and body data.</p><p>For more information on schema, refer to <a href="https://github.com/api7/jsonschema" target="_blank" rel="noopener noreferrer">JSON schema</a> for more information.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="attributes"></a>Attributes<a class="hash-link" href="#attributes" title="Direct link to heading">#</a></h2><table><thead><tr><th>Name</th><th>Type</th><th>Requi [...]
 APISIX plugins are hot-reloaded, therefore no need to restart APISIX.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admi [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/response-rewrite/index.html b/docs/apisix/plugins/response-rewrite/index.html
index 891fb79..190356c 100644
--- a/docs/apisix/plugins/response-rewrite/index.html
+++ b/docs/apisix/plugins/response-rewrite/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">response-rewrite | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/response-rewrite"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" na [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">{&quot;code&quot;:&quot;ok&quot;,&quot;message&quot;:&quot;new json body&quot;}</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>This means that the <code>response rewrite</code> plugin is in effect.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="disable-plugin"></a>Disable Plugin<a class="hash-link" href= [...]
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/rou [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/server-info/index.html b/docs/apisix/plugins/server-info/index.html
index f189e82..2d3ae99 100644
--- a/docs/apisix/plugins/server-info/index.html
+++ b/docs/apisix/plugins/server-info/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">server-info | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/server-info"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/serverless/index.html b/docs/apisix/plugins/serverless/index.html
index 28b9b68..5dc3d4e 100644
--- a/docs/apisix/plugins/serverless/index.html
+++ b/docs/apisix/plugins/serverless/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">serverless | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/serverless"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 which indicates that the specified function is in effect.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="disable-plugin"></a>Disable Plugin<a class="hash-link" href="#disable-plugin" title="Direct link to heading">#</a></h2><p>When you want to disable the serverless plugin, it is very simple,
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/rou [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/skywalking/index.html b/docs/apisix/plugins/skywalking/index.html
index 6c9f6b0..cd37367 100644
--- a/docs/apisix/plugins/skywalking/index.html
+++ b/docs/apisix/plugins/skywalking/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">skywalking | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/skywalking"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -36,7 +36,7 @@ you need to comment out in the <code>config.yaml</code>:</p><div class="codeBloc
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token keyword" style="font-style:italic">import</span><span class="token plain"> </span><span class="token namespace" style="color:rgb(178, 204, 214)">org</span><span class="token namespace punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token namespace" style="color:rgb(178, 204, 214)">springframework</span><span class="token namespace punctuation" style="color:rgb [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic">/**</span></div><div class="token-line" style="color:#bfc7d5"><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"> * @author cyxinda</span></div><div class="token-line" style="color:#bfc7d5"><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"> * @create 2020-05-29 14 [...]
 update the file of agent/config/agent.config</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">agent.service_name</span><span class="token operator" style="color:rgb(137, 221, 255)">=</span><span class="token plain">yourservern [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/sls-logger/index.html b/docs/apisix/plugins/sls-logger/index.html
index 84f44d5..89d8d87 100644
--- a/docs/apisix/plugins/sls-logger/index.html
+++ b/docs/apisix/plugins/sls-logger/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">sls-logger | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/sls-logger"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 <a href="/docs/apisix/batch-processor">Batch-Processor</a></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="attributes"></a>Attributes<a class="hash-link" href="#attributes" title="Direct link to heading">#</a></h2><table><thead><tr><th>Name</th><th>Requirement</th><th>Description</th></tr></thead><tbody><tr><td>host</td><td>required</td><td>IP address or the Hostname of the TCP server, please reference ali cloud log <a href="https://help.aliyun.com/document_detail/29008.htm [...]
 </span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="test-plugin"></a>Test Plugin<a class="hash-link" href="#test-plugin" title="Direct link to heading">#</a></h2><ul><li>success:</li></ul><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div  [...]
 APISIX plugins are hot-reloaded, therefore no need to restart APISIX.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain" [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/syslog/index.html b/docs/apisix/plugins/syslog/index.html
index 1c20a1d..91bc367 100644
--- a/docs/apisix/plugins/syslog/index.html
+++ b/docs/apisix/plugins/syslog/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">syslog | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/syslog"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusa [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 APISIX plugins are hot-reloaded, therefore no need to restart APISIX.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain" [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/tcp-logger/index.html b/docs/apisix/plugins/tcp-logger/index.html
index 5295d4e..e6be86a 100644
--- a/docs/apisix/plugins/tcp-logger/index.html
+++ b/docs/apisix/plugins/tcp-logger/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">tcp-logger | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/tcp-logger"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 <a href="/docs/apisix/batch-processor">Batch-Processor</a></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="attributes"></a>Attributes<a class="hash-link" href="#attributes" title="Direct link to heading">#</a></h2><table><thead><tr><th>Name</th><th>Type</th><th>Requirement</th><th>Default</th><th>Valid</th><th>Description</th></tr></thead><tbody><tr><td>host</td><td>string</td><td>required</td><td></td><td></td><td>IP address or the Hostname of the TCP server.</td></tr><tr> [...]
 APISIX plugins are hot-reloaded, therefore no need to restart APISIX.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain" [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/traffic-split/index.html b/docs/apisix/plugins/traffic-split/index.html
index 78fcbe5..5e58aa0 100644
--- a/docs/apisix/plugins/traffic-split/index.html
+++ b/docs/apisix/plugins/traffic-split/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">traffic-split | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/traffic-split"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="do [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -35,7 +35,7 @@ service_name, discovery_type, checks, retries, desc, scheme, labels, create_time
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">world </span><span class="token number" style="color:rgb(247, 140, 108)">1981</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">hello </span><span class="token number" style="color:rgb(247, 140, 108)">1980</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>After 5 requests, the service of port <code>1981</code> was hit 3 times, and the service of port <code>1980</code> was hit 2 times.</p><blockquote><ol start="3"><li>The expression verification of [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">hello </span><span class="token number" style="color:rgb(247, 140, 108)">1980</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="matching-rules-correspond-to-upstream"></a>Matching rules correspond to upstream<a class="hash-link" href="#matching-rules-correspond-to-up [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/udp-logger/index.html b/docs/apisix/plugins/udp-logger/index.html
index 96fb57c..01b7e58 100644
--- a/docs/apisix/plugins/udp-logger/index.html
+++ b/docs/apisix/plugins/udp-logger/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">udp-logger | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/udp-logger"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 <a href="/docs/apisix/batch-processor">Batch-Processor</a></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="attributes"></a>Attributes<a class="hash-link" href="#attributes" title="Direct link to heading">#</a></h2><table><thead><tr><th>Name</th><th>Type</th><th>Requirement</th><th>Default</th><th>Valid</th><th>Description</th></tr></thead><tbody><tr><td>host</td><td>string</td><td>required</td><td></td><td></td><td>IP address or the Hostname of the UDP server.</td></tr><tr> [...]
 APISIX plugins are hot-reloaded, therefore no need to restart APISIX.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain" [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/uri-blocker/index.html b/docs/apisix/plugins/uri-blocker/index.html
index 01d9786..5bca97b 100644
--- a/docs/apisix/plugins/uri-blocker/index.html
+++ b/docs/apisix/plugins/uri-blocker/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">uri-blocker | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/uri-blocker"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token plain">. </span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token plain">.</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h2><a aria-hidden="true" tabindex="-1" class="anchor" id= [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/wolf-rbac/index.html b/docs/apisix/plugins/wolf-rbac/index.html
index 5bc10d2..a6a65a6 100644
--- a/docs/apisix/plugins/wolf-rbac/index.html
+++ b/docs/apisix/plugins/wolf-rbac/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">wolf-rbac | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/wolf-rbac"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch: [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -43,7 +43,7 @@ The rbac feature is provided by <a href="https://github.com/iGeeky/wolf" target=
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">HTTP/1.1 </span><span class="token number" style="color:rgb(247, 140, 108)">200</span><span class="token plain"> OK</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;message&quot;</span><span class="token builtin class-name" st [...]
 you can delete the corresponding json configuration in the plugin configuration,
 no need to restart the service, it will take effect immediately:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/rou [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/plugins/zipkin/index.html b/docs/apisix/plugins/zipkin/index.html
index eab7c5f..655439d 100644
--- a/docs/apisix/plugins/zipkin/index.html
+++ b/docs/apisix/plugins/zipkin/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Zipkin | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/plugins/zipkin"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusa [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -29,7 +29,7 @@ no need to restart the service, it will take effect immediately:</p><div class="
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    tracer := GetTracer(...)</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    // use middleware to extract parentID from http header that injected by APISIX</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    r.Use(func(c *gin.Context) {</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">        span := this.Tracer.Extract(b3.ExtractHTTP(c.Request))</span></div><div class="token-line" style="color:#bfc7d5"><s [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">}</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/en/latest/plugins/zipkin.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAsp [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/profile/index.html b/docs/apisix/profile/index.html
index 20f2c56..2778555 100644
--- a/docs/apisix/profile/index.html
+++ b/docs/apisix/profile/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Configuration file switching based on environment variables | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/profile"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta d [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -27,7 +27,7 @@ requirements, we need to change the parameters in the configuration file to the
 development environment. You have to change it back. It&#x27;s very easy to make mistakes.</p><p>The solution to the above problem is to distinguish the current running environment through environment variables, and switch
 between different configuration files through environment variables. The corresponding environment variable in APISIX is: <code>APISIX_PROFILE</code></p><p>When <code>APISIX_PROFILE</code> is not set, the following three configuration files are used by default:</p><ul><li>conf/config.yaml</li><li>conf/apisix.yaml</li><li>conf/debug.yaml</li></ul><p>If the value of <code>APISIX_PROFILE</code> is set to <code>prod</code>, the following three configuration files are used:</p><ul><li>conf/co [...]
 tools such as git can be configured, and version management can be better achieved.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/en/latest/profile.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_2_ui" aria-label="Edit page"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/router-radixtree/index.html b/docs/apisix/router-radixtree/index.html
index fc6ca50..14b503a 100644
--- a/docs/apisix/router-radixtree/index.html
+++ b/docs/apisix/router-radixtree/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Router radixtree | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/router-radixtree"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docs [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@
 here is an simple example:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/routes [...]
 data from the request body. This limitation is configured via:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">graphql</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain [...]
 </span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>If you need to pass a graphql body which is larger than the limitation, you can increase the value in <code>conf/config.yaml</code>.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/en/latest/router-radixtree.md" target="_blank" rel="noreferrer noopener"><svg fill= [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/stand-alone/index.html b/docs/apisix/stand-alone/index.html
index 1cad37e..a783fa3 100644
--- a/docs/apisix/stand-alone/index.html
+++ b/docs/apisix/stand-alone/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Stand-alone mode | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/stand-alone"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 the APISIX will check if this file has any changed every second.
 If the file changed and we found <code>#END</code> at the end of the file,
 APISIX will load the rules in this file and update to memory of APISIX.</p><p>Here is a mini example:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">routes</span><span class="token punctuation" style="color:rgb(199, 146,  [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/apisix/stream-proxy/index.html b/docs/apisix/stream-proxy/index.html
index 70a54fb..45d48ed 100644
--- a/docs/apisix/stream-proxy/index.html
+++ b/docs/apisix/stream-proxy/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Stream Proxy | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/apisix/stream-proxy"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:do [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 By default, no any stream proxy is enabled.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apisix</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span></div><div  [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/dashboard/FAQ/index.html b/docs/dashboard/FAQ/index.html
index 4fe1909..01db44d 100644
--- a/docs/dashboard/FAQ/index.html
+++ b/docs/dashboard/FAQ/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">FAQ | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/dashboard/FAQ"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" c [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 Refer to the beginning in:
 <a href="https://apisix.apache.org/docs/apisix/control-api" target="_blank" rel="noopener noreferrer">https://apisix.apache.org/docs/apisix/control-api</a></p></li><li><p>Execute the following commands to export jsonchema on your APISIX server (if it is configured for non-local access, it does not need to be executed on your APISIX server, and the access IP and port should be modified accordingly)</p></li></ol><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly sh"><di [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/dashboard/I18N_USER_GUIDE/index.html b/docs/dashboard/I18N_USER_GUIDE/index.html
index 0d4cf26..ffb9241 100644
--- a/docs/dashboard/I18N_USER_GUIDE/index.html
+++ b/docs/dashboard/I18N_USER_GUIDE/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">i18n User Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/dashboard/I18N_USER_GUIDE"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/dashboard/IGNORE_DOC/index.html b/docs/dashboard/IGNORE_DOC/index.html
index d1d50b4..d2f2634 100644
--- a/docs/dashboard/IGNORE_DOC/index.html
+++ b/docs/dashboard/IGNORE_DOC/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">IGNORE_DOC | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/dashboard/IGNORE_DOC"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:doc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/dashboard/IMPORT_OPENAPI_USER_GUIDE/index.html b/docs/dashboard/IMPORT_OPENAPI_USER_GUIDE/index.html
index 8599361..b78f900 100644
--- a/docs/dashboard/IMPORT_OPENAPI_USER_GUIDE/index.html
+++ b/docs/dashboard/IMPORT_OPENAPI_USER_GUIDE/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Import OpenAPI Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/dashboard/IMPORT_OPENAPI_USER_GUIDE"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet=" [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">      </span><span class="token key atrule">requestBody</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">        </span><span class="token key atrule">content</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></ [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/dashboard/USER_GUIDE/index.html b/docs/dashboard/USER_GUIDE/index.html
index 459d042..edc0658 100644
--- a/docs/dashboard/USER_GUIDE/index.html
+++ b/docs/dashboard/USER_GUIDE/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">User Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/dashboard/USER_GUIDE"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:doc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/dashboard/api/api/index.html b/docs/dashboard/api/api/index.html
index e6c42bf..68ba526 100644
--- a/docs/dashboard/api/api/index.html
+++ b/docs/dashboard/api/api/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">API doc of Manager API. | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/dashboard/api/api"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/dashboard/back-end-tests/index.html b/docs/dashboard/back-end-tests/index.html
index 11272aa..3d6e3dc 100644
--- a/docs/dashboard/back-end-tests/index.html
+++ b/docs/dashboard/back-end-tests/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Backend Tests | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/dashboard/back-end-tests"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -28,7 +28,7 @@ For more details, run</p><div class="codeBlockContainer_K1bP"><div class="codeBl
 high expressiveness which makes reading and writing tests a pleasure.</p><ul><li><p>Enter the E2ENEW folder and execute the command to run all the E2ENEW test suites recursively.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly sh"><div tabindex="0" class="prism-code language-sh codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain"> cd  [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">         table</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token function" style="color:rgb(130, 170, 255)">DescribeTable</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;&lt;logical group 2&gt;&quot;</span><span class="token punctuation" style="color:rgb(199, 14 [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(199, 146, 234)">}</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div></li><li><p>FYI, internally ginkgo reduces each table entries to <code>It</code> block and run all the <code>It</code> bloc [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/dashboard/deploy-with-docker/index.html b/docs/dashboard/deploy-with-docker/index.html
index a520b29..b66cccb 100644
--- a/docs/dashboard/deploy-with-docker/index.html
+++ b/docs/dashboard/deploy-with-docker/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Deploy with Docker | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/dashboard/deploy-with-docker"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" nam [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"># For users in mainland China, the `ENABLE_PROXY` parameter can be provided to speed up module downloads.</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ docker build -t apisix-dashboard:$tag . --build-arg ENABLE_PROXY=true</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"># If you want to use the latest codes to build, you can specify the `APISIX_DASHBOARD_VERSION` parameter to `master`.</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"># This parameter can also be specified as branch name of a specific version, such as `v2.1.1`.</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ docker build -t apisix-d [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/dashboard/deploy-with-rpm/index.html b/docs/dashboard/deploy-with-rpm/index.html
index d15ade5..2570c9f 100644
--- a/docs/dashboard/deploy-with-rpm/index.html
+++ b/docs/dashboard/deploy-with-rpm/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Deploy with RPM | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/dashboard/deploy-with-rpm"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/dashboard/deploy/index.html b/docs/dashboard/deploy/index.html
index f543280..405ab13 100644
--- a/docs/dashboard/deploy/index.html
+++ b/docs/dashboard/deploy/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Deploy with Source Codes | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/dashboard/deploy"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -26,7 +26,7 @@
 run:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly sh"><div tabindex="0" class="prism-code language-sh codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ ./manager-api stop</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h2><a aria-hidden="true"  [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ mv ./output/ /usr/local/apisix-dashboard/</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ manager-api -p /usr/local/apisix-dashboard/</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix-dashboard/edit/master/docs/en/latest/deploy.md" target="_blank" rel="noreferrer noopener"><svg fill="currentC [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/dashboard/develop/index.html b/docs/dashboard/develop/index.html
index 0fcd297..c55244f 100644
--- a/docs/dashboard/develop/index.html
+++ b/docs/dashboard/develop/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Development Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/dashboard/develop"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ yarn start</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><ol start="4"><li>If writing an front end E2E test, please refer to the <a href="/docs/dashboard/front-end-e2e">Front End E2E Writing Guide</a></li></ol></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apa [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/dashboard/front-end-e2e/index.html b/docs/dashboard/front-end-e2e/index.html
index b480e1e..5a093e6 100644
--- a/docs/dashboard/front-end-e2e/index.html
+++ b/docs/dashboard/front-end-e2e/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Frontend E2E | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/dashboard/front-end-e2e"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearc [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/docker/IGNORE_DOC/index.html b/docs/docker/IGNORE_DOC/index.html
index 221f2af..2f6b894 100644
--- a/docs/docker/IGNORE_DOC/index.html
+++ b/docs/docker/IGNORE_DOC/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">IGNORE_DOC | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/docker/IGNORE_DOC"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusa [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/docker/build/index.html b/docs/docker/build/index.html
index bcf225f..99eae80 100644
--- a/docs/docker/build/index.html
+++ b/docs/docker/build/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Build an image from the source codes | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/docker/build"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" n [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">APISIX_VERSION=2.2</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">docker build -t apisix:${APISIX_VERSION}-alpine --build-arg APISIX_VERSION=${APISIX_VERSION} -f alpine/Dockerfile alpine</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><ol start="2"><li>install master branch version, whi [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/docker/example/index.html b/docs/docker/example/index.html
index e5fa114..f83aa2e 100644
--- a/docs/docker/example/index.html
+++ b/docs/docker/example/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Example | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/docker/example"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus_t [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -30,7 +30,7 @@ free service to resolve itself along with all subdomains to localhost.</p><div c
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">curl http://web2.lvh.me:9080/hello -v # hello web2</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly"><div tabindex="0" class="prism-code language-undefined codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-co [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ sudo rm -rf etcd_data/member</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ rm -rf apisix_log/*.log</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix-docker/edit/master/docs/en/latest/example.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" w [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/docker/manual/index.html b/docs/docker/manual/index.html
index d361c68..8f35fa3 100644
--- a/docs/docker/manual/index.html
+++ b/docs/docker/manual/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Deploy Apache APISIX with Docker | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/docker/manual"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/general/2fa/index.html b/docs/general/2fa/index.html
index 940ea71..7ddcf50 100644
--- a/docs/general/2fa/index.html
+++ b/docs/general/2fa/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">2FA | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/general/2fa"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" con [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/general/committer-guide/index.html b/docs/general/committer-guide/index.html
index 126a559..4e114f9 100644
--- a/docs/general/committer-guide/index.html
+++ b/docs/general/committer-guide/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Committer Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/general/committer-guide"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/general/contributor-guide/index.html b/docs/general/contributor-guide/index.html
index 99e5cfd..02d9056 100644
--- a/docs/general/contributor-guide/index.html
+++ b/docs/general/contributor-guide/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Contributor Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/general/contributor-guide"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="d [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/general/integrate-with-project-docs/index.html b/docs/general/integrate-with-project-docs/index.html
index 6df9665..c9d721c 100644
--- a/docs/general/integrate-with-project-docs/index.html
+++ b/docs/general/integrate-with-project-docs/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Integrate with Project documentations | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/general/integrate-with-project-docs"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta da [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/general/release-guide/index.html b/docs/general/release-guide/index.html
index 62b7cdc..8197dd1 100644
--- a/docs/general/release-guide/index.html
+++ b/docs/general/release-guide/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/general/release-guide"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -66,8 +66,8 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">The vote will be open for at least 72 hours or until necessary number of</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">votes are reached.</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Please vote accordingly:</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">[ ] +1 approve</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">[ ] +0 no opinion</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">[ ] -1 disapprove with the reason</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
-</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="send-vote-result-thread-to-the-dev-mailing-list"></a>Send VOTE RESULT thread to the dev mailing list<a class="hash-link" href="#send-vote-result-thread-to-the-dev-mailing-list" title="Direct link to heading">#</a></h3><p>Click <a href="https://lists.apache.org/thread.html/r9153da737a4590dbbba7272acc0 [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="send-vote-result-thread-to-the-dev-mailing-list"></a>Send VOTE RESULT thread to the dev mailing list<a class="hash-link" href="#send-vote-result-thread-to-the-dev-mailing-list" title="Direct link to heading">#</a></h3><p>Click <a href="https://lists.apache.org/thread.html/r9153da737a4590dbbba7272acc0 [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/general/security/index.html b/docs/general/security/index.html
index 3031d8b..f4dc21e 100644
--- a/docs/general/security/index.html
+++ b/docs/general/security/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Security | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/general/security"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusauru [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/general/subscribe-guide/index.html b/docs/general/subscribe-guide/index.html
index e6524f9..8a30d82 100644
--- a/docs/general/subscribe-guide/index.html
+++ b/docs/general/subscribe-guide/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Subscribe Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/general/subscribe-guide"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/helm-chart/IGNORE_DOC/index.html b/docs/helm-chart/IGNORE_DOC/index.html
index 18a2b5f..ce32708 100644
--- a/docs/helm-chart/IGNORE_DOC/index.html
+++ b/docs/helm-chart/IGNORE_DOC/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">IGNORE_DOC | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/helm-chart/IGNORE_DOC"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:do [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/helm-chart/apisix-dashboard/index.html b/docs/helm-chart/apisix-dashboard/index.html
index d9dd512..5d235a8 100644
--- a/docs/helm-chart/apisix-dashboard/index.html
+++ b/docs/helm-chart/apisix-dashboard/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX Dashboard Helm Chart | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/helm-chart/apisix-dashboard"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-he [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/helm-chart/apisix-ingress-controller/index.html b/docs/helm-chart/apisix-ingress-controller/index.html
index 17af260..9cf2aa7 100644
--- a/docs/helm-chart/apisix-ingress-controller/index.html
+++ b/docs/helm-chart/apisix-ingress-controller/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX Ingress Controller Helm Chart | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/helm-chart/apisix-ingress-controller"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current">< [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/helm-chart/apisix/index.html b/docs/helm-chart/apisix/index.html
index f031cd9..017a882 100644
--- a/docs/helm-chart/apisix/index.html
+++ b/docs/helm-chart/apisix/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX Helm Chart | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/helm-chart/apisix"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="do [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/index.html b/docs/index.html
index bb8ca42..b6aff93 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Apache APISIX™"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" content="default">< [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/FAQ/index.html b/docs/ingress-controller/FAQ/index.html
index 3342cf6..aa4674b 100644
--- a/docs/ingress-controller/FAQ/index.html
+++ b/docs/ingress-controller/FAQ/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">FAQ | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/FAQ"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaur [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/IGNORE_DOC/index.html b/docs/ingress-controller/IGNORE_DOC/index.html
index d68c7f0..7ddcdc8 100644
--- a/docs/ingress-controller/IGNORE_DOC/index.html
+++ b/docs/ingress-controller/IGNORE_DOC/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">IGNORE_DOC | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/IGNORE_DOC"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docs [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/concepts/apisix_cluster_config/index.html b/docs/ingress-controller/concepts/apisix_cluster_config/index.html
new file mode 100644
index 0000000..c79befb
--- /dev/null
+++ b/docs/ingress-controller/concepts/apisix_cluster_config/index.html
@@ -0,0 +1,36 @@
+<!doctype html>
+<html lang="en" dir="ltr">
+<head>
+<meta charset="UTF-8">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+<meta name="generator" content="Docusaurus v2.0.0-alpha.75">
+<meta name="robots" content="noindex, nofollow">
+<link rel="alternate" type="application/rss+xml" href="/blog/rss.xml" title="Apache APISIX™ Blog RSS Feed">
+<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml" title="Apache APISIX™ Blog Atom Feed">
+<link rel="preconnect" href="https://www.google-analytics.com">
+<link rel="preconnect" href="https://www.googletagmanager.com">
+<script async src="https://www.googletagmanager.com/gtag/js?id=G-WQLBQL6GY3"></script>
+<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-WQLBQL6GY3",{})</script>
+<link rel="search" type="application/opensearchdescription+xml" title="Apache APISIX™" href="/opensearch.xml">
+<link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
+<link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixClusterConfig | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/concepts/apisix_cluster_config"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-r [...]
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
+</head>
+<body>
+<script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+resource but its existence can enrich an APISIX cluster, for instance, enabling cluster-wide monitoring, rate limiting and so on.</p><p>monitoring features like collecting <a href="https://prometheus.io/" target="_blank" rel="noopener noreferrer">Prometheus</a> metrics
+and <a href="https://skywalking.apache.org/" target="_blank" rel="noopener noreferrer">skywalking</a> spans</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="monitoring"></a>Monitoring<a class="hash-link" href="#monitoring" title="Direct link to heading">#</a></h2><p>By default, monitoring are not enabled for the APISIX cluster, this is not favorable
+if you&#x27;d like to learn the real running status of your cluster. In such a case, you
+could create a <code>ApisixClusterConfig</code> to enable these features explicitly.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apiVersion</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span [...]
+Please see <a href="http://apisix.apache.org/docs/apisix/plugins/prometheus" target="_blank" rel="noopener noreferrer">Prometheus in APISIX</a> and <a href="http://apisix.apache.org/docs/apisix/plugins/skywalking" target="_blank" rel="noopener noreferrer">Skywalking in APISIX</a> for the details.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="admin-config"></a>Admin Config<a class="hash-link" href="#admin-config" title="Direct link to heading">#</a></h2><p>The default APIS [...]
+of Deployment or Pod template. Now with the help of <code>ApisixClusterConfig</code>, you can change some administrative fields on it.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apiVersion</span><span class="token pun [...]
+resource is processed, resources like Route, Upstream and others will be pushed to the new address with the new admin key (for authentication).</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="multiple-clusters-management"></a>Multiple Clusters Management<a class="hash-link" href="#multiple-clusters-management" title="Direct link to heading">#</a></h2><p><code>ApisixClusterConfig</code> is also designed for supporting multiple clusters management, but currently this function [...]
+Only the <code>ApisixClusterConfig</code> with the same named configured in <code>--default-apisix-cluster-name</code> option will be handled by apisix-ingress-controller, other instances will be neglected.</p><p>The current delete event for <code>ApisixClusterConfig</code> doesn&#x27;t mean the apisix-ingress-controller will lose the view of the corresponding APISIX cluster but
+resetting all the features on it, so the running of APISIX cluster is not influenced by this event.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix-ingress-controller/edit/master/docs/en/latest/concepts/apisix_cluster_config.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_2_ui" ar [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
+</body>
+</html>
\ No newline at end of file
diff --git a/docs/ingress-controller/concepts/apisix_route/index.html b/docs/ingress-controller/concepts/apisix_route/index.html
index 8fd71ce..7a140f9 100644
--- a/docs/ingress-controller/concepts/apisix_route/index.html
+++ b/docs/ingress-controller/concepts/apisix_route/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixRoute | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/concepts/apisix_route"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -44,8 +44,8 @@ which means <code>2/3</code> requests (with <code>GET</code> method and <code>Us
 will be proxied to serivce <code>bar</code>.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="plugins"></a>Plugins<a class="hash-link" href="#plugins" title="Direct link to heading">#</a></h2><p>Apache APISIX provides more than 40 <a href="https://github.com/apache/apisix/tree/master/docs/en/latest/plugins" target="_blank" rel="noopener noreferrer">plugins</a>, which can be used
 in <code>ApisixRoute</code>. All configuration items are named same to the one in APISIX.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apiVersion</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:< [...]
 which host is <code>local.httpbin.org</code>.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="websocket-proxy"></a>Websocket Proxy<a class="hash-link" href="#websocket-proxy" title="Direct link to heading">#</a></h2><p><a href="https://en.wikipedia.org/wiki/WebSocket#:~:text=WebSocket%20is%20a%20computer%20communications,WebSocket%20is%20distinct%20from%20HTTP." target="_blank" rel="noopener noreferrer">Websocket</a> service can be proxied
-by creating a route with specifying the <code>websocket</code> field.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apiVersion</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="t [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+by creating a route with specifying the <code>websocket</code> field.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apiVersion</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="t [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/concepts/apisix_tls/index.html b/docs/ingress-controller/concepts/apisix_tls/index.html
index 769593b..460975f 100644
--- a/docs/ingress-controller/concepts/apisix_tls/index.html
+++ b/docs/ingress-controller/concepts/apisix_tls/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixTls | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/concepts/apisix_tls"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" na [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -27,7 +27,7 @@ PEM format respectively.</p><div class="codeBlockContainer_K1bP"><div class="cod
 correct certificate, what&#x27;s more, it also should be matched with the <a href="https://www.globalsign.com/en/blog/what-is-server-name-indication#:~:text=Server%20Name%20Indication%20(SNI)%20allows,in%20the%20CLIENT%20HELLO%20message" target="_blank" rel="noopener noreferrer">Server Name Indication</a>
 extension in TLS, or the TLS handshaking might fail.</p><p>The apisix-ingress-controller will watch Secret resources that referred by ApisixTls objects, once a
 Secret changed, apisix-ingress-controller will re translate all referred ApisixTls objects, converting them to APISIX SSL resources ultimately.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix-ingress-controller/edit/master/docs/en/latest/concepts/apisix_tls.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0  [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/concepts/apisix_upstream/index.html b/docs/ingress-controller/concepts/apisix_upstream/index.html
index 4fa3b52..8293d22 100644
--- a/docs/ingress-controller/concepts/apisix_upstream/index.html
+++ b/docs/ingress-controller/concepts/apisix_upstream/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixUpstream | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/concepts/apisix_upstream"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -36,7 +36,7 @@ just change them in the <code>timeout</code> field.</p><div class="codeBlockCont
 In that case, you can create configurations for individual port.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apiVersion</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token  [...]
 In the meanwhile, the ApisixUpstream <code>foo</code> sets <code>http</code> scheme for port <code>7000</code> and <code>grpc</code> scheme for <code>7001</code>
 (all ports are the service port). But both ports shares the load balancer configuration.</p><p><code>PortLevelSettings</code> is not mandatory if the service only exposes one port but is useful when multiple ports are defined.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix-ingress-controller/edit/master/docs/en/latest/concepts/apisix_upstream.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/contribute/index.html b/docs/ingress-controller/contribute/index.html
index 5254aa8..893e2ac 100644
--- a/docs/ingress-controller/contribute/index.html
+++ b/docs/ingress-controller/contribute/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Contributing to apisix-ingress-controller | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/contribute"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@ pleasant first experience for you, and that you will return to continue
 contributing.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="how-to-contribute"></a>How to contribute<a class="hash-link" href="#how-to-contribute" title="Direct link to heading">#</a></h2><p>Most of the contributions that we receive are code contributions, but you can
 also contribute to the documentation or simply report solid bugs
 for us to fix.</p><p> For new contributors, please take a look at issues with a tag called <a href="https://github.com/apache/apisix-ingress-controller/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22" target="_blank" rel="noopener noreferrer">Good first issue</a> or <a href="https://github.com/apache/apisix-ingress-controller/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22" target="_blank" rel="noopener noreferrer">Help wanted</a>.</p><h2><a aria-hidden="true" tabind [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/deployments/ack/index.html b/docs/ingress-controller/deployments/ack/index.html
index 4eea506..e359477 100644
--- a/docs/ingress-controller/deployments/ack/index.html
+++ b/docs/ingress-controller/deployments/ack/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on ACK | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/deployments/ack"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react- [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/deployments/aws/index.html b/docs/ingress-controller/deployments/aws/index.html
index d1e9167..546c94f 100644
--- a/docs/ingress-controller/deployments/aws/index.html
+++ b/docs/ingress-controller/deployments/aws/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on Amazon EKS | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/deployments/aws"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/deployments/azure/index.html b/docs/ingress-controller/deployments/azure/index.html
index b4dac38..d730177 100644
--- a/docs/ingress-controller/deployments/azure/index.html
+++ b/docs/ingress-controller/deployments/azure/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on Azure AKS | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/deployments/azure"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta dat [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/deployments/gke/index.html b/docs/ingress-controller/deployments/gke/index.html
index a3daa18..080bc8d 100644
--- a/docs/ingress-controller/deployments/gke/index.html
+++ b/docs/ingress-controller/deployments/gke/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on Google Cloud GKE | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/deployments/gke"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><met [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/deployments/k3s-rke/index.html b/docs/ingress-controller/deployments/k3s-rke/index.html
index 2863694..8e53954 100644
--- a/docs/ingress-controller/deployments/k3s-rke/index.html
+++ b/docs/ingress-controller/deployments/k3s-rke/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on K3S and Rancher RKE | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/deployments/k3s-rke"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="curren [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 It&#x27;s a good choice to use Ingress APISIX as the north-south API gateway in K3S.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="prerequisites"></a>Prerequisites<a class="hash-link" href="#prerequisites" title="Direct link to heading">#</a></h2><ul><li>Install <a href="https://rancher.com/docs/k3s/latest/en/installation/" target="_blank" rel="noopener noreferrer">K3S</a> or <a href="https://rancher.com/docs/rke/latest/en/installation/" target="_blank" rel="noopener nore [...]
 If you are using K3S and you want to expose a <code>LoadBalancer</code> service, try to use <a href="https://github.com/k3s-io/klipper-lb" target="_blank" rel="noopener noreferrer">Klipper</a>.</p><p>Another thing should be concerned that the <code>allow.ipList</code> field should be customized according to the Pod CIDR settings(see <a href="https://rancher.com/docs/k3s/latest/en/installation/install-options/server-config/#networking" target="_blank" rel="noopener noreferrer">K3S</a> or  [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/deployments/kubesphere/index.html b/docs/ingress-controller/deployments/kubesphere/index.html
index a35416e..6aee593 100644
--- a/docs/ingress-controller/deployments/kubesphere/index.html
+++ b/docs/ingress-controller/deployments/kubesphere/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on KubeSphere | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/deployments/kubesphere"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><me [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 If you want to expose a <code>LoadBalancer</code> service, try to use <a href="https://github.com/kubesphere/porter" target="_blank" rel="noopener noreferrer">Porter</a>.</p><p>Another thing that should be concerned that the <code>allow.ipList</code> field should be customized according to the Pod CIDR settings, so that the apisix-ingress-controller instances can access the APISIX instances (resources pushing).</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="install-apisix- [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/deployments/minikube/index.html b/docs/ingress-controller/deployments/minikube/index.html
index 1e37075..fdfd850 100644
--- a/docs/ingress-controller/deployments/minikube/index.html
+++ b/docs/ingress-controller/deployments/minikube/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on Minikube | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/deployments/minikube"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta d [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/deployments/tke/index.html b/docs/ingress-controller/deployments/tke/index.html
index e8611f8..2de4799 100644
--- a/docs/ingress-controller/deployments/tke/index.html
+++ b/docs/ingress-controller/deployments/tke/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on Tencent TKE | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/deployments/tke"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta dat [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/design/index.html b/docs/ingress-controller/design/index.html
index 560da4c..93bc598 100644
--- a/docs/ingress-controller/design/index.html
+++ b/docs/ingress-controller/design/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Ingress Controller | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/design"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name=" [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/development/index.html b/docs/ingress-controller/development/index.html
index 8d98198..e05a8d9 100644
--- a/docs/ingress-controller/development/index.html
+++ b/docs/ingress-controller/development/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Developing for Apache APISIX Ingress Controller | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/development"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><me [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/getting-started/index.html b/docs/ingress-controller/getting-started/index.html
index eb595a3..c7f2636 100644
--- a/docs/ingress-controller/getting-started/index.html
+++ b/docs/ingress-controller/getting-started/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Getting Started | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/getting-started"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true"  [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@ All these resources are watched and converted to corresponding resources in Apac
 and will be reflected to nodes in APISIX Upstream.</p><p><img src="https://raw.githubusercontent.com/apache/apisix-ingress-controller/master/docs/assets/images/scene.png" alt="scene"></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="features"></a>Features<a class="hash-link" href="#features" title="Direct link to heading">#</a></h2><ul><li>Declarative configuration</li><li>Full dynamic capabilities to delivery configurations.</li><li>Native Kubernetes Ingress (both v1 and v1 [...]
 But before you start, please read <a href="/docs/ingress-controller/contribute">How to Contribute</a> and <a href="/docs/ingress-controller/development">How to Develop</a>.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="compatibility-with-apache-apisix"></a>Compatibility with Apache APISIX<a class="hash-link" href="#compatibility-with-apache-apisix" title="Direct link to heading">#</a></h2><p>The following table describes the compatibility between apisix-ingress-controller and
 <a href="https://apisix.apache.org" target="_blank" rel="noopener noreferrer">Apache APISIX</a>.</p><table><thead><tr><th align="right">apisix-ingress-controller</th><th align="right">Apache APISIX</th></tr></thead><tbody><tr><td align="right"><code>master</code></td><td align="right"><code>&gt;= 2.4</code>, <code>2.5</code> is recommended.</td></tr><tr><td align="right"><code>0.5</code></td><td align="right"><code>&gt;= 2.4</code>, <code>2.5</code> is recommended.</td></tr><tr><td align [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/practices/index/index.html b/docs/ingress-controller/practices/index/index.html
index 9a3b056..2e10c85 100644
--- a/docs/ingress-controller/practices/index/index.html
+++ b/docs/ingress-controller/practices/index/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Ingress APISIX Use Examples | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/practices/index"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-he [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/practices/proxy-the-httpbin-service-with-ingress/index.html b/docs/ingress-controller/practices/proxy-the-httpbin-service-with-ingress/index.html
index 07a3f3b..3e5a3ae 100644
--- a/docs/ingress-controller/practices/proxy-the-httpbin-service-with-ingress/index.html
+++ b/docs/ingress-controller/practices/proxy-the-httpbin-service-with-ingress/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Proxy the httpbin service with Ingress | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/practices/proxy-the-httpbin-service-with-ingress"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:ve [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># Use ingress.networking.k8s.io/v1beta1 if your Kubernetes cluster</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># version is older than v1.19.0.</span><span class= [...]
 Now try to create it.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">kubectl apply -f httpbin-ingress.yaml</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</butto [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/practices/proxy-the-httpbin-service/index.html b/docs/ingress-controller/practices/proxy-the-httpbin-service/index.html
index 5cc0d19..5416a0f 100644
--- a/docs/ingress-controller/practices/proxy-the-httpbin-service/index.html
+++ b/docs/ingress-controller/practices/proxy-the-httpbin-service/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Proxy the httpbin service | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/practices/proxy-the-httpbin-service"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current">< [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 Now try to create it.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">kubectl apply -f httpbin-route.yaml</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button> [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/references/apisix_cluster_config/index.html b/docs/ingress-controller/references/apisix_cluster_config/index.html
new file mode 100644
index 0000000..24816da
--- /dev/null
+++ b/docs/ingress-controller/references/apisix_cluster_config/index.html
@@ -0,0 +1,27 @@
+<!doctype html>
+<html lang="en" dir="ltr">
+<head>
+<meta charset="UTF-8">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+<meta name="generator" content="Docusaurus v2.0.0-alpha.75">
+<meta name="robots" content="noindex, nofollow">
+<link rel="alternate" type="application/rss+xml" href="/blog/rss.xml" title="Apache APISIX™ Blog RSS Feed">
+<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml" title="Apache APISIX™ Blog Atom Feed">
+<link rel="preconnect" href="https://www.google-analytics.com">
+<link rel="preconnect" href="https://www.googletagmanager.com">
+<script async src="https://www.googletagmanager.com/gtag/js?id=G-WQLBQL6GY3"></script>
+<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-WQLBQL6GY3",{})</script>
+<link rel="search" type="application/opensearchdescription+xml" title="Apache APISIX™" href="/opensearch.xml">
+<link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
+<link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixRoute/v2alpha1 Reference | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/references/apisix_cluster_config"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current" [...]
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
+</head>
+<body>
+<script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
+</body>
+</html>
\ No newline at end of file
diff --git a/docs/ingress-controller/references/apisix_route_v1/index.html b/docs/ingress-controller/references/apisix_route_v1/index.html
index 687139b..4a2b6c6 100644
--- a/docs/ingress-controller/references/apisix_route_v1/index.html
+++ b/docs/ingress-controller/references/apisix_route_v1/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixRoute/v1 (Deprecated) Reference | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/references/apisix_route_v1"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/references/apisix_route_v2alpha1/index.html b/docs/ingress-controller/references/apisix_route_v2alpha1/index.html
index c0b7689..be9d894 100644
--- a/docs/ingress-controller/references/apisix_route_v2alpha1/index.html
+++ b/docs/ingress-controller/references/apisix_route_v2alpha1/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixRoute/v2alpha1 Reference | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/references/apisix_route_v2alpha1"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current" [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/references/apisix_tls/index.html b/docs/ingress-controller/references/apisix_tls/index.html
index 3247b05..780b92e 100644
--- a/docs/ingress-controller/references/apisix_tls/index.html
+++ b/docs/ingress-controller/references/apisix_tls/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixTls Reference | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/references/apisix_tls"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helm [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/ingress-controller/references/apisix_upstream/index.html b/docs/ingress-controller/references/apisix_upstream/index.html
index c323f1d..d80361a 100644
--- a/docs/ingress-controller/references/apisix_upstream/index.html
+++ b/docs/ingress-controller/references/apisix_upstream/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixUpstream Reference | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//docs/ingress-controller/references/apisix_upstream"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data- [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/downloads/ProjectCard/index.html b/downloads/ProjectCard/index.html
index e83d53d..171cdb8 100644
--- a/downloads/ProjectCard/index.html
+++ b/downloads/ProjectCard/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true"></title><link rel="stylesheet" href="/assets/css/styles.aef3a109.css">
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div class="ProjectCard__Card-sc-12v8c3p-0 fUOFUE"><div class="ProjectCard__LeftSide-sc-12v8c3p-1 ewHYSJ"><a href="https://github.com/undefined" target="_blank" class="ProjectCard__Title-sc-12v8c3p-2 eXqIcO"><span class="ProjectCard__ShapeBeforeTitle-sc-12v8c3p-4 kjTfns"><svg aria-hidden="true" data-prefix="fas" data-icon="hexagon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="hexagon_svg__svg-inline--fa hexagon_svg__fa-hexagon hexagon_svg__fa-w-18 hexagon_svg__fa-7x">< [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/downloads/index.html b/downloads/index.html
index 6c04e87..a5d6343 100644
--- a/downloads/index.html
+++ b/downloads/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Apache APISIX™"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//downloads/"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" content="defa [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"># or</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">pgp -ka KEYS</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><br>To verify the binaries/sources you can download the relevant asc files for it from main distribution directory and follow the below guide.<div class="codeBlockContainer_K [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"># or</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">pgpv apache-apisix-********.asc</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"># or</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">pgp apache-apisix-********.asc</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div></div></div></div></div><footer class="footer"><div class="container"><div class="row footer__links"><div class="col footer__col"><h4 class="footer__title"> [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/events/2020/12/23/release-apache-apisix-ingress-controller-0.1.0/index.html b/events/2020/12/23/release-apache-apisix-ingress-controller-0.1.0/index.html
index 20d14cf..fc1ab93 100644
--- a/events/2020/12/23/release-apache-apisix-ingress-controller-0.1.0/index.html
+++ b/events/2020/12/23/release-apache-apisix-ingress-controller-0.1.0/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX Ingress Controller 0.1.0 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX Ingress Controller 0.1.0 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="This release mainly improve basic features, bugfix and adds test cases."><meta  [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/events/2021/01/19/release-apache-apisix-ingress-controller-0.2.0/index.html b/events/2021/01/19/release-apache-apisix-ingress-controller-0.2.0/index.html
index 53ce4e1..a5ae17f 100644
--- a/events/2021/01/19/release-apache-apisix-ingress-controller-0.2.0/index.html
+++ b/events/2021/01/19/release-apache-apisix-ingress-controller-0.2.0/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX Ingress Controller 0.2.0 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX Ingress Controller 0.2.0 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="This release mainly improve basic features, bugfix and adds test cases."><meta  [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/events/2021/02/09/release-apache-apisix-2.3/index.html b/events/2021/02/09/release-apache-apisix-2.3/index.html
index 6540de8..a1e7a40 100644
--- a/events/2021/02/09/release-apache-apisix-2.3/index.html
+++ b/events/2021/02/09/release-apache-apisix-2.3/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX 2.3 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX 2.3 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="Change"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//events/2021/02/09/release-ap [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/events/2021/02/11/release-apache-apisix-ingress-controller-0.3.0/index.html b/events/2021/02/11/release-apache-apisix-ingress-controller-0.3.0/index.html
index 5c40006..3ef736c 100644
--- a/events/2021/02/11/release-apache-apisix-ingress-controller-0.3.0/index.html
+++ b/events/2021/02/11/release-apache-apisix-ingress-controller-0.3.0/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX Ingress Controller 0.3.0 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX Ingress Controller 0.3.0 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="This release mainly improves the program robustness and adds some features."><m [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/events/2021/02/12/release-apache-apisix-dashboard-2.4/index.html b/events/2021/02/12/release-apache-apisix-dashboard-2.4/index.html
index 86bf262..71d53cc 100644
--- a/events/2021/02/12/release-apache-apisix-dashboard-2.4/index.html
+++ b/events/2021/02/12/release-apache-apisix-dashboard-2.4/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX Dashboard 2.4 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX Dashboard 2.4 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="This release mainly improves basic features, bugfix and adds test cases."><meta data-react-helmet="tr [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/events/2021/03/05/release-apache-apisix-2.4/index.html b/events/2021/03/05/release-apache-apisix-2.4/index.html
index dceb1d3..fcc1d2f 100644
--- a/events/2021/03/05/release-apache-apisix-2.4/index.html
+++ b/events/2021/03/05/release-apache-apisix-2.4/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX 2.4 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX 2.4 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="Change"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//events/2021/03/05/release-ap [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/events/2021/03/12/release-apache-apisix-ingress-controller-0.4.0/index.html b/events/2021/03/12/release-apache-apisix-ingress-controller-0.4.0/index.html
index 0ef5b4f..c723bf2 100644
--- a/events/2021/03/12/release-apache-apisix-ingress-controller-0.4.0/index.html
+++ b/events/2021/03/12/release-apache-apisix-ingress-controller-0.4.0/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX Ingress Controller 0.4.0 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX Ingress Controller 0.4.0 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="This release mainly improves the program robustness and adds some features."><m [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/events/2021/04/05/release-apache-apisix-2.5/index.html b/events/2021/04/05/release-apache-apisix-2.5/index.html
index 84778ff..8695c0c 100644
--- a/events/2021/04/05/release-apache-apisix-2.5/index.html
+++ b/events/2021/04/05/release-apache-apisix-2.5/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX 2.5 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX 2.5 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="Change"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//events/2021/04/05/release-ap [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/events/2021/04/13/release-apisix-ingress-controller-0.5/index.html b/events/2021/04/13/release-apisix-ingress-controller-0.5/index.html
index 989c2f3..b732f71 100644
--- a/events/2021/04/13/release-apisix-ingress-controller-0.5/index.html
+++ b/events/2021/04/13/release-apisix-ingress-controller-0.5/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX Ingress Controller 0.5 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX Ingress Controller 0.5 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="A lot of important features are supported in this release, it makes apisix-ingress- [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 Also, several bugs are fixed so the robustness is also enhanced.</p><p>We recommend you to use <a href="https://github.com/apache/apisix/releases/tag/2.5" target="_blank" rel="noopener noreferrer">Apache APISIX 2.5</a> with this release. Note since CRDs are updated, when
 you upgrade your old release, <strong>manual steps are required to apply the new ApisixRoute</strong>. Please see the instruction <code>7</code> in <a href="https://github.com/apache/apisix-ingress-controller/blob/master/docs/en/latest/FAQ.md" target="_blank" rel="noopener noreferrer">FAQ</a> for more details.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="core"></a>Core<a class="hash-link" href="#core" title="Direct link to heading">#</a></h2><ul><li>Support traffic split [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/events/2021/04/22/release-apache-apisix-dashboard-2.6/index.html b/events/2021/04/22/release-apache-apisix-dashboard-2.6/index.html
index d337366..0bf54a0 100644
--- a/events/2021/04/22/release-apache-apisix-dashboard-2.6/index.html
+++ b/events/2021/04/22/release-apache-apisix-dashboard-2.6/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX Dashboard 2.6 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX Dashboard 2.6 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="This release mainly improves UI and UE, bugfix and adds test cases."><meta data-react-helmet="true" p [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/events/index.html b/events/index.html
index a91d264..a63444a 100644
--- a/events/index.html
+++ b/events/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Blog | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Blog | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="Blog"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//events"><meta data-react-helmet="true" name="docsearch:language" content [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/help/index.html b/help/index.html
index ad6eb4e..1fcefdd 100644
--- a/help/index.html
+++ b/help/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Apache APISIX™"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//help"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" content="default">< [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/index.html b/index.html
index 325d576..71661c2 100644
--- a/index.html
+++ b/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Apache APISIX™"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" content="default"><meta [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div id="docusaurus-base-url-issue-banner-container"></div><div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-l [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/search/index.html b/search/index.html
index 4b1876b..347b5b7 100644
--- a/search/index.html
+++ b/search/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Search the documentation | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Apache APISIX™"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//search"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:docusa [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/sitemap.xml b/sitemap.xml
index 7230566..d95f55f 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://apisix.apache.org/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://apisix.apache.org/blog</loc><changefreq>weekly [...]
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://apisix.apache.org/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://apisix.apache.org/blog</loc><changefreq>weekly [...]
\ No newline at end of file
diff --git a/team/index.html b/team/index.html
index a81120e..e0d3633 100644
--- a/team/index.html
+++ b/team/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Apache APISIX™"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//team"><meta data-react-helmet="true" name="docsearch:language" content="en"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" content="default">< [...]
-<link rel="preload" href="/assets/js/runtime~main.bc7ee1e1.js" as="script">
-<link rel="preload" href="/assets/js/main.2a1b2c66.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.82efd67e.js" as="script">
+<link rel="preload" href="/assets/js/main.20323177.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/assets/js/runtime~main.bc7ee1e1.js"></script>
-<script src="/assets/js/main.2a1b2c66.js"></script>
+<script src="/assets/js/runtime~main.82efd67e.js"></script>
+<script src="/assets/js/main.20323177.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/404.html b/zh/404.html
index 05e42e3..1c619a1 100644
--- a/zh/404.html
+++ b/zh/404.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Page Not Found | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Page Not Found | Apache APISIX™"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/404.html"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docs [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/assets/js/19945770.e77691b0.js b/zh/assets/js/19945770.2c6737e1.js
similarity index 97%
rename from zh/assets/js/19945770.e77691b0.js
rename to zh/assets/js/19945770.2c6737e1.js
index d2aaf66..bbfd1ff 100644
--- a/zh/assets/js/19945770.e77691b0.js
+++ b/zh/assets/js/19945770.2c6737e1.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[5067],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return p},kt:function(){return f}});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[5067],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return p},kt:function(){return f}});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
diff --git a/zh/assets/js/1c89ab3b.1221bf10.js b/zh/assets/js/1c89ab3b.1221bf10.js
deleted file mode 100644
index bd837ad..0000000
--- a/zh/assets/js/1c89ab3b.1221bf10.js
+++ /dev/null
@@ -1 +0,0 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[2215],{3905:function(e,t,a){"use strict";a.d(t,{Zo:function(){return c},kt:function(){return m}});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function s(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n [...]
\ No newline at end of file
diff --git a/zh/assets/js/1c89ab3b.6227add0.js b/zh/assets/js/1c89ab3b.6227add0.js
new file mode 100644
index 0000000..a2786c1
--- /dev/null
+++ b/zh/assets/js/1c89ab3b.6227add0.js
@@ -0,0 +1 @@
+(self.webpackChunk=self.webpackChunk||[]).push([[2215],{3905:function(e,t,a){"use strict";a.d(t,{Zo:function(){return c},kt:function(){return m}});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function s(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n [...]
\ No newline at end of file
diff --git a/zh/assets/js/21974872.2cb00284.js b/zh/assets/js/21974872.2cb00284.js
new file mode 100644
index 0000000..d52ea16
--- /dev/null
+++ b/zh/assets/js/21974872.2cb00284.js
@@ -0,0 +1 @@
+(self.webpackChunk=self.webpackChunk||[]).push([[1186],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return u},kt:function(){return d}});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
diff --git a/zh/assets/js/3393d167.6ee26a5b.js b/zh/assets/js/3393d167.5c7e2e7d.js
similarity index 96%
rename from zh/assets/js/3393d167.6ee26a5b.js
rename to zh/assets/js/3393d167.5c7e2e7d.js
index 1a7b6ea..ec45e06 100644
--- a/zh/assets/js/3393d167.6ee26a5b.js
+++ b/zh/assets/js/3393d167.5c7e2e7d.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[7314],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return s},kt:function(){return d}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[7314],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return s},kt:function(){return d}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
diff --git a/zh/assets/js/358566b4.7b836ba1.js b/zh/assets/js/358566b4.83111334.js
similarity index 96%
rename from zh/assets/js/358566b4.7b836ba1.js
rename to zh/assets/js/358566b4.83111334.js
index 329f0d1..c520586 100644
--- a/zh/assets/js/358566b4.7b836ba1.js
+++ b/zh/assets/js/358566b4.83111334.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[3553],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return d}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[3553],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return d}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
diff --git a/zh/assets/js/38095436.0e51d174.js b/zh/assets/js/38095436.0e51d174.js
new file mode 100644
index 0000000..1bdbe26
--- /dev/null
+++ b/zh/assets/js/38095436.0e51d174.js
@@ -0,0 +1 @@
+(self.webpackChunk=self.webpackChunk||[]).push([[5756],{3905:function(e,n,t){"use strict";t.d(n,{Zo:function(){return p},kt:function(){return d}});var i=t(7294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);n&&(i=i.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,i [...]
\ No newline at end of file
diff --git a/zh/assets/js/3dc9f306.a15c4cf5.js b/zh/assets/js/3dc9f306.1c6a9094.js
similarity index 98%
rename from zh/assets/js/3dc9f306.a15c4cf5.js
rename to zh/assets/js/3dc9f306.1c6a9094.js
index 355938e..5debf98 100644
--- a/zh/assets/js/3dc9f306.a15c4cf5.js
+++ b/zh/assets/js/3dc9f306.1c6a9094.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[8393],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return l},kt:function(){return f}});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[8393],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return l},kt:function(){return f}});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
diff --git a/zh/assets/js/40fb2fae.d06432ee.js b/zh/assets/js/40fb2fae.30eb7729.js
similarity index 96%
rename from zh/assets/js/40fb2fae.d06432ee.js
rename to zh/assets/js/40fb2fae.30eb7729.js
index b46ba6a..97b4d9e 100644
--- a/zh/assets/js/40fb2fae.d06432ee.js
+++ b/zh/assets/js/40fb2fae.30eb7729.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[2547],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return m}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[2547],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return m}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
diff --git a/zh/assets/js/50facf8e.8aa706a0.js b/zh/assets/js/50facf8e.d0319793.js
similarity index 96%
rename from zh/assets/js/50facf8e.8aa706a0.js
rename to zh/assets/js/50facf8e.d0319793.js
index 462eca7..05d1ee6 100644
--- a/zh/assets/js/50facf8e.8aa706a0.js
+++ b/zh/assets/js/50facf8e.d0319793.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[7974],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return u},kt:function(){return d}});var i=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[7974],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return u},kt:function(){return d}});var i=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i [...]
\ No newline at end of file
diff --git a/zh/assets/js/5b5df5a4.8c2cfd56.js b/zh/assets/js/5b5df5a4.e0d5fce7.js
similarity index 85%
rename from zh/assets/js/5b5df5a4.8c2cfd56.js
rename to zh/assets/js/5b5df5a4.e0d5fce7.js
index 3f2b947..1162376 100644
--- a/zh/assets/js/5b5df5a4.8c2cfd56.js
+++ b/zh/assets/js/5b5df5a4.e0d5fce7.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[3034],{3905:function(t,e,n){"use strict";n.d(e,{Zo:function(){return m},kt:function(){return c}});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[3034],{3905:function(t,e,n){"use strict";n.d(e,{Zo:function(){return m},kt:function(){return c}});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
diff --git a/zh/assets/js/601c6eaa.a91bd114.js b/zh/assets/js/601c6eaa.0e6a7c6a.js
similarity index 94%
rename from zh/assets/js/601c6eaa.a91bd114.js
rename to zh/assets/js/601c6eaa.0e6a7c6a.js
index 73d8ca2..6b0680e 100644
--- a/zh/assets/js/601c6eaa.a91bd114.js
+++ b/zh/assets/js/601c6eaa.0e6a7c6a.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[7117],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return s},kt:function(){return m}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[7117],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return s},kt:function(){return m}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
diff --git a/zh/assets/js/66fbb9c2.ad80d31f.js b/zh/assets/js/66fbb9c2.c535fc94.js
similarity index 96%
rename from zh/assets/js/66fbb9c2.ad80d31f.js
rename to zh/assets/js/66fbb9c2.c535fc94.js
index 7d9ba78..65c2a1f 100644
--- a/zh/assets/js/66fbb9c2.ad80d31f.js
+++ b/zh/assets/js/66fbb9c2.c535fc94.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[7668],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return y}});var n=r(7294);function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[7668],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return y}});var n=r(7294);function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
diff --git a/zh/assets/js/7af3052c.ebc466fd.js b/zh/assets/js/7af3052c.815ef8ef.js
similarity index 99%
rename from zh/assets/js/7af3052c.ebc466fd.js
rename to zh/assets/js/7af3052c.815ef8ef.js
index 0d7c143..8fb7ba2 100644
--- a/zh/assets/js/7af3052c.ebc466fd.js
+++ b/zh/assets/js/7af3052c.815ef8ef.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[5032],{3905:function(e,a,t){"use strict";t.d(a,{Zo:function(){return d},kt:function(){return u}});var n=t(7294);function i(e,a,t){return a in e?Object.defineProperty(e,a,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[a]=t,e}function r(e,a){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);a&&(n=n.filter((function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable}))),t.push.apply(t,n [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[5032],{3905:function(e,a,t){"use strict";t.d(a,{Zo:function(){return d},kt:function(){return u}});var n=t(7294);function i(e,a,t){return a in e?Object.defineProperty(e,a,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[a]=t,e}function r(e,a){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);a&&(n=n.filter((function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable}))),t.push.apply(t,n [...]
\ No newline at end of file
diff --git a/zh/assets/js/8e784bf3.bc5227a1.js b/zh/assets/js/8e784bf3.12f48f8b.js
similarity index 97%
rename from zh/assets/js/8e784bf3.bc5227a1.js
rename to zh/assets/js/8e784bf3.12f48f8b.js
index dec9584..363449c 100644
--- a/zh/assets/js/8e784bf3.bc5227a1.js
+++ b/zh/assets/js/8e784bf3.12f48f8b.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[8216],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return m},kt:function(){return d}});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[8216],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return m},kt:function(){return d}});var r=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
diff --git a/zh/assets/js/9da58367.2937ba54.js b/zh/assets/js/9da58367.2937ba54.js
new file mode 100644
index 0000000..36be419
--- /dev/null
+++ b/zh/assets/js/9da58367.2937ba54.js
@@ -0,0 +1 @@
+(self.webpackChunk=self.webpackChunk||[]).push([[5994],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return l},kt:function(){return h}});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a [...]
\ No newline at end of file
diff --git a/zh/assets/js/9da58367.b326e697.js b/zh/assets/js/9da58367.b326e697.js
deleted file mode 100644
index 6323d99..0000000
--- a/zh/assets/js/9da58367.b326e697.js
+++ /dev/null
@@ -1 +0,0 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[5994],{3905:function(e,n,t){"use strict";t.d(n,{Zo:function(){return l},kt:function(){return h}});var a=t(7294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function i(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a [...]
\ No newline at end of file
diff --git a/zh/assets/js/adbb350b.d272db7c.js b/zh/assets/js/adbb350b.837c3bbf.js
similarity index 98%
rename from zh/assets/js/adbb350b.d272db7c.js
rename to zh/assets/js/adbb350b.837c3bbf.js
index 225fa3c..b211aea 100644
--- a/zh/assets/js/adbb350b.d272db7c.js
+++ b/zh/assets/js/adbb350b.837c3bbf.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[5427],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return p},kt:function(){return h}});var i=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[5427],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return p},kt:function(){return h}});var i=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i [...]
\ No newline at end of file
diff --git a/zh/assets/js/d18db9b0.e8492aa1.js b/zh/assets/js/d18db9b0.313bacd7.js
similarity index 95%
rename from zh/assets/js/d18db9b0.e8492aa1.js
rename to zh/assets/js/d18db9b0.313bacd7.js
index 4af3337..11f32db 100644
--- a/zh/assets/js/d18db9b0.e8492aa1.js
+++ b/zh/assets/js/d18db9b0.313bacd7.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[7825],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return m}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[7825],{3905:function(e,t,r){"use strict";r.d(t,{Zo:function(){return l},kt:function(){return m}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n [...]
\ No newline at end of file
diff --git a/zh/assets/js/d2247e49.b1294619.js b/zh/assets/js/d2247e49.57f2719c.js
similarity index 55%
rename from zh/assets/js/d2247e49.b1294619.js
rename to zh/assets/js/d2247e49.57f2719c.js
index 720678b..dd5235e 100644
--- a/zh/assets/js/d2247e49.b1294619.js
+++ b/zh/assets/js/d2247e49.57f2719c.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[4397],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return d},kt:function(){return c}});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[4397],{3905:function(t,e,n){"use strict";n.d(e,{Zo:function(){return s},kt:function(){return c}});var a=n(7294);function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,a [...]
\ No newline at end of file
diff --git a/zh/assets/js/ece6e754.f56fdac4.js b/zh/assets/js/ece6e754.a10440e6.js
similarity index 99%
rename from zh/assets/js/ece6e754.f56fdac4.js
rename to zh/assets/js/ece6e754.a10440e6.js
index 2217652..31c2155 100644
--- a/zh/assets/js/ece6e754.f56fdac4.js
+++ b/zh/assets/js/ece6e754.a10440e6.js
@@ -1 +1 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[787],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return u},kt:function(){return c}});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a) [...]
\ No newline at end of file
+(self.webpackChunk=self.webpackChunk||[]).push([[787],{3905:function(e,t,n){"use strict";n.d(t,{Zo:function(){return u},kt:function(){return c}});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a) [...]
\ No newline at end of file
diff --git a/zh/assets/js/fc9a947c.86b1e77e.js b/zh/assets/js/fc9a947c.86b1e77e.js
new file mode 100644
index 0000000..c610c90
--- /dev/null
+++ b/zh/assets/js/fc9a947c.86b1e77e.js
@@ -0,0 +1 @@
+(self.webpackChunk=self.webpackChunk||[]).push([[2496],{3905:function(t,e,n){"use strict";n.d(e,{Zo:function(){return d},kt:function(){return s}});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
diff --git a/zh/assets/js/fc9a947c.d8b02cc2.js b/zh/assets/js/fc9a947c.d8b02cc2.js
deleted file mode 100644
index b3609bc..0000000
--- a/zh/assets/js/fc9a947c.d8b02cc2.js
+++ /dev/null
@@ -1 +0,0 @@
-(self.webpackChunk=self.webpackChunk||[]).push([[2496],{3905:function(t,e,n){"use strict";n.d(e,{Zo:function(){return d},kt:function(){return m}});var r=n(7294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r [...]
\ No newline at end of file
diff --git a/zh/assets/js/main.6d9ac8a0.js b/zh/assets/js/main.6d9ac8a0.js
deleted file mode 100644
index 63ba33e..0000000
--- a/zh/assets/js/main.6d9ac8a0.js
+++ /dev/null
@@ -1,2 +0,0 @@
-/*! For license information please see main.6d9ac8a0.js.LICENSE.txt */
-(self.webpackChunk=self.webpackChunk||[]).push([[179],{4644:function(e){"use strict";e.exports={}},2122:function(e,t,n){"use strict";function r(){return(r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}n.d(t,{Z:function(){return r}})},3552:function(e,t,n){"use strict";function r(e,t){return(r=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e} [...]
\ No newline at end of file
diff --git a/zh/assets/js/main.c4271929.js b/zh/assets/js/main.c4271929.js
new file mode 100644
index 0000000..4f170d0
--- /dev/null
+++ b/zh/assets/js/main.c4271929.js
@@ -0,0 +1,2 @@
+/*! For license information please see main.c4271929.js.LICENSE.txt */
+(self.webpackChunk=self.webpackChunk||[]).push([[179],{4644:function(e){"use strict";e.exports={}},2122:function(e,t,n){"use strict";function r(){return(r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}n.d(t,{Z:function(){return r}})},3552:function(e,t,n){"use strict";function r(e,t){return(r=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e} [...]
\ No newline at end of file
diff --git a/assets/js/main.2a1b2c66.js.LICENSE.txt b/zh/assets/js/main.c4271929.js.LICENSE.txt
similarity index 100%
rename from assets/js/main.2a1b2c66.js.LICENSE.txt
rename to zh/assets/js/main.c4271929.js.LICENSE.txt
diff --git a/zh/assets/js/runtime~main.0393718b.js b/zh/assets/js/runtime~main.0393718b.js
deleted file mode 100644
index d6d7a09..0000000
--- a/zh/assets/js/runtime~main.0393718b.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(){"use strict";var e,f,a,c,b={},d={};function t(e){var f=d[e];if(void 0!==f)return f.exports;var a=d[e]={id:e,loaded:!1,exports:{}};return b[e].call(a.exports,a,a.exports,t),a.loaded=!0,a.exports}t.m=b,t.c=d,e=[],t.O=function(f,a,c,b){if(!a){var d=1/0;for(o=0;o<e.length;o++){a=e[o][0],c=e[o][1],b=e[o][2];for(var n=!0,r=0;r<a.length;r++)(!1&b||d>=b)&&Object.keys(t.O).every((function(e){return t.O[e](a[r])}))?a.splice(r--,1):(n=!1,b<d&&(d=b));n&&(e.splice(o--,1),f=c())}return f}b [...]
\ No newline at end of file
diff --git a/zh/assets/js/runtime~main.b3b84ca9.js b/zh/assets/js/runtime~main.b3b84ca9.js
new file mode 100644
index 0000000..af95ffd
--- /dev/null
+++ b/zh/assets/js/runtime~main.b3b84ca9.js
@@ -0,0 +1 @@
+!function(){"use strict";var e,f,a,c,b={},d={};function t(e){var f=d[e];if(void 0!==f)return f.exports;var a=d[e]={id:e,loaded:!1,exports:{}};return b[e].call(a.exports,a,a.exports,t),a.loaded=!0,a.exports}t.m=b,t.c=d,e=[],t.O=function(f,a,c,b){if(!a){var d=1/0;for(o=0;o<e.length;o++){a=e[o][0],c=e[o][1],b=e[o][2];for(var n=!0,r=0;r<a.length;r++)(!1&b||d>=b)&&Object.keys(t.O).every((function(e){return t.O[e](a[r])}))?a.splice(r--,1):(n=!1,b<d&&(d=b));n&&(e.splice(o--,1),f=c())}return f}b [...]
\ No newline at end of file
diff --git a/zh/blog/2020/08/22/new-website/index.html b/zh/blog/2020/08/22/new-website/index.html
index e031ba6..cfa46e2 100644
--- a/zh/blog/2020/08/22/new-website/index.html
+++ b/zh/blog/2020/08/22/new-website/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">New website for Apache APISIX | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="New website for Apache APISIX | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="We are just refactored out website for Apache APISIX by using docusaurus."><meta data-react-helmet="true" propert [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/blog/2020/12/16/another-way-to-implement-envoy-filter/index.html b/zh/blog/2020/12/16/another-way-to-implement-envoy-filter/index.html
index b3a7e9c..e745f32 100644
--- a/zh/blog/2020/12/16/another-way-to-implement-envoy-filter/index.html
+++ b/zh/blog/2020/12/16/another-way-to-implement-envoy-filter/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Envoy and Apache APISIX: Another way to implement the Envoy filter | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Envoy and Apache APISIX: Another way to implement the Envoy filter | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="@nic-chen, Apache APISIX PMC from Shenz [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 A pluggable filter chain mechanism allows filters to be written to perform different tasks and inserted into the main server.</p><p><img src="https://static.apiseven.com/filters.png" alt="Envoy filter"></p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="expansion-method"></a>Expansion method<a class="hash-link" href="#expansion-method" title="Direct link to heading">#</a></h3><p>The existing filters may not meet the user&#x27;s custom requirements. In this case, Envoy needs to [...]
 In the example, we configured plugin <code>uri-blocker</code> for the route whose prefix is ​​<code>/foo</code>, as well as the block rule of the plugin and the response status when a block is required.</p><h4><a aria-hidden="true" tabindex="-1" class="anchor" id="second-step-parse-request"></a>Second step, parse request<a class="hash-link" href="#second-step-parse-request" title="Direct link to heading">#</a></h4><p>We encapsulated the client request data into <code>ctx</code> so that i [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/blog/2020/12/18/a-first-look-at-kubernetes-service-api/index.html b/zh/blog/2020/12/18/a-first-look-at-kubernetes-service-api/index.html
index 875e2cc..e06ca8e 100644
--- a/zh/blog/2020/12/18/a-first-look-at-kubernetes-service-api/index.html
+++ b/zh/blog/2020/12/18/a-first-look-at-kubernetes-service-api/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">初探 Kubernetes Service APIs | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="初探 Kubernetes Service APIs | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="@gxthrj, Apache APISIX PMC &amp; Apache apisix-ingress-controller Founder from Shenzhen Zhiliu Technology Co."><meta da [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/blog/2021/01/21/run-ingress-apisix-on-amazon-eks/index.html b/zh/blog/2021/01/21/run-ingress-apisix-on-amazon-eks/index.html
index 92b5842..e127798 100644
--- a/zh/blog/2021/01/21/run-ingress-apisix-on-amazon-eks/index.html
+++ b/zh/blog/2021/01/21/run-ingress-apisix-on-amazon-eks/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Run Ingress APISIX on Amazon EKS | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Run Ingress APISIX on Amazon EKS | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="@Chao Zhang, Apache APISIX Committer from Shenzhen Zhiliu Technology Co."><meta data-react-helmet="true" pr [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">  </span><span class="token string" style="color:rgb(195, 232, 141)">&quot;headers&quot;</span><span class="token builtin class-name" style="color:rgb(255, 203, 107)">:</span><span class="token plain"> </span><span c [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/blog/2021/02/08/stable-product-delivery-with-cypress/index.html b/zh/blog/2021/02/08/stable-product-delivery-with-cypress/index.html
index 15e4421..5af3dc6 100644
--- a/zh/blog/2021/02/08/stable-product-delivery-with-cypress/index.html
+++ b/zh/blog/2021/02/08/stable-product-delivery-with-cypress/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Stable Product Delivery with Cypress | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Stable Product Delivery with Cypress | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="@LiteSun, Apache APISIX Committer from Shenzhen Zhiliu Technology Co."><meta data-react-helmet="tru [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/blog/2021/02/26/install-apache-apisix-from-helm-charts/index.html b/zh/blog/2021/02/26/install-apache-apisix-from-helm-charts/index.html
index 9743806..11e9f4c 100644
--- a/zh/blog/2021/02/26/install-apache-apisix-from-helm-charts/index.html
+++ b/zh/blog/2021/02/26/install-apache-apisix-from-helm-charts/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Apache APISIX from Helm Charts | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Install Apache APISIX from Helm Charts | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="@tokers, Apache APISIX Committer from Shenzhen Zhiliu Technology Co."><meta data-react-helmet=" [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">NAME                    CHART VERSION   APP VERSION     DESCRIPTION</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">apisix/apisix           0.1.2           2.1.0           A Helm chart for Apache APISIX</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">apisix/apisix-dashboard 0.1.0           2.3.0           A Helm chart for Apache APIS [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">NAME: apisix-gw</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">LAST DEPLOYED: Fri Feb 19 11:34:14 2021</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">NAMESPACE: default</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">STATUS: deployed</span></div><div class="token-line" style="color:#bfc7d5"><span [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/blog/2021/03/02/get-front-end-test-coverage-with-cypress/index.html b/zh/blog/2021/03/02/get-front-end-test-coverage-with-cypress/index.html
index a1a60f8..fa32f3c 100644
--- a/zh/blog/2021/03/02/get-front-end-test-coverage-with-cypress/index.html
+++ b/zh/blog/2021/03/02/get-front-end-test-coverage-with-cypress/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Get Front-End Test Coverage with Cypress | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Get Front-End Test Coverage with Cypress | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="@LiteSun, Apache APISIX Committer from Shenzhen Zhiliu Technology Co."><meta data-react-hel [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/blog/2021/03/27/traffic-split-in-apache-apisix-ingress-controller/index.html b/zh/blog/2021/03/27/traffic-split-in-apache-apisix-ingress-controller/index.html
index e9f1981..9f7a592 100644
--- a/zh/blog/2021/03/27/traffic-split-in-apache-apisix-ingress-controller/index.html
+++ b/zh/blog/2021/03/27/traffic-split-in-apache-apisix-ingress-controller/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Traffic Split in Apache APISIX Ingress Controller | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Traffic Split in Apache APISIX Ingress Controller | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="@tokers, Apache APISIX Committer from Shenzhen Zhiliu Technology Co."><me [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/blog/index.html b/zh/blog/index.html
index fd8b5c3..b9b27c1 100644
--- a/zh/blog/index.html
+++ b/zh/blog/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Blog | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Blog | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="Blog"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/blog"><meta data-react-helmet="true" name="docsearch:language" conten [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/FAQ/index.html b/zh/docs/apisix/FAQ/index.html
index fe4d1f0..599ad91 100644
--- a/zh/docs/apisix/FAQ/index.html
+++ b/zh/docs/apisix/FAQ/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">常见问题 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/FAQ"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus_tag"  [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -30,7 +30,7 @@ luarocks 服务。 运行 <code>luarocks config rocks_servers</code> 命令(
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">&lt;html&gt;</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">&lt;head&gt;&lt;title&gt;301 Moved Permanently&lt;/title&gt;&lt;/head&gt;</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">&lt;body&gt;</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">&lt;center&gt;&lt;h1&gt;301 Moved Permanently&lt;/h1&gt [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># uri 匹配失败</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/12ab -i</span></div><div class="token-line" style="color:#bfc7 [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">HTTP/1.1 </span><span class="token number" style="color:rgb(247, 140, 108)">200</span><span class="token plain"> OK</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token punctuation" style="color:rgb(199 [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/IGNORE_DOC/index.html b/zh/docs/apisix/IGNORE_DOC/index.html
index 789315a..756c20f 100644
--- a/zh/docs/apisix/IGNORE_DOC/index.html
+++ b/zh/docs/apisix/IGNORE_DOC/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">IGNORE_DOC | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/IGNORE_DOC"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/admin-api/index.html b/zh/docs/apisix/admin-api/index.html
index 4e3b5d6..766513e 100644
--- a/zh/docs/apisix/admin-api/index.html
+++ b/zh/docs/apisix/admin-api/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Admin API | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/admin-api"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docus [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -86,7 +86,7 @@
 举个例子:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly json"><div tabindex="0" class="prism-code language-json codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    </span><spa [...]
 所以它是 <code>127.0.0.1</code> 的备份。</p><blockquote><p>应答参数</p></blockquote><p>目前是直接返回与 etcd 交互后的结果。</p><p><a href="#%E7%9B%AE%E5%BD%95">Back to TOC</a></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="ssl"></a>SSL<a class="hash-link" href="#ssl" title="Direct link to heading">#</a></h2><p><em>地址</em>:/apisix/admin/ssl/{id}</p><p><em>说明</em>:SSL.</p><blockquote><p>请求方法:</p></blockquote><table><thead><tr><th>名字</th><th>请求 uri</th><th>请求 body</th><th>说明</th></tr></thead><tbody><tr [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">&quot;http://127.0.0.1:9080/apisix/admin/plugins/key-auth&quot;</span><span class="token plain"> -H </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;X-API-KEY: edd1c9f034335f136f87ad84b625c8f1&#x27;</span><s [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/architecture-design/apisix/index.html b/zh/docs/apisix/architecture-design/apisix/index.html
index a38a8e4..ce12cb9 100644
--- a/zh/docs/apisix/architecture-design/apisix/index.html
+++ b/zh/docs/apisix/architecture-design/apisix/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">APISIX | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/architecture-design/apisix"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="d [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token key atrule">etcd</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">  </span><span class="token key atrule">host</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"> </span><span class="tok [...]
 <strong>永远不要</strong>手工修改 <code>conf/config-default.yaml</code> 文件。如果需要自定义任何配置,都应在 <code>config.yaml</code> 文件中完成。</p><p><em>注意</em> 不要手工修改 APISIX 自身的 <code>conf/nginx.conf</code> 文件,当服务每次启动时,<code>apisix</code>
 会根据 <code>config.yaml</code> 配置自动生成新的 <code>conf/nginx.conf</code> 并自动启动服务。</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/zh/latest/architecture-design/apisix.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_2_ui" aria-label="Edit page"><g><path d="m34.5 11.7l-3  [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/architecture-design/consumer/index.html b/zh/docs/apisix/architecture-design/consumer/index.html
index 87b8f8a..7ce2287 100644
--- a/zh/docs/apisix/architecture-design/consumer/index.html
+++ b/zh/docs/apisix/architecture-design/consumer/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Consumer | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/architecture-design/consumer"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" nam [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -31,7 +31,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/routes/1 -H </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;X-API-KEY: edd1c9f034335f136f87ad84b625c8f1&#x27;</span><span class="token plain"> -X PUT -d </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;</span></div [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># 反复测试,均返回 403,jack被禁止访问</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/hello -H </span><span class="token string" style [...]
 </span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/zh/latest/architecture-design/consumer.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_ [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/architecture-design/debug-mode/index.html b/zh/docs/apisix/architecture-design/debug-mode/index.html
index 6d03881..e6d10e9 100644
--- a/zh/docs/apisix/architecture-design/debug-mode/index.html
+++ b/zh/docs/apisix/architecture-design/debug-mode/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Debug Mode | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/architecture-design/debug-mode"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -26,7 +26,7 @@
 当可以正常读取到 <code>#END</code> 结尾时,才认为文件处于写完关闭状态。</p><p>根据文件最后修改时间判断文件内容是否有变化,如有变化则重新加载,如没变化则跳过本次检查。
 所以高级调试模式的开启、关闭都是热更新方式完成。</p><table><thead><tr><th>名字</th><th>可选项</th><th>说明</th><th>默认值</th></tr></thead><tbody><tr><td>hook_conf.enable</td><td>必选项</td><td>是否开启 hook 追踪调试。开启后将打印指定模块方法的请求参数或返回值</td><td>false</td></tr><tr><td>hook_conf.name</td><td>必选项</td><td>开启 hook 追踪调试的模块列表名称</td><td></td></tr><tr><td>hook_conf.log_level</td><td>必选项</td><td>打印请求参数和返回值的日志级别</td><td>warn</td></tr><tr><td>hook_conf.is_print_input_args</td><td>必选项</td><td>是否打印输入参数</td><td>true</td></tr><tr><td>hook_conf.i [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token key atrule">hook_phase</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"> </span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># 模块函数列表,名字:hook_phase</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">  </span><span class="toke [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/architecture-design/global-rule/index.html b/zh/docs/apisix/architecture-design/global-rule/index.html
index aff64cd..48945ea 100644
--- a/zh/docs/apisix/architecture-design/global-rule/index.html
+++ b/zh/docs/apisix/architecture-design/global-rule/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Global rule | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/architecture-design/global-rule"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="tru [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 这时候我们可以使用 <code>GlobalRule</code> 来注册一个全局的 <a href="/zh/docs/apisix/architecture-design/plugin">Plugin</a>:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token pla [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/architecture-design/plugin-config/index.html b/zh/docs/apisix/architecture-design/plugin-config/index.html
index 44431a3..8b8c12c 100644
--- a/zh/docs/apisix/architecture-design/plugin-config/index.html
+++ b/zh/docs/apisix/architecture-design/plugin-config/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Plugin Config | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/architecture-design/plugin-config"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet= [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># 绑定到路由上</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/routes/1 -H </span><span class="token string" style [...]
 相同的插件会覆盖掉 <code>plugins</code> 原有的插件。</p><p>举个例子:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly"><div tabindex="0" class="prism-code language-undefined codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">{</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    &quot;desc&quot;: &quot;吾乃插件配置1&quot;,< [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/architecture-design/plugin/index.html b/zh/docs/apisix/architecture-design/plugin/index.html
index aae7e4a..4e6a4c8 100644
--- a/zh/docs/apisix/architecture-design/plugin/index.html
+++ b/zh/docs/apisix/architecture-design/plugin/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Plugin | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/architecture-design/plugin"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="d [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -28,7 +28,7 @@
 插件运行先后顺序是根据插件自身的优先级来决定的,例如:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly lua"><div tabindex="0" class="prism-code language-lua codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">local _M = {</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    version = 0.1,</span></div><div class="token-line" s [...]
 名字作为哈希的 key 来保存不同插件的配置项。</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly json"><div tabindex="0" class="prism-code language-json codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token pla [...]
 标识即可。</p><p>如果一个请求因为某个插件而被拒绝,会有类似这样的 warn 日志:<code>ip-restriction exits with http status code 403</code>。</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/zh/latest/architecture-design/plugin.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_2_ui" aria-label="Edit pa [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/architecture-design/route/index.html b/zh/docs/apisix/architecture-design/route/index.html
index 8ffbd43..e3a0a52 100644
--- a/zh/docs/apisix/architecture-design/route/index.html
+++ b/zh/docs/apisix/architecture-design/route/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Route | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/architecture-design/route"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@
 请看下图示例,是一些 Route 规则的实例,当某些属性值相同时,图中用相同颜色标识。</p><p><img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/routes-example.png" alt="路由示例"></p><p>我们直接在 Route 中完成所有参数的配置,优点是容易设置,每个 Route 都相对独立自由度比较高。但当我们的 Route 有比较多的重复配置(比如启用相同的插件配置或上游信息),一旦我们要更新这些相同属性时,就需要遍历所有 Route 并进行修改,给后期管理维护增加不少复杂度。</p><p>上面提及重复的缺点在 APISIX 中独立抽象了 <a href="/zh/docs/apisix/architecture-design/service">Service</a> 和 <a href="/zh/docs/apisix/architecture-design/upstream">Upstream</a> 两个概念来解决。</ [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">HTTP/1.1 </span><span class="token number" style="color:rgb(247, 140, 108)">201</span><span class="token plain"> Created</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Date: Sat, </span><span class="token number" style="color:rgb(247, 140, 108)">31</span><span class="token plain"> Aug </span><span class="token number" style="color:rgb(247, 140, 108)">2019</span><span  [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;node&quot;</span><span class="token plain">:</span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;value&quot;</span><span class="token plain">:</span><span class="token  [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/architecture-design/router/index.html b/zh/docs/apisix/architecture-design/router/index.html
index 0e3ae3a..78c49a0 100644
--- a/zh/docs/apisix/architecture-design/router/index.html
+++ b/zh/docs/apisix/architecture-design/router/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Router | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/architecture-design/router"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="d [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/architecture-design/script/index.html b/zh/docs/apisix/architecture-design/script/index.html
index 94d0f63..6832e11 100644
--- a/zh/docs/apisix/architecture-design/script/index.html
+++ b/zh/docs/apisix/architecture-design/script/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Script | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/architecture-design/script"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="d [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/architecture-design/service/index.html b/zh/docs/apisix/architecture-design/service/index.html
index c33c5bc..5c078f1 100644
--- a/zh/docs/apisix/architecture-design/service/index.html
+++ b/zh/docs/apisix/architecture-design/service/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Service | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/architecture-design/service"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name= [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 与 <code>Service</code> 之间,通常是 N:1 的关系,参看下图。</p><p><img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/service-example.png" alt="服务示例"></p><p>不同 Route 规则同时绑定到一个 Service 上,这些 Route 将具有相同的上游和插件配置,减少冗余配置。</p><p>比如下面的例子,创建了一个启用限流插件的 Service,然后把 id 为 <code>100</code>、<code>101</code> 的 Route 都绑定在这个 Service 上。</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scr [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># create new Route and reference the service by id `200`</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/route [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/routes/101 -H </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;X-API-KEY: edd1c9f034335f136f87ad84b625c8f1&#x27;</span><span class="token plain"> -X PUT -d </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;</span></div [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/architecture-design/upstream/index.html b/zh/docs/apisix/architecture-design/upstream/index.html
index cb7dfe9..0cc362b 100644
--- a/zh/docs/apisix/architecture-design/upstream/index.html
+++ b/zh/docs/apisix/architecture-design/upstream/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Upstream | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/architecture-design/upstream"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" nam [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 优先级更高。这里的优先级行为与 <code>Plugin</code> 非常相似</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="配置参数"></a>配置参数<a class="hash-link" href="#配置参数" title="Direct link to heading">#</a></h3><p>APISIX 的 Upstream 除了基本的复杂均衡算法选择外,还支持对上游做主被动健康检查、重试等逻辑,具体看这个<a href="/zh/docs/apisix/admin-api#upstream">链接</a>。</p><p>创建上游对象用例:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly json"><div tabindex="0" class="prism-code language-json codeBlock_23N8 thin-scrollbar"><div cla [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/aws/index.html b/zh/docs/apisix/aws/index.html
index 525ca42..e1d7cf5 100644
--- a/zh/docs/apisix/aws/index.html
+++ b/zh/docs/apisix/aws/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Running APISIX in AWS with AWS CDK | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/aws"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" na [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -43,7 +43,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Non-authoritative answer:</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Name:   apiSi-PhpSe-FOL2MM4TW7G8-09029e095ab36fcc.elb.us-west-2.amazonaws.com</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Address: </span><span class="token number" style="color:rgb(247, 140, 108)">44.224</span><span class="token plain">.124.213</span></div [...]
 <img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/aws-define-service.png">
 <img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/aws-define-route.png"></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="validation"></a>Validation<a class="hash-link" href="#validation" title="Direct link to heading">#</a></h2><p>OK. Let&#x27;s test the <code>/index.php</code> on <code>{apiSix.ApiSixServiceServiceURL}/index.php</code></p><p><img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/aws-caddy-php-we [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/batch-processor/index.html b/zh/docs/apisix/batch-processor/index.html
index b94b455..3fc07f6 100644
--- a/zh/docs/apisix/batch-processor/index.html
+++ b/zh/docs/apisix/batch-processor/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">批处理机 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/batch-processor"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docu [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -28,7 +28,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">if batch_processor then</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    batch_processor:push({hello=&#x27;world&#x27;})</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">end</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>注意:请确保批处理的最大大小(条目数)在函数执行的范围内。
 刷新批处理的计时器基于“ inactive_timeout”配置运行。因此,为了获得最佳使用效果,
 保持“ inactive_timeout”小于“ buffer_duration”。</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/zh/latest/batch-processor.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_2_ui" aria-label="Edit page"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3. [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/benchmark/index.html b/zh/docs/apisix/benchmark/index.html
index 52f8da6..7af6c7f 100644
--- a/zh/docs/apisix/benchmark/index.html
+++ b/zh/docs/apisix/benchmark/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">压力测试 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/benchmark"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 <img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/flamegraph-2.jpg" alt="火焰图采样结果"></p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/zh/latest/benchmark.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_2_ui" aria-label="Edit page"><g [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/control-api/index.html b/zh/docs/apisix/control-api/index.html
index 20314ac..d313e9d 100644
--- a/zh/docs/apisix/control-api/index.html
+++ b/zh/docs/apisix/control-api/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Control API | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/control-api"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:d [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -26,7 +26,7 @@ If a plugin adds such a control API, please refer to each plugin&#x27;s document
 of fields like <code>consumer_schema</code> or <code>type</code>, it is depended on by the plugin&#x27;s
 definition.</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="get-v1healthcheck"></a>GET /v1/healthcheck<a class="hash-link" href="#get-v1healthcheck" title="Direct link to heading">#</a></h3><p>Introduced since <code>v2.3</code>.</p><p>Return current <a href="/zh/docs/apisix/health-check">health check</a> status in the format below:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly json"><div tabindex="0" class="prism-code language-json codeBlock_23N8 [...]
 object with id 1 creates a health checker, the <code>src_type</code> is <code>upstreams</code> and the <code>src_id</code> is <code>1</code>.</li><li>name: the name of the health checker.</li><li>nodes: the target nodes of the health checker.</li><li>healthy_nodes: the healthy node known by the health checker.</li></ul><p>User can also use <code>/v1/healthcheck/$src_type/$src_id</code> can get the status of a health checker.</p><p>For example, <code>GET /v1/healthcheck/upstreams/1</code> [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/customize-nginx-configuration/index.html b/zh/docs/apisix/customize-nginx-configuration/index.html
index 3580107..908aa43 100644
--- a/zh/docs/apisix/customize-nginx-configuration/index.html
+++ b/zh/docs/apisix/customize-nginx-configuration/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">自定义 Nginx 配置 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/customize-nginx-configuration"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">            location /ysec_status </span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">                req_status_show;</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">                allow 127.0.0.1;</span></div><div class="token-li [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">        chunked_transfer_encoding on;</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    </span><span class="token key atrule">http_server_configuration_snippet</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">|</span><span class="token scalar string" style="color:rgb(195, 232, 141)"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token  [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/debug-function/index.html b/zh/docs/apisix/debug-function/index.html
index c4952c6..5af629c 100644
--- a/zh/docs/apisix/debug-function/index.html
+++ b/zh/docs/apisix/debug-function/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">调试功能 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/debug-function"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docus [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>具有 <code>X-APISIX-Upstream-Status: 502</code> 的响应头。</p><p>示例2: <code>502</code> 响应状态码来源于 <code>APISIX</code></p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div  [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/discovery/consul_kv/index.html b/zh/docs/apisix/discovery/consul_kv/index.html
index 4941d40..5b0a726 100644
--- a/zh/docs/apisix/discovery/consul_kv/index.html
+++ b/zh/docs/apisix/discovery/consul_kv/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">consul_kv | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/discovery/consul_kv"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 <img src="https://user-images.githubusercontent.com/548385/107141841-6ced3e00-6966-11eb-8aa4-bc790a4ad113.png"></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="configuration-for-discovery-client"></a>Configuration for discovery client<a class="hash-link" href="#configuration-for-discovery-client" title="Direct link to heading">#</a></h2><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="configuration-for-consul-kv"></a>Configuration for Consul KV<a class="hash-link" [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">\</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    -X PUT </span><span class="token punctuation" style="color:rgb(199, 146, 234)">\</span><span class="token [...]
 To avoid confusion, use the full consul key url path as service name in practice.</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="upstream-setting"></a>Upstream setting<a class="hash-link" href="#upstream-setting" title="Direct link to heading">#</a></h3><p>Here is an example of routing a request with a URL of &quot;/*&quot; to a service which named &quot;<a href="http://127.0.0.1:8500/v1/kv/upstreams/webpages/%22" target="_blank" rel="noopener noreferrer">http://127.0.0.1: [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/discovery/dns/index.html b/zh/docs/apisix/discovery/dns/index.html
index 3c9bd3c..b550bf1 100644
--- a/zh/docs/apisix/discovery/dns/index.html
+++ b/zh/docs/apisix/discovery/dns/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">DNS | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/discovery/dns"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusau [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -30,7 +30,7 @@ noisy).  In the presence of records containing weights greater
 than 0, records with weight 0 should have a very small chance of
 being selected.</p></blockquote><p>We treat weight 0 record has a weight of 1 so the node &quot;have a very small chance of
 being selected&quot;, which is also the common way to treat this type of record.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/zh/latest/discovery/dns.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_2_ui" aria-label="Edit page"><g><path d="m34.5 11.7l-3 3.1-6.3- [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/discovery/eureka/index.html b/zh/docs/apisix/discovery/eureka/index.html
index 247cb38..33df913 100644
--- a/zh/docs/apisix/discovery/eureka/index.html
+++ b/zh/docs/apisix/discovery/eureka/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">eureka | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/discovery/eureka"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:d [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 reading from <a href="/zh/docs/apisix/discovery.md#supported-discovery-registries">Supported discovery registries</a>.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/zh/latest/discovery/eureka.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_2_ui" aria-label="Edit [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/discovery/index.html b/zh/docs/apisix/discovery/index.html
index 28a3a25..d5f278c 100644
--- a/zh/docs/apisix/discovery/index.html
+++ b/zh/docs/apisix/discovery/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">集成服务发现注册中心 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/discovery"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docu [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -30,7 +30,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">HTTP/1.1 </span><span class="token number" style="color:rgb(247, 140, 108)">201</span><span class="token plain"> Created</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Date: Sat, </span><span class="token number" style="color:rgb(247, 140, 108)">31</span><span class="token plain"> Aug </span><span class="token number" style="color:rgb(247, 140, 108)">2019</span><span  [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;node&quot;</span><span class="token plain">:</span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;value&quot;</span><span class="token plain">:</span><span class="token  [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/routes/2 -H </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;X-API-KEY: edd1c9f034335f136f87ad84b625c8f1&#x27;</span><span class="token plain"> -X PUT -i -d </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;</span></ [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/discovery/nacos/index.html b/zh/docs/apisix/discovery/nacos/index.html
index 3f4bbd0..2ac7767 100644
--- a/zh/docs/apisix/discovery/nacos/index.html
+++ b/zh/docs/apisix/discovery/nacos/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">nacos | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/discovery/nacos"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/examples/plugins-hmac-auth-generate-signature/index.html b/zh/docs/apisix/examples/plugins-hmac-auth-generate-signature/index.html
index 673cf16..a554ee1 100644
--- a/zh/docs/apisix/examples/plugins-hmac-auth-generate-signature/index.html
+++ b/zh/docs/apisix/examples/plugins-hmac-auth-generate-signature/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">HMAC Generate Signature Examples | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/examples/plugins-hmac-auth-generate-signature"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="cu [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -55,7 +55,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">--to base64</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">ngx.say(ngx.encode_base64(digest))</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="shell"></a>Shell<a class="hash-link" href="#shell" title="Direct link to heading">#</a [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># to lowercase hexits</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token builtin class-name" style="color:rgb(255, 203, 107)">echo</span><span class="token plain"> -e </span><span class="token variable" style="color:rgb(191, 199, [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># to base64</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token builtin class-name" style="color:rgb(255, 203, 107)">echo</span><span class="token plain"> -e </span><span class="token variable" style="color:rgb(191, 199, 213)">$ME [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/getting-started/index.html b/zh/docs/apisix/getting-started/index.html
index ddd82ad..a7a72de 100644
--- a/zh/docs/apisix/getting-started/index.html
+++ b/zh/docs/apisix/getting-started/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">快速入门指南 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/getting-started"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:do [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 我们刚刚创建了一个上游(引用我们的后端服务),让我们为它绑定一个路由!</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly bash"><div tabindex="0" class="prism-code language-bash codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> </span><span class="token string"  [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/grpc-proxy/index.html b/zh/docs/apisix/grpc-proxy/index.html
index 99fb846..a323a5a 100644
--- a/zh/docs/apisix/grpc-proxy/index.html
+++ b/zh/docs/apisix/grpc-proxy/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">gRPC 代理 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/grpc-proxy"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusa [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/health-check/index.html b/zh/docs/apisix/health-check/index.html
index d477f8c..e37a64c 100644
--- a/zh/docs/apisix/health-check/index.html
+++ b/zh/docs/apisix/health-check/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">健康检查 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/health-check"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusau [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 如果一个 upstream 被配置但没有被请求,那么就不会有健康检查。</li><li>如果没有健康的节点,那么请求会继续发送给上游。</li><li>如果 upstream 中只有一个节点,就不会有健康检查。
 因为该唯一节点无论是否健康,请求都会发送给上游,</li></ul><p>下面是一个检查检查的例子:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/routes/1 -H </spa [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/how-to-build/index.html b/zh/docs/apisix/how-to-build/index.html
index 22acd1b..1d49719 100644
--- a/zh/docs/apisix/how-to-build/index.html
+++ b/zh/docs/apisix/how-to-build/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">如何构建 Apache APISIX | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/how-to-build"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -29,7 +29,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/routes?api_key</span><span class="token operator" style="color:rgb(137, 221, 255)">=</span><span class="token plain">abcdefghabcdefgh-invalid -i</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">HTTP/1.1 </span><span class="token [...]
 如果你需要这些功能,你可以用<a href="https://raw.githubusercontent.com/api7/apisix-build-tools/master/build-apisix-openresty.sh" target="_blank" rel="noopener noreferrer">这个脚本</a>
 构建 OpenResty。</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/zh/latest/how-to-build.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_2_ui" aria-label="Edit page"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z  [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/https/index.html b/zh/docs/apisix/https/index.html
index a88adf5..afa7a6e 100644
--- a/zh/docs/apisix/https/index.html
+++ b/zh/docs/apisix/https/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">HTTPS | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/https"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus_ta [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -31,7 +31,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> --resolve </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;www.test.com:9443:127.0.0.1&#x27;</span><span class="token plain"> https://www.test.com:9443/hello  -vvv</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">* Added test.com:9443:127.0. [...]
 你可以把它们都放入 <code>snis</code> 数组中,就像这样:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly json"><div tabindex="0" class="prism-code language-json codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span cla [...]
 的密钥交换算法,那么你可以将额外的证书和私钥(第一张证书和其私钥依然使用 <code>cert</code> 和 <code>key</code>)配置在 <code>certs</code> 和 <code>keys</code> 中。</p><ul><li><code>certs</code>:PEM 格式的 SSL 证书列表</li><li><code>keys</code>:PEM 格式的 SSL 证书私钥列表</li></ul><p><code>APISIX</code> 会将相同下标的证书和私钥配对使用,因此 <code>certs</code> 和 <code>keys</code> 列表的长度必须一致。</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/zh/latest/https.md" target="_blank" r [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/install-dependencies/index.html b/zh/docs/apisix/install-dependencies/index.html
index b401142..5643e84 100644
--- a/zh/docs/apisix/install-dependencies/index.html
+++ b/zh/docs/apisix/install-dependencies/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">安装依赖 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/install-dependencies"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -40,7 +40,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># 开启 etcd server</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">nohup</span><span class="token plain"> etcd </span><span class="token operator" style="color:rgb(137, 221, 255)">&amp; [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># 开启 etcd server</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">brew services start etcd</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># 为 etcd 服务启用 TLS</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">etcd --cert-file</span><span class="token operator" style="color:rgb(137, 221, 255)">=</span><span class="token plain">/path/to/cert --key-file</span><span class="token operator" style=" [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/mtls/index.html b/zh/docs/apisix/mtls/index.html
index 3338e58..64a280f 100644
--- a/zh/docs/apisix/mtls/index.html
+++ b/zh/docs/apisix/mtls/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Admin API TLS 双向认证 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/mtls"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:d [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">  </span><span class="token key atrule">admin_api_mtls</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    </span><span class="token key atrule">admin_ssl_ca_cert</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plai [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugin-develop/index.html b/zh/docs/apisix/plugin-develop/index.html
index f1fec80..edd2c2a 100644
--- a/zh/docs/apisix/plugin-develop/index.html
+++ b/zh/docs/apisix/plugin-develop/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">插件开发 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugin-develop"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docus [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -41,7 +41,7 @@
 你可能需要使用 <a href="/zh/docs/apisix/plugin-interceptors">interceptors</a> 来保护它。</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="注册控制接口"></a>注册控制接口<a class="hash-link" href="#注册控制接口" title="Direct link to heading">#</a></h3><p>如果你只想暴露 API 到 localhost 或内网,你可以通过 <a href="https://apisix.apache.org/docs/apisix/control-api" target="_blank" rel="noopener noreferrer">Control API</a> 来暴露它。</p><p>Take a look at example-plugin plugin:</p><div class="codeBlockContainer_K1bP"><div class="c [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">function _M.control_api()</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    return {</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">        {</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">            methods = {&quot;GET&quot;},</span></div><div class="token-line" style="color:#bfc7d5"><span c [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugin-interceptors/index.html b/zh/docs/apisix/plugin-interceptors/index.html
index 276dea3..7ab353e 100644
--- a/zh/docs/apisix/plugin-interceptors/index.html
+++ b/zh/docs/apisix/plugin-interceptors/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">插件拦截器 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugin-interceptors"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/api-breaker/index.html b/zh/docs/apisix/plugins/api-breaker/index.html
index ed9392f..e5c427e 100644
--- a/zh/docs/apisix/plugins/api-breaker/index.html
+++ b/zh/docs/apisix/plugins/api-breaker/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">api-breaker | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/api-breaker"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 应答 500 或 503 连续 3 次,触发熔断。应答 200 连续 1 次,恢复健康。</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 23 [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token plain">. </span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token plain">.</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h2><a aria-hidden="true" tabindex="-1" class="anchor" id= [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/authz-keycloak/index.html b/zh/docs/apisix/plugins/authz-keycloak/index.html
index d6e1008..8458ba2 100644
--- a/zh/docs/apisix/plugins/authz-keycloak/index.html
+++ b/zh/docs/apisix/plugins/authz-keycloak/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">authz-keycloak | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/authz-keycloak"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" nam [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/basic-auth/index.html b/zh/docs/apisix/plugins/basic-auth/index.html
index 24371ed..0f01489 100644
--- a/zh/docs/apisix/plugins/basic-auth/index.html
+++ b/zh/docs/apisix/plugins/basic-auth/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">basic-auth | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/basic-auth"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/batch-requests/index.html b/zh/docs/apisix/plugins/batch-requests/index.html
index ddcc9b7..55aac40 100644
--- a/zh/docs/apisix/plugins/batch-requests/index.html
+++ b/zh/docs/apisix/plugins/batch-requests/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">batch-requests | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/batch-requests"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" nam [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 来保护它。</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="如何启用"></a>如何启用<a class="hash-link" href="#如何启用" title="Direct link to heading">#</a></h2><p>本插件默认启用。</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="如何配置"></a>如何配置<a class="hash-link" href="#如何配置" title="Direct link to heading">#</a></h2><p>默认本插件限制请求体的大小不能大于 1 MiB。这个限制可以通过 <code>apisix/admin/plugin_metadata/batch-requests</code> 来修改。</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly  [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/consumer-restriction/index.html b/zh/docs/apisix/plugins/consumer-restriction/index.html
index dd5c7b8..21d11b0 100644
--- a/zh/docs/apisix/plugins/consumer-restriction/index.html
+++ b/zh/docs/apisix/plugins/consumer-restriction/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">consumer-restriction | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/consumer-restriction"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helme [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/consumers -H </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;X-API-KEY: edd1c9f034335f136f87ad84b625c8f1&#x27;</span><span class="token plain"> -X PUT -i -d </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;</span></d [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/routes/1 -H </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;X-API-KEY: edd1c9f034335f136f87ad84b625c8f1&#x27;</span><span class="token plain"> -X PUT -d </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;</span></div>< [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/services/2 -H </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;X-API-KEY: edd1c9f034335f136f87ad84b625c8f1&#x27;</span><span class="token plain"> -X PUT -d </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;</span></div [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/cors/index.html b/zh/docs/apisix/plugins/cors/index.html
index f0e7bd5..a624420 100644
--- a/zh/docs/apisix/plugins/cors/index.html
+++ b/zh/docs/apisix/plugins/cors/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">cors | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/cors"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusau [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 使用 <code>**</code> 时要充分理解它引入了一些安全隐患,比如 CSRF,所以确保这样的安全等级符合自己预期再使用。</p></blockquote><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="如何启用"></a>如何启用<a class="hash-link" href="#如何启用" title="Direct link to heading">#</a></h2><p>创建 <code>Route</code> 或 <code>Service</code> 对象,并配置 <code>cors</code> 插件。</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockL [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/dubbo-proxy/index.html b/zh/docs/apisix/plugins/dubbo-proxy/index.html
index 9aa1a31..d00c7cb 100644
--- a/zh/docs/apisix/plugins/dubbo-proxy/index.html
+++ b/zh/docs/apisix/plugins/dubbo-proxy/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">dubbo-proxy | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/dubbo-proxy"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/routes/1  -H </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;X-API-KEY: edd1c9f034335f136f87ad84b625c8f1&#x27;</span><span class="token plain"> -X PUT -d </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;</span></div> [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">blahblah # &quot;body&quot; will be the body</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="禁用插件"></a>禁用插件<a class="hash-link" href="#禁用插件" title="Direct link to heading">#</a></h2><p>当你想在某个路由或服务中禁用 <code>dubbo-proxy</code> 插件,非常简单,你可以直接删除插件配置中的 <code>json</code>  [...]
 你需要在 <code>config.yaml</code> 中注释掉以下内容:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">plugins</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span></div><div cla [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/echo/index.html b/zh/docs/apisix/plugins/echo/index.html
index d7fa378..198d968 100644
--- a/zh/docs/apisix/plugins/echo/index.html
+++ b/zh/docs/apisix/plugins/echo/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">echo | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/echo"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusau [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/error-log-logger/index.html b/zh/docs/apisix/plugins/error-log-logger/index.html
index addec4a..8df8f2f 100644
--- a/zh/docs/apisix/plugins/error-log-logger/index.html
+++ b/zh/docs/apisix/plugins/error-log-logger/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">error-log-logger | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/error-log-logger"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 <a href="/zh/docs/apisix/batch-processor">Batch-Processor</a></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="属性列表"></a>属性列表<a class="hash-link" href="#属性列表" title="Direct link to heading">#</a></h2><table><thead><tr><th>名称</th><th>类型</th><th>必选项</th><th>默认值</th><th>有效值</th><th>描述</th></tr></thead><tbody><tr><td>host</td><td>string</td><td>必须</td><td></td><td></td><td>TCP 服务的IP地址或主机名</td></tr><tr><td>port</td><td>integer</td><td>必须</td><td></td><td>[0,...]</td><td>目标端口</td> [...]
 下面是一个在<code>conf/config.yaml</code> 中添加插件信息的例子:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">plugins</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain">              [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/fault-injection/index.html b/zh/docs/apisix/plugins/fault-injection/index.html
index b9e1e82..66431c5 100644
--- a/zh/docs/apisix/plugins/fault-injection/index.html
+++ b/zh/docs/apisix/plugins/fault-injection/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">fault-injection | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/fault-injection"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" n [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -41,7 +41,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Fault Injection</span><span class="token operator" style="color:rgb(137, 221, 255)">!</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>2、请求头 <code>apikey</code> 匹配成功,缺少请求参数,执行故障注入:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Fault Injection</span><span class="token operator" style="color:rgb(137, 221, 255)">!</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>3、请求参数与请求头都匹配失败,不执行故障注入:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar" [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">hello</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="禁用插件"></a>禁用插件<a class="hash-link" href="#禁用插件" title="Direct link to heading">#</a></h3><p>移除插件配置中相应的 JSON 配置可立即禁用该插件,无需重启服务:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><di [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/grpc-transcode/index.html b/zh/docs/apisix/plugins/grpc-transcode/index.html
index 8f5500a..0550cc7 100644
--- a/zh/docs/apisix/plugins/grpc-transcode/index.html
+++ b/zh/docs/apisix/plugins/grpc-transcode/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">grpc-transcode | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/grpc-transcode"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" nam [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;message&quot;</span><span class="token builtin class-name" style="color:rgb(255, 203, 107)">:</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;Hello world&quot;</span><span class="token punctuation" style="color:rgb(199, 146, 234)">}</spa [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;workflowKey&quot;</span><span class="token builtin class-name" style="color:rgb(255, 203, 107)">:</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;#2251799813685260&quot;</span><span class="token plain">,</span><span class="token string"  [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/hmac-auth/index.html b/zh/docs/apisix/plugins/hmac-auth/index.html
index 36c8589..c1a9a74 100644
--- a/zh/docs/apisix/plugins/hmac-auth/index.html
+++ b/zh/docs/apisix/plugins/hmac-auth/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">hmac-auth | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/hmac-auth"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsear [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -28,7 +28,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token operator" style="color:rgb(137, 221, 255)">!</span><span class="token plain">DOCTYPE html</span><span class="token operator" style="color:rgb(137, 221, 255)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token op [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token operator" style="color:rgb(137, 221, 255)">!</span><span class="token plain">DOCTYPE html</span><span class="token operator" style="color:rgb(137, 221, 255)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token op [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token operator" style="color:rgb(137, 221, 255)">!</span><span class="token plain">DOCTYPE html</span><span class="token operator" style="color:rgb(137, 221, 255)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token op [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/http-logger/index.html b/zh/docs/apisix/plugins/http-logger/index.html
index 18d33bd..e6afc89 100644
--- a/zh/docs/apisix/plugins/http-logger/index.html
+++ b/zh/docs/apisix/plugins/http-logger/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">http-logger | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/http-logger"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/index.html b/zh/docs/apisix/plugins/index.html
index 3363141..a2dc856 100644
--- a/zh/docs/apisix/plugins/index.html
+++ b/zh/docs/apisix/plugins/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">插件 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus_tag [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 禁用了该插件,在执行路由规则的时候会跳过这个插件。</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="stand-alone-模式下的热加载"></a>stand-alone 模式下的热加载<a class="hash-link" href="#stand-alone-模式下的热加载" title="Direct link to heading">#</a></h2><p>参考 <a href="/zh/docs/apisix/stand-alone">stand alone 模式</a> 文档里关于配置插件的内容。</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/zh/latest/plugins.md" target="_blank" rel="noreferre [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/ip-restriction/index.html b/zh/docs/apisix/plugins/ip-restriction/index.html
index 896049b..1be82d1 100644
--- a/zh/docs/apisix/plugins/ip-restriction/index.html
+++ b/zh/docs/apisix/plugins/ip-restriction/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ip-restriction | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/ip-restriction"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" nam [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/jwt-auth/index.html b/zh/docs/apisix/plugins/jwt-auth/index.html
index 86e6de5..abb5ce8 100644
--- a/zh/docs/apisix/plugins/jwt-auth/index.html
+++ b/zh/docs/apisix/plugins/jwt-auth/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">jwt-auth | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/jwt-auth"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -29,7 +29,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token operator" style="color:rgb(137, 221, 255)">!</span><span class="token plain">DOCTYPE html</span><span class="token operator" style="color:rgb(137, 221, 255)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token op [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token operator" style="color:rgb(137, 221, 255)">!</span><span class="token plain">DOCTYPE html</span><span class="token operator" style="color:rgb(137, 221, 255)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token op [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token operator" style="color:rgb(137, 221, 255)">!</span><span class="token plain">DOCTYPE html</span><span class="token operator" style="color:rgb(137, 221, 255)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token op [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/kafka-logger/index.html b/zh/docs/apisix/plugins/kafka-logger/index.html
index 0ec57a1..34d2b09 100644
--- a/zh/docs/apisix/plugins/kafka-logger/index.html
+++ b/zh/docs/apisix/plugins/kafka-logger/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">kafka-logger | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/kafka-logger"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="d [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -26,7 +26,7 @@
 当缓冲区超过<code>batch_max_size</code>时,它将发送到 kafka 服务器,
 或每个<code>buffer_duration</code>刷新缓冲区。</p><p>如果成功,则返回 <code>true</code>。
 如果出现错误,则返回 <code>nil</code>,并带有描述错误的字符串(<code>buffer overflow</code>)。</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="broker-列表"></a>Broker 列表<a class="hash-link" href="#broker-列表" title="Direct link to heading">#</a></h3><p>插件支持一次推送到多个 Broker,如下配置:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly json"><div tabindex="0" class="prism-code language-json codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-c [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/key-auth/index.html b/zh/docs/apisix/plugins/key-auth/index.html
index a85eb88..939b920 100644
--- a/zh/docs/apisix/plugins/key-auth/index.html
+++ b/zh/docs/apisix/plugins/key-auth/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">key-auth | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/key-auth"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 <img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/plugin/key-auth-1.png"></p><p>然后在 consumer 页面中添加 key-auth 插件:
 <img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/plugin/key-auth-2.png"></p><ol start="2"><li>创建 route 或 service 对象,并开启 <code>key-auth</code> 插件。</li></ol><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="tok [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.2:9080/index.html -H </span><span class="token string" style="color:rgb(195, 232, 141)">&#x27;apikey: abcabcabc&#x27;</span><span class="token plain"> -i</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">HTTP/1.1 </span><span class="token number" st [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/limit-conn/index.html b/zh/docs/apisix/plugins/limit-conn/index.html
index d3a775d..a79277b 100644
--- a/zh/docs/apisix/plugins/limit-conn/index.html
+++ b/zh/docs/apisix/plugins/limit-conn/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">limit-conn | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/limit-conn"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 <img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/plugin/limit-conn-1.png"></p><p>然后在 route 页面中添加 limit-conn 插件:
 <img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/plugin/limit-conn-2.png"></p><h4><a aria-hidden="true" tabindex="-1" class="anchor" id="test-plugin"></a>test plugin<a class="hash-link" href="#test-plugin" title="Direct link to heading">#</a></h4><p>上面启用的插件的参数表示只允许一个并发请求。 当收到多个并发请求时,将直接返回 503 拒绝请求。</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrol [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> -i http://127.0.0.1:9080/index.html?sleep</span><span class="token operator" style="color:rgb(137, 221, 255)">=</span><span class="token number" style="color:rgb(247, 140, 108)">20</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></ [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/limit-count/index.html b/zh/docs/apisix/plugins/limit-count/index.html
index d2ee629..9f39f5c 100644
--- a/zh/docs/apisix/plugins/limit-count/index.html
+++ b/zh/docs/apisix/plugins/limit-count/index.html
@@ -15,17 +15,17 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">limit-count | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/limit-count"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 在指定的时间范围内,限制总的请求个数。并且在 HTTP 响应头中返回剩余可以请求的个数。</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="参数"></a>参数<a class="hash-link" href="#参数" title="Direct link to heading">#</a></h2><table><thead><tr><th>名称</th><th>类型</th><th>必选项</th><th>默认值</th><th>有效值</th><th>描述</th></tr></thead><tbody><tr><td>count</td><td>integer</td><td>必须</td><td></td><td>count &gt; 0</td><td>指定时间窗口内的请求数量阈值</td></tr><tr><td>time_window</td><td>integer</td><td>必须</td><td></td><td>time_window &gt; 0</td><td>时 [...]
 <img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/plugin/limit-count-1.png" alt="添加路由"></p><p>然后在 route 页面中添加 limit-count 插件:
-<img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/plugin/limit-count-2.png" alt="添加插件"></p><p>如果你需要一个集群级别的流量控制,我们可以借助 redis server 来完成。不同的 APISIX 节点之间将共享流量限速结果,实现集群流量限速。</p><p>如果启用单 redis 策略,请看下面例子:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="toke [...]
+<img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/plugin/limit-count-2.png" alt="添加插件"></p><p>如果你需要一个集群级别的流量控制,我们可以借助 redis server 来完成。不同的 APISIX 节点之间将共享流量限速结果,实现集群流量限速。</p><p>如果启用单 redis 策略,请看下面例子:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="toke [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token plain">html</span><span class="token operator" style="color:rgb(137, 221, 255)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token plain"> [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/limit-req/index.html b/zh/docs/apisix/plugins/limit-req/index.html
index 0d9a374..36cc6e5 100644
--- a/zh/docs/apisix/plugins/limit-req/index.html
+++ b/zh/docs/apisix/plugins/limit-req/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">limit-req | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/limit-req"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsear [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&lt;</span><span class="token tag" style="color:rgb(255, 85, 114)">html</span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(19 [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/log-rotate/index.html b/zh/docs/apisix/plugins/log-rotate/index.html
index 4a9b899..939932e 100644
--- a/zh/docs/apisix/plugins/log-rotate/index.html
+++ b/zh/docs/apisix/plugins/log-rotate/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">log-rotate | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/log-rotate"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 通过配置参数可以设置每间隔多久切分一次日志,以及最近保留多少份日志(超过指定数量后,自动删除老文件)。</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="参数"></a>参数<a class="hash-link" href="#参数" title="Direct link to heading">#</a></h2><table><thead><tr><th>名称</th><th>类型</th><th>必选项</th><th>默认值</th><th>有效值</th><th>描述</th></tr></thead><tbody><tr><td>interval</td><td>integer</td><td>必须</td><td>60 * 60</td><td></td><td>每间隔多长时间切分一次日志,秒为单位</td></tr><tr><td>max_kept</td><td>integer</td><td>必须</td><td>24 * 7</td><td></td><td>最多保留多少份 [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token key atrule">plugin_attr</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    </span><span class="token key atrule">log-rotate</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span></ [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/mqtt-proxy/index.html b/zh/docs/apisix/plugins/mqtt-proxy/index.html
index 67226f8..f492e44 100644
--- a/zh/docs/apisix/plugins/mqtt-proxy/index.html
+++ b/zh/docs/apisix/plugins/mqtt-proxy/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">mqtt-proxy | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/mqtt-proxy"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/node-status/index.html b/zh/docs/apisix/plugins/node-status/index.html
index 3b009f5..d9800e6 100644
--- a/zh/docs/apisix/plugins/node-status/index.html
+++ b/zh/docs/apisix/plugins/node-status/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">node-status | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/node-status"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">{&quot;status&quot;:{&quot;total&quot;:&quot;23&quot;,&quot;waiting&quot;:&quot;0&quot;,&quot;accepted&quot;:&quot;22&quot;,&quot;writing&quot;:&quot;1&quot;,&quot;handled&quot;:&quot;22&quot;,&quot;active&quot;:&quot;1&quot;,&quot;reading&quot;:&quot;0&quot;},&quot;id&quot;:&quot;6790a064-8f61-44ba-a6d3-5df42f2b1bb3&quot;}</span></div></div></div><button type="button" aria-label="Copy code to clipboard" [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/openid-connect/index.html b/zh/docs/apisix/plugins/openid-connect/index.html
index 6c62a44..3ae646b 100644
--- a/zh/docs/apisix/plugins/openid-connect/index.html
+++ b/zh/docs/apisix/plugins/openid-connect/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">openid-connect | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/openid-connect"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" nam [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@
 下图显示了通过网关进行令牌自省的示例(成功)流程。</p><p><img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/plugin/oauth-1.png" alt="token introspection"></p><p>以下是 curl 命令,用于将插件启用到外部服务。
 通过自省请求标头中提供的令牌,此路由将保护 <a href="https://httpbin.org/get%EF%BC%88echo" target="_blank" rel="noopener noreferrer">https://httpbin.org/get(echo</a> 服务)。</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly bash"><div tabindex="0" class="prism-code language-bash codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170,  [...]
 具体细节参见:</p><ol><li><a href="https://github.com/zmartzone/lua-resty-openidc" target="_blank" rel="noopener noreferrer">lua-resty-openidc</a> 的文档和代码。</li><li><code>exp</code> 字段的定义: <a href="https://tools.ietf.org/html/rfc7662#section-2.2" target="_blank" rel="noopener noreferrer">Introspection Response</a>。</li></ol><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="公钥自省"></a>公钥自省<a class="hash-link" href="#公钥自省" title="Direct link to heading">#</a></h3><p>您还可以提供 JWT 令牌的公钥来验证令牌。 如 [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/prometheus/index.html b/zh/docs/apisix/plugins/prometheus/index.html
index 787dfa6..28e6a89 100644
--- a/zh/docs/apisix/plugins/prometheus/index.html
+++ b/zh/docs/apisix/plugins/prometheus/index.html
@@ -15,16 +15,16 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">prometheus | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/prometheus"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 默认情况下,这个地址是 <code>127.0.0.1:9091</code>。你可以在 <code>conf/config.yaml</code> 里面修改它,比如:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly"><div tabindex="0" class="prism-code language-undefined codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">plugin_attr:</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plai [...]
 来保护它。</strong></p><p>如果你依然想要这样的行为,你可以这么配置:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly"><div tabindex="0" class="prism-code language-undefined codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">plugin_attr:</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">  prometheus:</span></div><div class="t [...]
 注意,多个路由/服务可以设置为相同的名称,因此当设置 <code>prefer_name</code> 为 <code>true</code> 时,注意规范命名否则容易引起误解。</p><p>例子如下:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> h [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/proxy-cache/index.html b/zh/docs/apisix/plugins/proxy-cache/index.html
index 6acae49..c46d7b3 100644
--- a/zh/docs/apisix/plugins/proxy-cache/index.html
+++ b/zh/docs/apisix/plugins/proxy-cache/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">proxy-cache | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/proxy-cache"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -26,7 +26,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">hello</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><blockquote><p>http status 返回<code>200</code>并且响应头中包含 <code>Apisix-Cache-Status</code>,表示该插件已启用。</p></blockquote><p>3、验证数据是否被缓存,再次请求上面的地址:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">hello</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><blockquote><p>响应头 <code>Apisix-Cache-Status</code> 值变为了 HIT,说明数据已经被缓存</p></blockquote><p>示例3:指定 cache_zone 为 <code>invalid_disk_cache</code> 与 <code>conf/config.yaml</code> 文件中指定的缓存区域 <code>disk_cache_one</code> 不一致。</p><div class="codeBlockContainer_K1bP"><div class=" [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token plain">html</span><span class="token operator" style="color:rgb(137, 221, 255)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token operator" style="color:rgb(137, 221, 255)">&lt;</span><span class="token plain"> [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/proxy-mirror/index.html b/zh/docs/apisix/plugins/proxy-mirror/index.html
index fd6548b..f143c26 100644
--- a/zh/docs/apisix/plugins/proxy-mirror/index.html
+++ b/zh/docs/apisix/plugins/proxy-mirror/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">proxy-mirror | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/proxy-mirror"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="d [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">hello world</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><blockquote><p>由于指定的 mirror 地址是127.0.0.1:9797,所以验证此插件是否已经正常工作需要在端口为9797的服务上确认,例如,我们可以通过 python 启动一个简单的 server: python -m SimpleHTTPServer 9797。</p></blockquote><h4><a aria-hidden="true" tabindex="-1" class="anchor" id="禁用插件"></a>禁用插件<a class="hash-link" href="#禁用插 [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/proxy-rewrite/index.html b/zh/docs/apisix/plugins/proxy-rewrite/index.html
index 9f701e6..7b1545f 100644
--- a/zh/docs/apisix/plugins/proxy-rewrite/index.html
+++ b/zh/docs/apisix/plugins/proxy-rewrite/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">proxy-rewrite | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/proxy-rewrite"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name= [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/redirect/index.html b/zh/docs/apisix/plugins/redirect/index.html
index 53e9e8e..bcd7008 100644
--- a/zh/docs/apisix/plugins/redirect/index.html
+++ b/zh/docs/apisix/plugins/redirect/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">redirect | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/redirect"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token plain">.</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>我们可以检查响应码和响应头中的 <code>Location</code> 参数,它表示该插件已启用。</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly"><div tabindex="0" class="prism-code l [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">下面是一个实现 http 到 https 跳转的示例:</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">```shell</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">curl http://127.0.0.1:9080/apisix/admin/routes/1  -H &#x27;X-API-KEY: edd1c9f034335f136f87ad84b625c8f1&#x27; -X PUT -d &#x27;</span></div><div class="token-line" style="color:#bfc7d5"><span class="token [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/referer-restriction/index.html b/zh/docs/apisix/plugins/referer-restriction/index.html
index 98e992b..cd5b871 100644
--- a/zh/docs/apisix/plugins/referer-restriction/index.html
+++ b/zh/docs/apisix/plugins/referer-restriction/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">referer-restriction | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/referer-restriction"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet= [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/request-id/index.html b/zh/docs/apisix/plugins/request-id/index.html
index 9674e5a..e3e500a 100644
--- a/zh/docs/apisix/plugins/request-id/index.html
+++ b/zh/docs/apisix/plugins/request-id/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">request-id | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/request-id"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/request-validation/index.html b/zh/docs/apisix/plugins/request-validation/index.html
index 12cb346..edc8b94 100644
--- a/zh/docs/apisix/plugins/request-validation/index.html
+++ b/zh/docs/apisix/plugins/request-validation/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">request-validation | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/request-validation"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="t [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/response-rewrite/index.html b/zh/docs/apisix/plugins/response-rewrite/index.html
index 9aedb0d..b54cace 100644
--- a/zh/docs/apisix/plugins/response-rewrite/index.html
+++ b/zh/docs/apisix/plugins/response-rewrite/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">response-rewrite | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/response-rewrite"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 1、可以设置 <code>Access-Control-Allow-*</code> 等 header 信息,来实现 CORS (跨域资源共享)的功能。
 2、另外也可以通过配置 status_code 和 header 里面的 Location 来实现重定向,当然如果只是需要重定向功能,最好使用 <a href="/zh/docs/apisix/plugins/redirect">redirect</a> 插件。</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="配置参数"></a>配置参数<a class="hash-link" href="#配置参数" title="Direct link to heading">#</a></h2><table><thead><tr><th>名称</th><th>类型</th><th>必选项</th><th>默认值</th><th>有效值</th><th>描述</th></tr></thead><tbody><tr><td>status_code</td><td>integer</td><td>可选</td><td></td><td>[200, 598]</td><td>修改上游返回状态码,默认保留原始响应代 [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;code&quot;</span><span class="token builtin class-name" style="color:rgb(255, 203, 107)">:</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;ok&quot;</span><span class="token plain">,</span><span class="token string" style="color:rgb(195,  [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/server-info/index.html b/zh/docs/apisix/plugins/server-info/index.html
index 772688e..4f594a8 100644
--- a/zh/docs/apisix/plugins/server-info/index.html
+++ b/zh/docs/apisix/plugins/server-info/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">server-info | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/server-info"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 小时:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">plugin_attr</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span></div><div class="token-line" style="color:#bf [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/serverless/index.html b/zh/docs/apisix/plugins/serverless/index.html
index d82b478..4b755ac 100644
--- a/zh/docs/apisix/plugins/serverless/index.html
+++ b/zh/docs/apisix/plugins/serverless/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">serverless | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/serverless"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 前者会在指定阶段的最开始运行,后者是在指定阶段的最后运行。</p><p>这两个插件接收的参数都是一样的。</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="parameters"></a>Parameters<a class="hash-link" href="#parameters" title="Direct link to heading">#</a></h2><table><thead><tr><th>名称</th><th>类型</th><th>必选项</th><th>默认值</th><th>有效值</th><th>描述</th></tr></thead><tbody><tr><td>phase</td><td>string</td><td>可选</td><td>[&quot;access&quot;]</td><td>[&quot;rewrite&quot;, &quot;access&quot;, &quot;header_filter&quot;, &quot;body_filter [...]
 表示指定的函数已经生效。</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="移除插件"></a>移除插件<a class="hash-link" href="#移除插件" title="Direct link to heading">#</a></h3><p>当你想去掉插件的时候,很简单,在插件的配置中把对应的 json 配置删除即可,无须重启服务,即刻生效:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style= [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/skywalking/index.html b/zh/docs/apisix/plugins/skywalking/index.html
index 9f9123b..8bd1e6a 100644
--- a/zh/docs/apisix/plugins/skywalking/index.html
+++ b/zh/docs/apisix/plugins/skywalking/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">skywalking | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/skywalking"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -30,7 +30,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic">/**</span></div><div class="token-line" style="color:#bfc7d5"><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"> * @author cyxinda</span></div><div class="token-line" style="color:#bfc7d5"><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"> * @create 2020-05-29 14 [...]
 </span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>启动服务的时候,需要配置skywalking agent,
 修改agent/config/agent.config中的配置</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">agent.service_name</span><span class="token operator" style="color:rgb(137, 221, 255)">=</span><span class="token plain">yourservername</span></d [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/sls-logger/index.html b/zh/docs/apisix/plugins/sls-logger/index.html
index 6e17450..927ff97 100644
--- a/zh/docs/apisix/plugins/sls-logger/index.html
+++ b/zh/docs/apisix/plugins/sls-logger/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">sls-logger | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/sls-logger"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 <a href="/zh/docs/apisix/batch-processor">Batch-Processor</a></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="属性列表"></a>属性列表<a class="hash-link" href="#属性列表" title="Direct link to heading">#</a></h2><table><thead><tr><th>属性名称</th><th>必选项</th><th>描述</th></tr></thead><tbody><tr><td>host</td><td>必要的</td><td>TCP 服务的IP地址或主机名,请参考:<a href="https://help.aliyun.com/document_detail/29008.html?spm=a2c4g.11186623.2.14.49301b4793uX0z#reference-wgx-pwq-zdb" target="_blank" rel="noopener  [...]
 <img src="https://raw.githubusercontent.com/apache/apisix/master/docs/assets/images/plugin/sls-logger-1.png" title="阿里云日志服务预览"></li></ul><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="禁用插件"></a>禁用插件<a class="hash-link" href="#禁用插件" title="Direct link to heading">#</a></h2><p>想要禁用“sls-logger”插件,是非常简单的,将对应的插件配置从json配置删除,就会立即生效,不需要重新启动服务:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_ [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/syslog/index.html b/zh/docs/apisix/plugins/syslog/index.html
index fc0e634..176eb26 100644
--- a/zh/docs/apisix/plugins/syslog/index.html
+++ b/zh/docs/apisix/plugins/syslog/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">syslog | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/syslog"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/tcp-logger/index.html b/zh/docs/apisix/plugins/tcp-logger/index.html
index 8f06859..dff28ec 100644
--- a/zh/docs/apisix/plugins/tcp-logger/index.html
+++ b/zh/docs/apisix/plugins/tcp-logger/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">tcp-logger | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/tcp-logger"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 <a href="/zh/docs/apisix/batch-processor">Batch-Processor</a></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="属性列表"></a>属性列表<a class="hash-link" href="#属性列表" title="Direct link to heading">#</a></h2><table><thead><tr><th>名称</th><th>类型</th><th>必选项</th><th>默认值</th><th>有效值</th><th>描述</th></tr></thead><tbody><tr><td>host</td><td>string</td><td>必须</td><td></td><td></td><td>TCP 服务的IP地址或主机名</td></tr><tr><td>port</td><td>integer</td><td>必须</td><td></td><td>[0,...]</td><td>目标端口</td> [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/traffic-split/index.html b/zh/docs/apisix/plugins/traffic-split/index.html
index 23826de..5329a69 100644
--- a/zh/docs/apisix/plugins/traffic-split/index.html
+++ b/zh/docs/apisix/plugins/traffic-split/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">traffic-split | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/traffic-split"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name= [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -36,7 +36,7 @@ service_name、discovery_type、checks、retries、desc、scheme、labels、crea
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">world </span><span class="token number" style="color:rgb(247, 140, 108)">1981</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">hello </span><span class="token number" style="color:rgb(247, 140, 108)">1980</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>在请求5次后,3次命中 <code>1981</code> 端口的服务,2次命中 <code>1980</code> 端口的服务。</p><blockquote><p>3、两个 <code>vars</code> 的表达式校验失败(缺少 <code>name</code> 和 <code>name2</code> 请求参数),<code>match</code> 规则校验失败, 响应都为 [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">hello </span><span class="token number" style="color:rgb(247, 140, 108)">1980</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="匹配规则与上游对应"></a>匹配规则与上游对应<a class="hash-link" href="#匹配规则与上游对应" title="Direct link to heading">#</a></h3><p>通过配置多个 <code>rules</code>,我们可以实现 [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/udp-logger/index.html b/zh/docs/apisix/plugins/udp-logger/index.html
index e819480..fc8d3e4 100644
--- a/zh/docs/apisix/plugins/udp-logger/index.html
+++ b/zh/docs/apisix/plugins/udp-logger/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">udp-logger | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/udp-logger"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 <a href="/zh/docs/apisix/batch-processor">Batch-Processor</a></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="属性列表"></a>属性列表<a class="hash-link" href="#属性列表" title="Direct link to heading">#</a></h2><table><thead><tr><th>名称</th><th>类型</th><th>必选项</th><th>默认值</th><th>有效值</th><th>描述</th></tr></thead><tbody><tr><td>host</td><td>string</td><td>必须</td><td></td><td></td><td>UDP 服务的 IP 地址或主机名</td></tr><tr><td>port</td><td>integer</td><td>必须</td><td></td><td>[0,...]</td><td>目标端口</t [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/uri-blocker/index.html b/zh/docs/apisix/plugins/uri-blocker/index.html
index 303e941..c20d2a0 100644
--- a/zh/docs/apisix/plugins/uri-blocker/index.html
+++ b/zh/docs/apisix/plugins/uri-blocker/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">uri-blocker | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/uri-blocker"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token plain">. </span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token plain">.</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h2><a aria-hidden="true" tabindex="-1" class="anchor" id= [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/wolf-rbac/index.html b/zh/docs/apisix/plugins/wolf-rbac/index.html
index 633fb35..81a8101 100644
--- a/zh/docs/apisix/plugins/wolf-rbac/index.html
+++ b/zh/docs/apisix/plugins/wolf-rbac/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">wolf-rbac | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/wolf-rbac"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsear [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -41,7 +41,7 @@ rbac 功能由<a href="https://github.com/iGeeky/wolf" target="_blank" rel="noop
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">HTTP/1.1 </span><span class="token number" style="color:rgb(247, 140, 108)">200</span><span class="token plain"> OK</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    </span><span [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">HTTP/1.1 </span><span class="token number" style="color:rgb(247, 140, 108)">200</span><span class="token plain"> OK</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;message&quot;</span><span class="token builtin class-name" st [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/plugins/zipkin/index.html b/zh/docs/apisix/plugins/zipkin/index.html
index b6af738..3a9f5b2 100644
--- a/zh/docs/apisix/plugins/zipkin/index.html
+++ b/zh/docs/apisix/plugins/zipkin/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">zipkin | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/plugins/zipkin"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -27,7 +27,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    tracer := GetTracer(...)</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    // use middleware to extract parentID from http header that injected by APISIX</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">    r.Use(func(c *gin.Context) {</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">        span := this.Tracer.Extract(b3.ExtractHTTP(c.Request))</span></div><div class="token-line" style="color:#bfc7d5"><s [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">}</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/zh/latest/plugins/zipkin.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAsp [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/profile/index.html b/zh/docs/apisix/profile/index.html
index 30ea18f..4837b4c 100644
--- a/zh/docs/apisix/profile/index.html
+++ b/zh/docs/apisix/profile/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">基于环境变量进行配置文件切换 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/profile"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:do [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/router-radixtree/index.html b/zh/docs/apisix/router-radixtree/index.html
index ed91ccc..ffbaf2a 100644
--- a/zh/docs/apisix/router-radixtree/index.html
+++ b/zh/docs/apisix/router-radixtree/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Router radixtree | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/router-radixtree"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="d [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@
 here is an simple example:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ </span><span class="token function" style="color:rgb(130, 170, 255)">curl</span><span class="token plain"> http://127.0.0.1:9080/apisix/admin/routes [...]
 data from the request body. This limitation is configured via:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">graphql</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain [...]
 </span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><p>If you need to pass a graphql body which is larger than the limitation, you can increase the value in <code>conf/config.yaml</code>.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix/edit/master/docs/zh/latest/router-radixtree.md" target="_blank" rel="noreferrer noopener"><svg fill= [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/stand-alone/index.html b/zh/docs/apisix/stand-alone/index.html
index e62792d..cafb362 100644
--- a/zh/docs/apisix/stand-alone/index.html
+++ b/zh/docs/apisix/stand-alone/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Stand-alone mode | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/stand-alone"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -24,7 +24,7 @@
 (默认 1 秒钟),都会尝试检测文件内容是否有更新,如果有更新则重新加载规则。</p><p><em>注意</em>:重新加载规则并更新时,均是内存热更新,不会有工作进程的替换过程,是个热更新过程。</p><p>通过设置 <code>conf/config.yaml</code> 中的 <code>apisix.config_center</code> 选项为 <code>yaml</code> 表示启
 用 Stand-alone 模式。</p><p>参考下面示例:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apisix</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span></div><div class="token [...]
 Admin API 将不再被允许使用。</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="如何配置规则"></a>如何配置规则<a class="hash-link" href="#如何配置规则" title="Direct link to heading">#</a></h3><p>所有的路由规则均存放在 <code>conf/apisix.yaml</code> 这一个文件中,APISIX 会以每秒(默认)频率检查文件是否有变化,如果有变化,则会检查文件末尾是否能找到 <code>#END</code> 结尾,找到后则重新加载文件更新到内存。</p><p>下面就是个最小的示例:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar" [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/apisix/stream-proxy/index.html b/zh/docs/apisix/stream-proxy/index.html
index 0fe18b9..e793c51 100644
--- a/zh/docs/apisix/stream-proxy/index.html
+++ b/zh/docs/apisix/stream-proxy/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">TCP/UDP 动态代理 | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/apisix/stream-proxy"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 更多用例,请参照 <a href="/t/stream-node/sanity.t">test case</a>.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="更多限制选项"></a>更多限制选项<a class="hash-link" href="#更多限制选项" title="Direct link to heading">#</a></h2><p>我们可以添加更多的选项来匹配 route ,例如</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div c [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/dashboard/FAQ/index.html b/zh/docs/dashboard/FAQ/index.html
index d86e4e2..2ad29eb 100644
--- a/zh/docs/dashboard/FAQ/index.html
+++ b/zh/docs/dashboard/FAQ/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">FAQ | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/dashboard/FAQ"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus_tag [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 Refer to the beginning in:
 <a href="https://apisix.apache.org/docs/apisix/control-api" target="_blank" rel="noopener noreferrer">https://apisix.apache.org/docs/apisix/control-api</a></p></li><li><p>Execute the following commands to export jsonchema on your APISIX server (if it is configured for non-local access, it does not need to be executed on your APISIX server, and the access IP and port should be modified accordingly)</p></li></ol><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly sh"><di [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/dashboard/I18N_USER_GUIDE/index.html b/zh/docs/dashboard/I18N_USER_GUIDE/index.html
index 935467a..61953f3 100644
--- a/zh/docs/dashboard/I18N_USER_GUIDE/index.html
+++ b/zh/docs/dashboard/I18N_USER_GUIDE/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">i18n User Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/dashboard/I18N_USER_GUIDE"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name=" [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/dashboard/IGNORE_DOC/index.html b/zh/docs/dashboard/IGNORE_DOC/index.html
index 2297bf6..eb5ed5e 100644
--- a/zh/docs/dashboard/IGNORE_DOC/index.html
+++ b/zh/docs/dashboard/IGNORE_DOC/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">IGNORE_DOC | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/dashboard/IGNORE_DOC"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch: [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/dashboard/IMPORT_OPENAPI_USER_GUIDE/index.html b/zh/docs/dashboard/IMPORT_OPENAPI_USER_GUIDE/index.html
index b4e494c..1983905 100644
--- a/zh/docs/dashboard/IMPORT_OPENAPI_USER_GUIDE/index.html
+++ b/zh/docs/dashboard/IMPORT_OPENAPI_USER_GUIDE/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Import OpenAPI Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/dashboard/IMPORT_OPENAPI_USER_GUIDE"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helme [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">      </span><span class="token key atrule">requestBody</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">        </span><span class="token key atrule">content</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"></ [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/dashboard/USER_GUIDE/index.html b/zh/docs/dashboard/USER_GUIDE/index.html
index a738cc2..9d28cae 100644
--- a/zh/docs/dashboard/USER_GUIDE/index.html
+++ b/zh/docs/dashboard/USER_GUIDE/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">User Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/dashboard/USER_GUIDE"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch: [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/dashboard/api/api/index.html b/zh/docs/dashboard/api/api/index.html
index e48be76..e0a34b3 100644
--- a/zh/docs/dashboard/api/api/index.html
+++ b/zh/docs/dashboard/api/api/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">API doc of Manager API. | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/dashboard/api/api"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name=" [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/dashboard/back-end-tests/index.html b/zh/docs/dashboard/back-end-tests/index.html
index 4c7b365..1410a32 100644
--- a/zh/docs/dashboard/back-end-tests/index.html
+++ b/zh/docs/dashboard/back-end-tests/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Backend Tests | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/dashboard/back-end-tests"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -28,7 +28,7 @@ For more details, run</p><div class="codeBlockContainer_K1bP"><div class="codeBl
 high expressiveness which makes reading and writing tests a pleasure.</p><ul><li><p>Enter the E2ENEW folder and execute the command to run all the E2ENEW test suites recursively.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly sh"><div tabindex="0" class="prism-code language-sh codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain"> cd  [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">         table</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token function" style="color:rgb(130, 170, 255)">DescribeTable</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;&lt;logical group 2&gt;&quot;</span><span class="token punctuation" style="color:rgb(199, 14 [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(199, 146, 234)">}</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div></li><li><p>FYI, internally ginkgo reduces each table entries to <code>It</code> block and run all the <code>It</code> bloc [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/dashboard/deploy-with-docker/index.html b/zh/docs/dashboard/deploy-with-docker/index.html
index f78a928..f94608f 100644
--- a/zh/docs/dashboard/deploy-with-docker/index.html
+++ b/zh/docs/dashboard/deploy-with-docker/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Deploy with Docker | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/dashboard/deploy-with-docker"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true"  [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"># For users in mainland China, the `ENABLE_PROXY` parameter can be provided to speed up module downloads.</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ docker build -t apisix-dashboard:$tag . --build-arg ENABLE_PROXY=true</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"># If you want to use the latest codes to build, you can specify the `APISIX_DASHBOARD_VERSION` parameter to `master`.</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"># This parameter can also be specified as branch name of a specific version, such as `v2.1.1`.</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ docker build -t apisix-d [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/dashboard/deploy-with-rpm/index.html b/zh/docs/dashboard/deploy-with-rpm/index.html
index 64a5246..4353b7c 100644
--- a/zh/docs/dashboard/deploy-with-rpm/index.html
+++ b/zh/docs/dashboard/deploy-with-rpm/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Deploy with RPM | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/dashboard/deploy-with-rpm"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name=" [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/dashboard/deploy/index.html b/zh/docs/dashboard/deploy/index.html
index 99ea573..a58173d 100644
--- a/zh/docs/dashboard/deploy/index.html
+++ b/zh/docs/dashboard/deploy/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Deploy with Source Codes | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/dashboard/deploy"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name=" [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -26,7 +26,7 @@
 run:</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly sh"><div tabindex="0" class="prism-code language-sh codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ ./manager-api stop</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h2><a aria-hidden="true"  [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ mv ./output/ /usr/local/apisix-dashboard/</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ manager-api -p /usr/local/apisix-dashboard/</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix-dashboard/edit/master/docs/zh/latest/deploy.md" target="_blank" rel="noreferrer noopener"><svg fill="currentC [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/dashboard/develop/index.html b/zh/docs/dashboard/develop/index.html
index a401be2..83df03a 100644
--- a/zh/docs/dashboard/develop/index.html
+++ b/zh/docs/dashboard/develop/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Development Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/dashboard/develop"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ yarn start</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><ol start="4"><li>If writing an front end E2E test, please refer to the <a href="/zh/docs/dashboard/front-end-e2e">Front End E2E Writing Guide</a></li></ol></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/ [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/dashboard/front-end-e2e/index.html b/zh/docs/dashboard/front-end-e2e/index.html
index cbaf153..68c5c97 100644
--- a/zh/docs/dashboard/front-end-e2e/index.html
+++ b/zh/docs/dashboard/front-end-e2e/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Frontend E2E | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/dashboard/front-end-e2e"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docse [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/docker/IGNORE_DOC/index.html b/zh/docs/docker/IGNORE_DOC/index.html
index f1bbb88..324499d 100644
--- a/zh/docs/docker/IGNORE_DOC/index.html
+++ b/zh/docs/docker/IGNORE_DOC/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">IGNORE_DOC | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/docker/IGNORE_DOC"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/docker/build/index.html b/zh/docs/docker/build/index.html
index dec036e..f89f64c 100644
--- a/zh/docs/docker/build/index.html
+++ b/zh/docs/docker/build/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Build an image from the source codes | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/docker/build"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">APISIX_VERSION=2.2</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">docker build -t apisix:${APISIX_VERSION}-alpine --build-arg APISIX_VERSION=${APISIX_VERSION} -f alpine/Dockerfile alpine</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><ol start="2"><li>install master branch version, whi [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/docker/example/index.html b/zh/docs/docker/example/index.html
index f5a4149..2829b5c 100644
--- a/zh/docs/docker/example/index.html
+++ b/zh/docs/docker/example/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Example | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/docker/example"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusauru [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -30,7 +30,7 @@ free service to resolve itself along with all subdomains to localhost.</p><div c
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">curl http://web2.lvh.me:9080/hello -v # hello web2</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly"><div tabindex="0" class="prism-code language-undefined codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-co [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ sudo rm -rf etcd_data/member</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">$ rm -rf apisix_log/*.log</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix-docker/edit/master/docs/zh/latest/example.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" w [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/docker/manual/index.html b/zh/docs/docker/manual/index.html
index 0f19438..74221bb 100644
--- a/zh/docs/docker/manual/index.html
+++ b/zh/docs/docker/manual/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Deploy Apache APISIX with Docker | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/docker/manual"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" n [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/general/2fa/index.html b/zh/docs/general/2fa/index.html
index 4286921..f6eefcf 100644
--- a/zh/docs/general/2fa/index.html
+++ b/zh/docs/general/2fa/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">2FA | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/general/2fa"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusaurus_tag"  [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/general/committer-guide/index.html b/zh/docs/general/committer-guide/index.html
index a5673d5..91e0a32 100644
--- a/zh/docs/general/committer-guide/index.html
+++ b/zh/docs/general/committer-guide/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Committer Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/general/committer-guide"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="do [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/general/contributor-guide/index.html b/zh/docs/general/contributor-guide/index.html
index cb8b7b5..16bdc30 100644
--- a/zh/docs/general/contributor-guide/index.html
+++ b/zh/docs/general/contributor-guide/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Contributor Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/general/contributor-guide"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/general/integrate-with-project-docs/index.html b/zh/docs/general/integrate-with-project-docs/index.html
index 9389187..1670078 100644
--- a/zh/docs/general/integrate-with-project-docs/index.html
+++ b/zh/docs/general/integrate-with-project-docs/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Integrate with Project documentations | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/general/integrate-with-project-docs"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/general/release-guide/index.html b/zh/docs/general/release-guide/index.html
index 447bb63..ed330d9 100644
--- a/zh/docs/general/release-guide/index.html
+++ b/zh/docs/general/release-guide/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/general/release-guide"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsea [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -66,8 +66,8 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">The vote will be open for at least 72 hours or until necessary number of</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">votes are reached.</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">Please vote accordingly:</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">[ ] +1 approve</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">[ ] +0 no opinion</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">[ ] -1 disapprove with the reason</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
-</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="send-vote-result-thread-to-the-dev-mailing-list"></a>Send VOTE RESULT thread to the dev mailing list<a class="hash-link" href="#send-vote-result-thread-to-the-dev-mailing-list" title="Direct link to heading">#</a></h3><p>Click <a href="https://lists.apache.org/thread.html/r9153da737a4590dbbba7272acc0 [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="send-vote-result-thread-to-the-dev-mailing-list"></a>Send VOTE RESULT thread to the dev mailing list<a class="hash-link" href="#send-vote-result-thread-to-the-dev-mailing-list" title="Direct link to heading">#</a></h3><p>Click <a href="https://lists.apache.org/thread.html/r9153da737a4590dbbba7272acc0 [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/general/security/index.html b/zh/docs/general/security/index.html
index 81d1680..b4a8dd5 100644
--- a/zh/docs/general/security/index.html
+++ b/zh/docs/general/security/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Security | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/general/security"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docusa [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/general/subscribe-guide/index.html b/zh/docs/general/subscribe-guide/index.html
index 5938b27..342e123 100644
--- a/zh/docs/general/subscribe-guide/index.html
+++ b/zh/docs/general/subscribe-guide/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Subscribe Guide | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/general/subscribe-guide"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="do [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/helm-chart/IGNORE_DOC/index.html b/zh/docs/helm-chart/IGNORE_DOC/index.html
index febd5bd..e2bcfbd 100644
--- a/zh/docs/helm-chart/IGNORE_DOC/index.html
+++ b/zh/docs/helm-chart/IGNORE_DOC/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">IGNORE_DOC | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/helm-chart/IGNORE_DOC"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/helm-chart/apisix-dashboard/index.html b/zh/docs/helm-chart/apisix-dashboard/index.html
index 2830de4..f6c1687 100644
--- a/zh/docs/helm-chart/apisix-dashboard/index.html
+++ b/zh/docs/helm-chart/apisix-dashboard/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX Dashboard Helm Chart | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/helm-chart/apisix-dashboard"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/helm-chart/apisix-ingress-controller/index.html b/zh/docs/helm-chart/apisix-ingress-controller/index.html
index 696a40c..44c357a 100644
--- a/zh/docs/helm-chart/apisix-ingress-controller/index.html
+++ b/zh/docs/helm-chart/apisix-ingress-controller/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX Ingress Controller Helm Chart | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/helm-chart/apisix-ingress-controller"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/helm-chart/apisix/index.html b/zh/docs/helm-chart/apisix/index.html
index eb1c8cf..f3bed6b 100644
--- a/zh/docs/helm-chart/apisix/index.html
+++ b/zh/docs/helm-chart/apisix/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX Helm Chart | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/helm-chart/apisix"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name= [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/index.html b/zh/docs/index.html
index 207e3c2..39c4b57 100644
--- a/zh/docs/index.html
+++ b/zh/docs/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Apache APISIX™"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" content="default [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/FAQ/index.html b/zh/docs/ingress-controller/FAQ/index.html
index 677b69e..7d22ab3 100644
--- a/zh/docs/ingress-controller/FAQ/index.html
+++ b/zh/docs/ingress-controller/FAQ/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">FAQ | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/FAQ"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="docsearch:docus [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/IGNORE_DOC/index.html b/zh/docs/ingress-controller/IGNORE_DOC/index.html
index c201351..3dd3129 100644
--- a/zh/docs/ingress-controller/IGNORE_DOC/index.html
+++ b/zh/docs/ingress-controller/IGNORE_DOC/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">IGNORE_DOC | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/IGNORE_DOC"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" name="d [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/concepts/apisix_cluster_config/index.html b/zh/docs/ingress-controller/concepts/apisix_cluster_config/index.html
new file mode 100644
index 0000000..163b21d
--- /dev/null
+++ b/zh/docs/ingress-controller/concepts/apisix_cluster_config/index.html
@@ -0,0 +1,36 @@
+<!doctype html>
+<html lang="zh" dir="ltr">
+<head>
+<meta charset="UTF-8">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+<meta name="generator" content="Docusaurus v2.0.0-alpha.75">
+<meta name="robots" content="noindex, nofollow">
+<link rel="alternate" type="application/rss+xml" href="/zh/blog/rss.xml" title="Apache APISIX™ Blog RSS Feed">
+<link rel="alternate" type="application/atom+xml" href="/zh/blog/atom.xml" title="Apache APISIX™ Blog Atom Feed">
+<link rel="preconnect" href="https://www.google-analytics.com">
+<link rel="preconnect" href="https://www.googletagmanager.com">
+<script async src="https://www.googletagmanager.com/gtag/js?id=G-WQLBQL6GY3"></script>
+<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-WQLBQL6GY3",{})</script>
+<link rel="search" type="application/opensearchdescription+xml" title="Apache APISIX™" href="/zh/opensearch.xml">
+<link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
+<link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixClusterConfig | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/concepts/apisix_cluster_config"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta dat [...]
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
+</head>
+<body>
+<script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+resource but its existence can enrich an APISIX cluster, for instance, enabling cluster-wide monitoring, rate limiting and so on.</p><p>monitoring features like collecting <a href="https://prometheus.io/" target="_blank" rel="noopener noreferrer">Prometheus</a> metrics
+and <a href="https://skywalking.apache.org/" target="_blank" rel="noopener noreferrer">skywalking</a> spans</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="monitoring"></a>Monitoring<a class="hash-link" href="#monitoring" title="Direct link to heading">#</a></h2><p>By default, monitoring are not enabled for the APISIX cluster, this is not favorable
+if you&#x27;d like to learn the real running status of your cluster. In such a case, you
+could create a <code>ApisixClusterConfig</code> to enable these features explicitly.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apiVersion</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span [...]
+Please see <a href="http://apisix.apache.org/docs/apisix/plugins/prometheus" target="_blank" rel="noopener noreferrer">Prometheus in APISIX</a> and <a href="http://apisix.apache.org/docs/apisix/plugins/skywalking" target="_blank" rel="noopener noreferrer">Skywalking in APISIX</a> for the details.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="admin-config"></a>Admin Config<a class="hash-link" href="#admin-config" title="Direct link to heading">#</a></h2><p>The default APIS [...]
+of Deployment or Pod template. Now with the help of <code>ApisixClusterConfig</code>, you can change some administrative fields on it.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apiVersion</span><span class="token pun [...]
+resource is processed, resources like Route, Upstream and others will be pushed to the new address with the new admin key (for authentication).</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="multiple-clusters-management"></a>Multiple Clusters Management<a class="hash-link" href="#multiple-clusters-management" title="Direct link to heading">#</a></h2><p><code>ApisixClusterConfig</code> is also designed for supporting multiple clusters management, but currently this function [...]
+Only the <code>ApisixClusterConfig</code> with the same named configured in <code>--default-apisix-cluster-name</code> option will be handled by apisix-ingress-controller, other instances will be neglected.</p><p>The current delete event for <code>ApisixClusterConfig</code> doesn&#x27;t mean the apisix-ingress-controller will lose the view of the corresponding APISIX cluster but
+resetting all the features on it, so the running of APISIX cluster is not influenced by this event.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix-ingress-controller/edit/master/docs/zh/latest/concepts/apisix_cluster_config.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0 0 40 40" class="iconEdit_2_ui" ar [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
+</body>
+</html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/concepts/apisix_route/index.html b/zh/docs/ingress-controller/concepts/apisix_route/index.html
index 5c3d817..e6e1c2a 100644
--- a/zh/docs/ingress-controller/concepts/apisix_route/index.html
+++ b/zh/docs/ingress-controller/concepts/apisix_route/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixRoute | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/concepts/apisix_route"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="t [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -44,8 +44,8 @@ which means <code>2/3</code> requests (with <code>GET</code> method and <code>Us
 will be proxied to serivce <code>bar</code>.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="plugins"></a>Plugins<a class="hash-link" href="#plugins" title="Direct link to heading">#</a></h2><p>Apache APISIX provides more than 40 <a href="https://github.com/apache/apisix/tree/master/docs/en/latest/plugins" target="_blank" rel="noopener noreferrer">plugins</a>, which can be used
 in <code>ApisixRoute</code>. All configuration items are named same to the one in APISIX.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apiVersion</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:< [...]
 which host is <code>local.httpbin.org</code>.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="websocket-proxy"></a>Websocket Proxy<a class="hash-link" href="#websocket-proxy" title="Direct link to heading">#</a></h2><p><a href="https://en.wikipedia.org/wiki/WebSocket#:~:text=WebSocket%20is%20a%20computer%20communications,WebSocket%20is%20distinct%20from%20HTTP." target="_blank" rel="noopener noreferrer">Websocket</a> service can be proxied
-by creating a route with specifying the <code>websocket</code> field.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apiVersion</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="t [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+by creating a route with specifying the <code>websocket</code> field.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apiVersion</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="t [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/concepts/apisix_tls/index.html b/zh/docs/ingress-controller/concepts/apisix_tls/index.html
index 0c219b8..5f07226 100644
--- a/zh/docs/ingress-controller/concepts/apisix_tls/index.html
+++ b/zh/docs/ingress-controller/concepts/apisix_tls/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixTls | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/concepts/apisix_tls"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -27,7 +27,7 @@ PEM format respectively.</p><div class="codeBlockContainer_K1bP"><div class="cod
 correct certificate, what&#x27;s more, it also should be matched with the <a href="https://www.globalsign.com/en/blog/what-is-server-name-indication#:~:text=Server%20Name%20Indication%20(SNI)%20allows,in%20the%20CLIENT%20HELLO%20message" target="_blank" rel="noopener noreferrer">Server Name Indication</a>
 extension in TLS, or the TLS handshaking might fail.</p><p>The apisix-ingress-controller will watch Secret resources that referred by ApisixTls objects, once a
 Secret changed, apisix-ingress-controller will re translate all referred ApisixTls objects, converting them to APISIX SSL resources ultimately.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix-ingress-controller/edit/master/docs/zh/latest/concepts/apisix_tls.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" role="img" viewBox="0  [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/concepts/apisix_upstream/index.html b/zh/docs/ingress-controller/concepts/apisix_upstream/index.html
index 7c1c373..e5452b9 100644
--- a/zh/docs/ingress-controller/concepts/apisix_upstream/index.html
+++ b/zh/docs/ingress-controller/concepts/apisix_upstream/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixUpstream | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/concepts/apisix_upstream"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-hel [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -36,7 +36,7 @@ just change them in the <code>timeout</code> field.</p><div class="codeBlockCont
 In that case, you can create configurations for individual port.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly yaml"><div tabindex="0" class="prism-code language-yaml codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token key atrule">apiVersion</span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token  [...]
 In the meanwhile, the ApisixUpstream <code>foo</code> sets <code>http</code> scheme for port <code>7000</code> and <code>grpc</code> scheme for <code>7001</code>
 (all ports are the service port). But both ports shares the load balancer configuration.</p><p><code>PortLevelSettings</code> is not mandatory if the service only exposes one port but is useful when multiple ports are defined.</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/apache/apisix-ingress-controller/edit/master/docs/zh/latest/concepts/apisix_upstream.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/contribute/index.html b/zh/docs/ingress-controller/contribute/index.html
index 37cc19e..dc0c87f 100644
--- a/zh/docs/ingress-controller/contribute/index.html
+++ b/zh/docs/ingress-controller/contribute/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Contributing to apisix-ingress-controller | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/contribute"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta d [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@ pleasant first experience for you, and that you will return to continue
 contributing.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="how-to-contribute"></a>How to contribute<a class="hash-link" href="#how-to-contribute" title="Direct link to heading">#</a></h2><p>Most of the contributions that we receive are code contributions, but you can
 also contribute to the documentation or simply report solid bugs
 for us to fix.</p><p> For new contributors, please take a look at issues with a tag called <a href="https://github.com/apache/apisix-ingress-controller/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22" target="_blank" rel="noopener noreferrer">Good first issue</a> or <a href="https://github.com/apache/apisix-ingress-controller/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22" target="_blank" rel="noopener noreferrer">Help wanted</a>.</p><h2><a aria-hidden="true" tabind [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/deployments/ack/index.html b/zh/docs/ingress-controller/deployments/ack/index.html
index d34fdaa..f03ab87 100644
--- a/zh/docs/ingress-controller/deployments/ack/index.html
+++ b/zh/docs/ingress-controller/deployments/ack/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on ACK | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/deployments/ack"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-rea [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/deployments/aws/index.html b/zh/docs/ingress-controller/deployments/aws/index.html
index 3ba3038..a43f567 100644
--- a/zh/docs/ingress-controller/deployments/aws/index.html
+++ b/zh/docs/ingress-controller/deployments/aws/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on Amazon EKS | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/deployments/aws"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta d [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/deployments/azure/index.html b/zh/docs/ingress-controller/deployments/azure/index.html
index 93e4fd8..2034548 100644
--- a/zh/docs/ingress-controller/deployments/azure/index.html
+++ b/zh/docs/ingress-controller/deployments/azure/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on Azure AKS | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/deployments/azure"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta  [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/deployments/gke/index.html b/zh/docs/ingress-controller/deployments/gke/index.html
index 1645e86..e4aa6e9 100644
--- a/zh/docs/ingress-controller/deployments/gke/index.html
+++ b/zh/docs/ingress-controller/deployments/gke/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on Google Cloud GKE | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/deployments/gke"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current">< [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/deployments/k3s-rke/index.html b/zh/docs/ingress-controller/deployments/k3s-rke/index.html
index 1cca09f..3843652 100644
--- a/zh/docs/ingress-controller/deployments/k3s-rke/index.html
+++ b/zh/docs/ingress-controller/deployments/k3s-rke/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on K3S and Rancher RKE | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/deployments/k3s-rke"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="cur [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 It&#x27;s a good choice to use Ingress APISIX as the north-south API gateway in K3S.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="prerequisites"></a>Prerequisites<a class="hash-link" href="#prerequisites" title="Direct link to heading">#</a></h2><ul><li>Install <a href="https://rancher.com/docs/k3s/latest/en/installation/" target="_blank" rel="noopener noreferrer">K3S</a> or <a href="https://rancher.com/docs/rke/latest/en/installation/" target="_blank" rel="noopener nore [...]
 If you are using K3S and you want to expose a <code>LoadBalancer</code> service, try to use <a href="https://github.com/k3s-io/klipper-lb" target="_blank" rel="noopener noreferrer">Klipper</a>.</p><p>Another thing should be concerned that the <code>allow.ipList</code> field should be customized according to the Pod CIDR settings(see <a href="https://rancher.com/docs/k3s/latest/en/installation/install-options/server-config/#networking" target="_blank" rel="noopener noreferrer">K3S</a> or  [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/deployments/kubesphere/index.html b/zh/docs/ingress-controller/deployments/kubesphere/index.html
index dea7fbb..9f620d3 100644
--- a/zh/docs/ingress-controller/deployments/kubesphere/index.html
+++ b/zh/docs/ingress-controller/deployments/kubesphere/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on KubeSphere | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/deployments/kubesphere"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"> [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 If you want to expose a <code>LoadBalancer</code> service, try to use <a href="https://github.com/kubesphere/porter" target="_blank" rel="noopener noreferrer">Porter</a>.</p><p>Another thing that should be concerned that the <code>allow.ipList</code> field should be customized according to the Pod CIDR settings, so that the apisix-ingress-controller instances can access the APISIX instances (resources pushing).</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="install-apisix- [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/deployments/minikube/index.html b/zh/docs/ingress-controller/deployments/minikube/index.html
index 6cadd07..7a5f9e0 100644
--- a/zh/docs/ingress-controller/deployments/minikube/index.html
+++ b/zh/docs/ingress-controller/deployments/minikube/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on Minikube | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/deployments/minikube"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><met [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/deployments/tke/index.html b/zh/docs/ingress-controller/deployments/tke/index.html
index bb009e9..5a7197f 100644
--- a/zh/docs/ingress-controller/deployments/tke/index.html
+++ b/zh/docs/ingress-controller/deployments/tke/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Install Ingress APISIX on Tencent TKE | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/deployments/tke"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta  [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/design/index.html b/zh/docs/ingress-controller/design/index.html
index 0e7c813..0144005 100644
--- a/zh/docs/ingress-controller/design/index.html
+++ b/zh/docs/ingress-controller/design/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Ingress Controller | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/design"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="true" nam [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/development/index.html b/zh/docs/ingress-controller/development/index.html
index d2c01b2..b0577e2 100644
--- a/zh/docs/ingress-controller/development/index.html
+++ b/zh/docs/ingress-controller/development/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Developing for Apache APISIX Ingress Controller | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/development"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"> [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/getting-started/index.html b/zh/docs/ingress-controller/getting-started/index.html
index 10bedd0..060acde 100644
--- a/zh/docs/ingress-controller/getting-started/index.html
+++ b/zh/docs/ingress-controller/getting-started/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Getting Started | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/getting-started"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-helmet="tru [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@ All these resources are watched and converted to corresponding resources in Apac
 and will be reflected to nodes in APISIX Upstream.</p><p><img src="https://raw.githubusercontent.com/apache/apisix-ingress-controller/master/docs/assets/images/scene.png" alt="scene"></p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="features"></a>Features<a class="hash-link" href="#features" title="Direct link to heading">#</a></h2><ul><li>Declarative configuration</li><li>Full dynamic capabilities to delivery configurations.</li><li>Native Kubernetes Ingress (both v1 and v1 [...]
 But before you start, please read <a href="/zh/docs/ingress-controller/contribute">How to Contribute</a> and <a href="/zh/docs/ingress-controller/development">How to Develop</a>.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="compatibility-with-apache-apisix"></a>Compatibility with Apache APISIX<a class="hash-link" href="#compatibility-with-apache-apisix" title="Direct link to heading">#</a></h2><p>The following table describes the compatibility between apisix-ingress-cont [...]
 <a href="https://apisix.apache.org" target="_blank" rel="noopener noreferrer">Apache APISIX</a>.</p><table><thead><tr><th align="right">apisix-ingress-controller</th><th align="right">Apache APISIX</th></tr></thead><tbody><tr><td align="right"><code>master</code></td><td align="right"><code>&gt;= 2.4</code>, <code>2.5</code> is recommended.</td></tr><tr><td align="right"><code>0.5</code></td><td align="right"><code>&gt;= 2.4</code>, <code>2.5</code> is recommended.</td></tr><tr><td align [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/practices/index/index.html b/zh/docs/ingress-controller/practices/index/index.html
index e12f6a7..7285d6a 100644
--- a/zh/docs/ingress-controller/practices/index/index.html
+++ b/zh/docs/ingress-controller/practices/index/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Ingress APISIX Use Examples | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/practices/index"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/practices/proxy-the-httpbin-service-with-ingress/index.html b/zh/docs/ingress-controller/practices/proxy-the-httpbin-service-with-ingress/index.html
index 6f3fb9b..68c1c35 100644
--- a/zh/docs/ingress-controller/practices/proxy-the-httpbin-service-with-ingress/index.html
+++ b/zh/docs/ingress-controller/practices/proxy-the-httpbin-service-with-ingress/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Proxy the httpbin service with Ingress | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/practices/proxy-the-httpbin-service-with-ingress"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># Use ingress.networking.k8s.io/v1beta1 if your Kubernetes cluster</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># version is older than v1.19.0.</span><span class= [...]
 Now try to create it.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">kubectl apply -f httpbin-ingress.yaml</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</butto [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/practices/proxy-the-httpbin-service/index.html b/zh/docs/ingress-controller/practices/proxy-the-httpbin-service/index.html
index fb67120..cb81dc4 100644
--- a/zh/docs/ingress-controller/practices/proxy-the-httpbin-service/index.html
+++ b/zh/docs/ingress-controller/practices/proxy-the-httpbin-service/index.html
@@ -15,14 +15,14 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Proxy the httpbin service | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/practices/proxy-the-httpbin-service"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 Now try to create it.</p><div class="codeBlockContainer_K1bP"><div class="codeBlockContent_hGly shell"><div tabindex="0" class="prism-code language-shell codeBlock_23N8 thin-scrollbar"><div class="codeBlockLines_39YC" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">kubectl apply -f httpbin-route.yaml</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button> [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/references/apisix_cluster_config/index.html b/zh/docs/ingress-controller/references/apisix_cluster_config/index.html
new file mode 100644
index 0000000..bf806ce
--- /dev/null
+++ b/zh/docs/ingress-controller/references/apisix_cluster_config/index.html
@@ -0,0 +1,27 @@
+<!doctype html>
+<html lang="zh" dir="ltr">
+<head>
+<meta charset="UTF-8">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+<meta name="generator" content="Docusaurus v2.0.0-alpha.75">
+<meta name="robots" content="noindex, nofollow">
+<link rel="alternate" type="application/rss+xml" href="/zh/blog/rss.xml" title="Apache APISIX™ Blog RSS Feed">
+<link rel="alternate" type="application/atom+xml" href="/zh/blog/atom.xml" title="Apache APISIX™ Blog Atom Feed">
+<link rel="preconnect" href="https://www.google-analytics.com">
+<link rel="preconnect" href="https://www.googletagmanager.com">
+<script async src="https://www.googletagmanager.com/gtag/js?id=G-WQLBQL6GY3"></script>
+<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-WQLBQL6GY3",{})</script>
+<link rel="search" type="application/opensearchdescription+xml" title="Apache APISIX™" href="/zh/opensearch.xml">
+<link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
+<link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixRoute/v2alpha1 Reference | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/references/apisix_cluster_config"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="curre [...]
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
+</head>
+<body>
+<script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
+</body>
+</html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/references/apisix_route_v1/index.html b/zh/docs/ingress-controller/references/apisix_route_v1/index.html
index f9245c2..58bdac3 100644
--- a/zh/docs/ingress-controller/references/apisix_route_v1/index.html
+++ b/zh/docs/ingress-controller/references/apisix_route_v1/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixRoute/v1 (Deprecated) Reference | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/references/apisix_route_v1"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="curr [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/references/apisix_route_v2alpha1/index.html b/zh/docs/ingress-controller/references/apisix_route_v2alpha1/index.html
index e40a644..7974041 100644
--- a/zh/docs/ingress-controller/references/apisix_route_v2alpha1/index.html
+++ b/zh/docs/ingress-controller/references/apisix_route_v2alpha1/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixRoute/v2alpha1 Reference | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/references/apisix_route_v2alpha1"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="curre [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
-<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/references/apisix_tls/index.html b/zh/docs/ingress-controller/references/apisix_tls/index.html
index ec67810..765ff8f 100644
--- a/zh/docs/ingress-controller/references/apisix_tls/index.html
+++ b/zh/docs/ingress-controller/references/apisix_tls/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixTls Reference | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/references/apisix_tls"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta data-react-h [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/docs/ingress-controller/references/apisix_upstream/index.html b/zh/docs/ingress-controller/references/apisix_upstream/index.html
index 94dd956..ff48486 100644
--- a/zh/docs/ingress-controller/references/apisix_upstream/index.html
+++ b/zh/docs/ingress-controller/references/apisix_upstream/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">ApisixUpstream Reference | Apache APISIX™</title><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/docs/ingress-controller/references/apisix_upstream"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:version" content="current"><meta da [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/downloads/ProjectCard/index.html b/zh/downloads/ProjectCard/index.html
index 622b34a..67695e4 100644
--- a/zh/downloads/ProjectCard/index.html
+++ b/zh/downloads/ProjectCard/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true"></title><link rel="stylesheet" href="/zh/assets/css/styles.aef3a109.css">
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div class="ProjectCard__Card-sc-12v8c3p-0 fUOFUE"><div class="ProjectCard__LeftSide-sc-12v8c3p-1 ewHYSJ"><a href="https://github.com/undefined" target="_blank" class="ProjectCard__Title-sc-12v8c3p-2 eXqIcO"><span class="ProjectCard__ShapeBeforeTitle-sc-12v8c3p-4 kjTfns"><svg aria-hidden="true" data-prefix="fas" data-icon="hexagon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="hexagon_svg__svg-inline--fa hexagon_svg__fa-hexagon hexagon_svg__fa-w-18 hexagon_svg__fa-7x">< [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/downloads/index.html b/zh/downloads/index.html
index d9af10a..145035a 100644
--- a/zh/downloads/index.html
+++ b/zh/downloads/index.html
@@ -15,8 +15,8 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Apache APISIX™"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/downloads/"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" content="d [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
@@ -25,7 +25,7 @@
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"># or</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">pgp -ka KEYS</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div><br>To verify the binaries/sources you can download the relevant asc files for it from main distribution directory and follow the below guide.<div class="codeBlockContainer_K [...]
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"># or</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">pgpv apache-apisix-********.asc</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
 </span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"># or</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">pgp apache-apisix-********.asc</span></div></div></div><button type="button" aria-label="Copy code to clipboard" class="copyButton_Ue-o">Copy</button></div></div></div></div></div></div><footer class="footer"><div class="container"><div class="row footer__links"><div class="col footer__col"><h4 class="footer__title"> [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/events/2020/12/23/release-apache-apisix-ingress-controller-0.1.0/index.html b/zh/events/2020/12/23/release-apache-apisix-ingress-controller-0.1.0/index.html
index 194003d..38e7f93 100644
--- a/zh/events/2020/12/23/release-apache-apisix-ingress-controller-0.1.0/index.html
+++ b/zh/events/2020/12/23/release-apache-apisix-ingress-controller-0.1.0/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX Ingress Controller 0.1.0 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX Ingress Controller 0.1.0 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="This release mainly improve basic features, bugfix and adds test cases."><meta  [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/events/2021/01/19/release-apache-apisix-ingress-controller-0.2.0/index.html b/zh/events/2021/01/19/release-apache-apisix-ingress-controller-0.2.0/index.html
index 6622336..4170c4b 100644
--- a/zh/events/2021/01/19/release-apache-apisix-ingress-controller-0.2.0/index.html
+++ b/zh/events/2021/01/19/release-apache-apisix-ingress-controller-0.2.0/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX Ingress Controller 0.2.0 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX Ingress Controller 0.2.0 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="This release mainly improve basic features, bugfix and adds test cases."><meta  [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/events/2021/02/09/release-apache-apisix-2.3/index.html b/zh/events/2021/02/09/release-apache-apisix-2.3/index.html
index bb78e88..fe04783 100644
--- a/zh/events/2021/02/09/release-apache-apisix-2.3/index.html
+++ b/zh/events/2021/02/09/release-apache-apisix-2.3/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX 2.3 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX 2.3 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="Change"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/events/2021/02/09/release [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/events/2021/02/11/release-apache-apisix-ingress-controller-0.3.0/index.html b/zh/events/2021/02/11/release-apache-apisix-ingress-controller-0.3.0/index.html
index 1044a13..3859de2 100644
--- a/zh/events/2021/02/11/release-apache-apisix-ingress-controller-0.3.0/index.html
+++ b/zh/events/2021/02/11/release-apache-apisix-ingress-controller-0.3.0/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX Ingress Controller 0.3.0 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX Ingress Controller 0.3.0 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="This release mainly improves the program robustness and adds some features."><m [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/events/2021/02/12/release-apache-apisix-dashboard-2.4/index.html b/zh/events/2021/02/12/release-apache-apisix-dashboard-2.4/index.html
index 94215a7..e98e4ff 100644
--- a/zh/events/2021/02/12/release-apache-apisix-dashboard-2.4/index.html
+++ b/zh/events/2021/02/12/release-apache-apisix-dashboard-2.4/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX Dashboard 2.4 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX Dashboard 2.4 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="This release mainly improves basic features, bugfix and adds test cases."><meta data-react-helmet="tr [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/events/2021/03/05/release-apache-apisix-2.4/index.html b/zh/events/2021/03/05/release-apache-apisix-2.4/index.html
index 9e07251..e8c8926 100644
--- a/zh/events/2021/03/05/release-apache-apisix-2.4/index.html
+++ b/zh/events/2021/03/05/release-apache-apisix-2.4/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX 2.4 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX 2.4 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="Change"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/events/2021/03/05/release [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/events/2021/03/12/release-apache-apisix-ingress-controller-0.4.0/index.html b/zh/events/2021/03/12/release-apache-apisix-ingress-controller-0.4.0/index.html
index 2931b3a..b4232e3 100644
--- a/zh/events/2021/03/12/release-apache-apisix-ingress-controller-0.4.0/index.html
+++ b/zh/events/2021/03/12/release-apache-apisix-ingress-controller-0.4.0/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX Ingress Controller 0.4.0 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX Ingress Controller 0.4.0 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="This release mainly improves the program robustness and adds some features."><m [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/events/2021/04/05/release-apache-apisix-2.5/index.html b/zh/events/2021/04/05/release-apache-apisix-2.5/index.html
index 041a021..e83db58 100644
--- a/zh/events/2021/04/05/release-apache-apisix-2.5/index.html
+++ b/zh/events/2021/04/05/release-apache-apisix-2.5/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX 2.5 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX 2.5 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="Change"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/events/2021/04/05/release [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/events/2021/04/13/release-apisix-ingress-controller-0.5/index.html b/zh/events/2021/04/13/release-apisix-ingress-controller-0.5/index.html
index ee3c834..0dfb9d2 100644
--- a/zh/events/2021/04/13/release-apisix-ingress-controller-0.5/index.html
+++ b/zh/events/2021/04/13/release-apisix-ingress-controller-0.5/index.html
@@ -15,15 +15,15 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX Ingress Controller 0.5 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX Ingress Controller 0.5 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="A lot of important features are supported in this release, it makes apisix-ingress- [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
 Also, several bugs are fixed so the robustness is also enhanced.</p><p>We recommend you to use <a href="https://github.com/apache/apisix/releases/tag/2.5" target="_blank" rel="noopener noreferrer">Apache APISIX 2.5</a> with this release. Note since CRDs are updated, when
 you upgrade your old release, <strong>manual steps are required to apply the new ApisixRoute</strong>. Please see the instruction <code>7</code> in <a href="https://github.com/apache/apisix-ingress-controller/blob/master/docs/en/latest/FAQ.md" target="_blank" rel="noopener noreferrer">FAQ</a> for more details.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="core"></a>Core<a class="hash-link" href="#core" title="Direct link to heading">#</a></h2><ul><li>Support traffic split [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/events/2021/04/22/release-apache-apisix-dashboard-2.6/index.html b/zh/events/2021/04/22/release-apache-apisix-dashboard-2.6/index.html
index be1a9ee..e1131e4 100644
--- a/zh/events/2021/04/22/release-apache-apisix-dashboard-2.6/index.html
+++ b/zh/events/2021/04/22/release-apache-apisix-dashboard-2.6/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Release Apache APISIX Dashboard 2.6 | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Release Apache APISIX Dashboard 2.6 | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="This release mainly improves UI and UE, bugfix and adds test cases."><meta data-react-helmet="true" p [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/events/index.html b/zh/events/index.html
index 2d574c3..e4a8d8f 100644
--- a/zh/events/index.html
+++ b/zh/events/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Blog | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Blog | Apache APISIX™"><meta data-react-helmet="true" property="og:description" content="Blog"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/events"><meta data-react-helmet="true" name="docsearch:language" cont [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/help/index.html b/zh/help/index.html
index b003b84..46a850d 100644
--- a/zh/help/index.html
+++ b/zh/help/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Apache APISIX™"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/help"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" content="default [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/index.html b/zh/index.html
index 83f9c05..a12c45c 100644
--- a/zh/index.html
+++ b/zh/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Apache APISIX™"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" content="default"><m [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div id="docusaurus-base-url-issue-banner-container"></div><div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-l [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/search/index.html b/zh/search/index.html
index 410087a..82a49d6 100644
--- a/zh/search/index.html
+++ b/zh/search/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Search the documentation | Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Apache APISIX™"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/search"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:doc [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file
diff --git a/zh/sitemap.xml b/zh/sitemap.xml
index c36be07..c538ba0 100644
--- a/zh/sitemap.xml
+++ b/zh/sitemap.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://apisix.apache.org/zh/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://apisix.apache.org/zh/blog</loc><changefreq> [...]
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://apisix.apache.org/zh/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://apisix.apache.org/zh/blog</loc><changefreq> [...]
\ No newline at end of file
diff --git a/zh/team/index.html b/zh/team/index.html
index 7b7a904..4f2a08a 100644
--- a/zh/team/index.html
+++ b/zh/team/index.html
@@ -15,13 +15,13 @@
 <link rel="alternate" type="application/rss+xml" href="/zh/events/rss.xml" title="Apache APISIX™ Blog RSS Feed">
 <link rel="alternate" type="application/atom+xml" href="/zh/events/atom.xml" title="Apache APISIX™ Blog Atom Feed">
 <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap"><title data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true" property="og:title" content="Apache APISIX™"><meta data-react-helmet="true" property="og:url" content="https://apisix.apache.org//zh/team"><meta data-react-helmet="true" name="docsearch:language" content="zh"><meta data-react-helmet="true" name="docsearch:docusaurus_tag" content="default [...]
-<link rel="preload" href="/zh/assets/js/runtime~main.0393718b.js" as="script">
-<link rel="preload" href="/zh/assets/js/main.6d9ac8a0.js" as="script">
+<link rel="preload" href="/zh/assets/js/runtime~main.b3b84ca9.js" as="script">
+<link rel="preload" href="/zh/assets/js/main.c4271929.js" as="script">
 </head>
 <body>
 <script>!function(){function e(e){document.documentElement.setAttribute("data-theme",e)}var t=function(){var e=null;try{e=localStorage.getItem("theme")}catch(e){}return e}();null!==t?e(t):window.matchMedia("(prefers-color-scheme: dark)").matches?e("dark"):(window.matchMedia("(prefers-color-scheme: light)").matches,e("light"))}()</script><div id="__docusaurus">
 <div><a href="#main" class="skipToContent_1oUP">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_2qcr"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Navigation bar toggle" class="navbar__toggle" type="button" tabindex="0"><svg aria-label="Menu" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M [...]
-<script src="/zh/assets/js/runtime~main.0393718b.js"></script>
-<script src="/zh/assets/js/main.6d9ac8a0.js"></script>
+<script src="/zh/assets/js/runtime~main.b3b84ca9.js"></script>
+<script src="/zh/assets/js/main.c4271929.js"></script>
 </body>
 </html>
\ No newline at end of file