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 cef3ac5 deploy: c7ae673f2eb7c900d9649b24ba81fa202adbf2e5
cef3ac5 is described below
commit cef3ac557806534f51cfb15fda6cb3a3664f120d
Author: juzhiyuan <[email protected]>
AuthorDate: Thu Feb 11 01:07:56 2021 +0000
deploy: c7ae673f2eb7c900d9649b24ba81fa202adbf2e5
---
0b71e11c.b68c5759.js => 0b71e11c.f6dd04c0.js | 2 +-
1.9e8c86b4.js => 1.a1564f8b.js | 2 +-
17896441.9f252253.js | 1 -
17896441.bac97d2f.js | 1 +
2.892914c0.js | 2 +
...faa.js.LICENSE.txt => 2.892914c0.js.LICENSE.txt | 0
2.91f7bfaa.js | 2 -
2275ea3b.5b120176.js | 1 -
2275ea3b.f959387e.js | 1 +
2da51850.00e4a4dc.js | 1 +
2da51850.7ff8096e.js | 1 -
2fa/index.html | 44 ++++++++++----------
3.0032298d.js => 3.325ebf1a.js | 2 +-
33.3f2d3a98.js | 2 +
33.3f2d3a98.js.LICENSE.txt | 1 +
33.f5924c25.js | 2 -
33.f5924c25.js.LICENSE.txt | 1 -
34.31d2f561.js => 34.b98ad9fa.js | 2 +-
35.6be2697e.js | 1 +
35.ea71bb75.js | 1 -
36.b72da796.js => 36.bd5a10c5.js | 2 +-
37.fd446a3e.js => 37.b77cb21b.js | 2 +-
38.7c719d44.js | 1 +
404.html | 36 ++++++++--------
638581dc.18fae70d.js => 638581dc.09df1f93.js | 2 +-
7e37206e.2ef90a44.js | 1 -
7e37206e.53d84f01.js | 1 +
812d7c14.b913dfdb.js | 1 +
812d7c14.f86dde69.js | 1 -
935f2afb.cf4d5fdd.js | 1 -
935f2afb.fbf3a007.js | 1 +
a4a2cefa.1c9bfc96.js => a4a2cefa.0476efd7.js | 2 +-
a6641250.f9de2796.js => a6641250.245eabe0.js | 2 +-
a6aa9e1f.4f5f955a.js => a6aa9e1f.9ef0213b.js | 2 +-
b2b675dd.a0165438.js => b2b675dd.46f53b3f.js | 2 +-
blog/2020/08/22/new-website/index.html | 36 ++++++++--------
.../index.html | 32 +++++++-------
.../index.html | 36 ++++++++--------
.../21/run-ingress-apisix-on-amazon-eks/index.html | 32 +++++++-------
.../index.html | 32 +++++++-------
blog/index.html | 44 ++++++++++----------
c4f5d8e4.7fc67a7e.js | 1 -
c4f5d8e4.88de71ad.js | 1 +
ccc49370.d859b673.js => ccc49370.45b5b4a2.js | 2 +-
committer-guide/index.html | 44 ++++++++++----------
contributor-guide/index.html | 44 ++++++++++----------
dcd70f61.0eb1889a.js | 1 +
dcd70f61.d8f8021d.js | 1 -
docs/index.html | 37 -----------------
downloads/index.html | 46 ++++++++++-----------
e02da2c5.49e99beb.js => e02da2c5.0d169e01.js | 2 +-
e451ae2c.20483296.js => e451ae2c.7ebc9180.js | 2 +-
f9e23376.697b3b0d.js | 1 +
f9e23376.d935c812.js | 1 -
fdbbc319.d845d8ee.js | 1 -
fdbbc319.ed2c4b48.js | 1 +
help/index.html | 28 ++++++-------
img/community.png | Bin 0 -> 2413 bytes
img/documents.png | Bin 0 -> 1420 bytes
index.html | 30 +++++++-------
main.1897b94e.js | 2 -
main.8245d14c.js | 2 +
....js.LICENSE.txt => main.8245d14c.js.LICENSE.txt | 0
release-guide/index.html | 46 ++++++++++-----------
runtime~main.2f7025f0.js | 1 +
runtime~main.73e8fd9d.js | 1 -
search/index.html | 28 ++++++-------
security/index.html | 44 ++++++++++----------
sitemap.xml | 2 +-
styles.432c35c7.css | 1 +
styles.96e1c279.css | 1 -
styles.3bb3f4a0.js => styles.af9d7c7e.js | 2 +-
subscribe-guide/index.html | 37 +++++++++++++++++
team/index.html | 44 ++++++++++----------
users/index.html | 24 +++++------
75 files changed, 410 insertions(+), 407 deletions(-)
diff --git a/0b71e11c.b68c5759.js b/0b71e11c.f6dd04c0.js
similarity index 56%
rename from 0b71e11c.b68c5759.js
rename to 0b71e11c.f6dd04c0.js
index 1f676db..27ff10e 100644
--- a/0b71e11c.b68c5759.js
+++ b/0b71e11c.f6dd04c0.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[4],{106:function(e,t,n){"use
strict";n.d(t,"a",(function(){return p})),n.d(t,"b",(function(){return
f}));var r=n(0),o=n.n(r);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}))) [...]
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[4],{106:function(e,t,n){"use
strict";n.d(t,"a",(function(){return p})),n.d(t,"b",(function(){return
f}));var r=n(0),o=n.n(r);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}))) [...]
\ No newline at end of file
diff --git a/1.9e8c86b4.js b/1.a1564f8b.js
similarity index 88%
rename from 1.9e8c86b4.js
rename to 1.a1564f8b.js
index 152aef9..571f17e 100644
--- a/1.9e8c86b4.js
+++ b/1.a1564f8b.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{107:function(e,t,n){"use
strict";Object.defineProperty(t,"__esModule",{value:!0});var
r=n(131);Object.defineProperty(t,"useThemeConfig",{enumerable:!0,get:function(){return
r.useThemeConfig}});var
o=n(153);Object.defineProperty(t,"docVersionSearchTag",{enumerable:!0,get:function(){return
o.docVersionSearchTag}}),Object.defineProperty(t,"DEFAULT_SEARCH_TAG",{enumerable:!0,get:function(){return
o.DEFAULT_SEARCH_TAG}});var i=n(132);Ob [...]
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{107:function(e,t,n){"use
strict";Object.defineProperty(t,"__esModule",{value:!0});var
r=n(130);Object.defineProperty(t,"useThemeConfig",{enumerable:!0,get:function(){return
r.useThemeConfig}});var
o=n(154);Object.defineProperty(t,"docVersionSearchTag",{enumerable:!0,get:function(){return
o.docVersionSearchTag}}),Object.defineProperty(t,"DEFAULT_SEARCH_TAG",{enumerable:!0,get:function(){return
o.DEFAULT_SEARCH_TAG}});var i=n(131);Ob [...]
\ No newline at end of file
diff --git a/17896441.9f252253.js b/17896441.9f252253.js
deleted file mode 100644
index 181d605..0000000
--- a/17896441.9f252253.js
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{100:function(e,t,a){"use
strict";a.r(t);var
n=a(0),l=a.n(n),r=a(24),c=a(107),i=a(22),o=a(111),m=a(109);var
s=function(e){var t=e.metadata;return
l.a.createElement("nav",{className:"pagination-nav","aria-label":"Blog list
page
navigation"},l.a.createElement("div",{className:"pagination-nav__item"},t.previous&&l.a.createElement(m.a,{className:"pagination-nav__link",to:t.previous.permalink},l.a.createElement("div",{className:"paginati
[...]
\ No newline at end of file
diff --git a/17896441.bac97d2f.js b/17896441.bac97d2f.js
new file mode 100644
index 0000000..d010b51
--- /dev/null
+++ b/17896441.bac97d2f.js
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{121:function(e,t,a){"use
strict";var
n=a(3),l=a(7),r=a(0),c=a.n(r),i=a(108),o=a(56),m=a.n(o);t.a=function(e){var
t=e.className,a=Object(l.a)(e,["className"]);return
c.a.createElement("svg",Object(n.a)({fill:"currentColor",height:"1.2em",width:"1.2em",preserveAspectRatio:"xMidYMid
meet",role:"img",viewBox:"0 0 40
40",className:Object(i.a)(m.a.iconEdit,t)},a),c.a.createElement("g",null,c.a.createElement("path",{d:"m34.5
11.7l-3 3.1-6 [...]
\ No newline at end of file
diff --git a/2.892914c0.js b/2.892914c0.js
new file mode 100644
index 0000000..aa2fbd3
--- /dev/null
+++ b/2.892914c0.js
@@ -0,0 +1,2 @@
+/*! For license information please see 2.892914c0.js.LICENSE.txt */
+(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{112:function(e,t,a){"use
strict";var n=a(0),r=a.n(n),c=a(108),o=a(62),l=a.n(o);var i=function(){return
r.a.createElement("nav",{"aria-label":"Skip navigation
links"},r.a.createElement("button",{type:"button",tabIndex:0,className:l.a.skipToContent,onKeyDown:function(e){if(13===e.keyCode){document.activeElement.blur();var
t=document.querySelector("main:first-of-type");t&&t.scrollIntoView()}}},"Skip
to main content"))},s=a(107),u=a(13 [...]
\ No newline at end of file
diff --git a/2.91f7bfaa.js.LICENSE.txt b/2.892914c0.js.LICENSE.txt
similarity index 100%
rename from 2.91f7bfaa.js.LICENSE.txt
rename to 2.892914c0.js.LICENSE.txt
diff --git a/2.91f7bfaa.js b/2.91f7bfaa.js
deleted file mode 100644
index 7bf8736..0000000
--- a/2.91f7bfaa.js
+++ /dev/null
@@ -1,2 +0,0 @@
-/*! For license information please see 2.91f7bfaa.js.LICENSE.txt */
-(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{112:function(e,t,a){"use
strict";var n=a(0),r=a.n(n),c=a(108),o=a(62),l=a.n(o);var i=function(){return
r.a.createElement("nav",{"aria-label":"Skip navigation
links"},r.a.createElement("button",{type:"button",tabIndex:0,className:l.a.skipToContent,onKeyDown:function(e){if(13===e.keyCode){document.activeElement.blur();var
t=document.querySelector("main:first-of-type");t&&t.scrollIntoView()}}},"Skip
to main content"))},s=a(107),u=a(13 [...]
\ No newline at end of file
diff --git a/2275ea3b.5b120176.js b/2275ea3b.5b120176.js
deleted file mode 100644
index eacd785..0000000
--- a/2275ea3b.5b120176.js
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[8],{106:function(t,e,a){"use
strict";a.d(e,"a",(function(){return p})),a.d(e,"b",(function(){return
h}));var r=a(0),n=a.n(r);function b(t,e,a){return e in
t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function
i(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var
r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return
Object.getOwnPropertyDescriptor(t,e).enumerable}))) [...]
\ No newline at end of file
diff --git a/2275ea3b.f959387e.js b/2275ea3b.f959387e.js
new file mode 100644
index 0000000..a31bea9
--- /dev/null
+++ b/2275ea3b.f959387e.js
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[8],{106:function(t,e,a){"use
strict";a.d(e,"a",(function(){return p})),a.d(e,"b",(function(){return
h}));var r=a(0),n=a.n(r);function b(t,e,a){return e in
t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function
i(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var
r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return
Object.getOwnPropertyDescriptor(t,e).enumerable}))) [...]
\ No newline at end of file
diff --git a/2da51850.00e4a4dc.js b/2da51850.00e4a4dc.js
new file mode 100644
index 0000000..06ed9a6
--- /dev/null
+++ b/2da51850.00e4a4dc.js
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[10],{106:function(e,t,r){"use
strict";r.d(t,"a",(function(){return p})),r.d(t,"b",(function(){return
d}));var n=r(0),i=r.n(n);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
o(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})) [...]
\ No newline at end of file
diff --git a/2da51850.7ff8096e.js b/2da51850.7ff8096e.js
deleted file mode 100644
index 820d60a..0000000
--- a/2da51850.7ff8096e.js
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[10],{106:function(e,t,r){"use
strict";r.d(t,"a",(function(){return u})),r.d(t,"b",(function(){return
d}));var n=r(0),i=r.n(n);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
o(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})) [...]
\ No newline at end of file
diff --git a/2fa/index.html b/2fa/index.html
index f3dec05..079ed22 100644
--- a/2fa/index.html
+++ b/2fa/index.html
@@ -8,30 +8,30 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">2FA | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property="og:title" co [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/34.31d2f561.js" as="script">
-<link rel="preload" href="/37.fd446a3e.js" as="script">
-<link rel="preload" href="/935f2afb.cf4d5fdd.js" as="script">
-<link rel="preload" href="/17896441.9f252253.js" as="script">
-<link rel="preload" href="/0b71e11c.b68c5759.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">2FA | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property="og:title" co [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/34.b98ad9fa.js" as="script">
+<link rel="preload" href="/37.b77cb21b.js" as="script">
+<link rel="preload" href="/935f2afb.fbf3a007.js" as="script">
+<link rel="preload" href="/17896441.bac97d2f.js" as="script">
+<link rel="preload" href="/0b71e11c.f6dd04c0.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/34.31d2f561.js"></script>
-<script src="/37.fd446a3e.js"></script>
-<script src="/935f2afb.cf4d5fdd.js"></script>
-<script src="/17896441.9f252253.js"></script>
-<script src="/0b71e11c.b68c5759.js"></script>
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/34.b98ad9fa.js"></script>
+<script src="/37.b77cb21b.js"></script>
+<script src="/935f2afb.fbf3a007.js"></script>
+<script src="/17896441.bac97d2f.js"></script>
+<script src="/0b71e11c.f6dd04c0.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/3.0032298d.js b/3.325ebf1a.js
similarity index 95%
rename from 3.0032298d.js
rename to 3.325ebf1a.js
index 6d032cd..1eabc5b 100644
--- a/3.0032298d.js
+++ b/3.325ebf1a.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[3],{106:function(e,t,a){"use
strict";a.d(t,"a",(function(){return m})),a.d(t,"b",(function(){return
d}));var n=a(0),r=a.n(n);function o(e,t,a){return t in
e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function
l(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}))) [...]
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[3],{106:function(e,t,a){"use
strict";a.d(t,"a",(function(){return m})),a.d(t,"b",(function(){return
d}));var n=a(0),r=a.n(n);function o(e,t,a){return t in
e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function
l(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}))) [...]
\ No newline at end of file
diff --git a/33.3f2d3a98.js b/33.3f2d3a98.js
new file mode 100644
index 0000000..20e3a00
--- /dev/null
+++ b/33.3f2d3a98.js
@@ -0,0 +1,2 @@
+/*! For license information please see 33.3f2d3a98.js.LICENSE.txt */
+(window.webpackJsonp=window.webpackJsonp||[]).push([[33],{119:function(e,t,n){"use
strict";e.exports=function(e,t){if(Array.isArray(e))for(var
n=0;n<e.length;n++)if(t(e[n]))return e[n]}},124:function(e,t,n){"use
strict";function r(e){return"function"==typeof e||Array.isArray(e)||"[object
Object]"===Object.prototype.toString.call(e)}function i(e,t){if(e===t)return
e;for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n)){var
a=t[n],s=e[n];void 0!==s&&void 0===a||(r(s)&&r(a)?e[n]=i(s, [...]
\ No newline at end of file
diff --git a/33.3f2d3a98.js.LICENSE.txt b/33.3f2d3a98.js.LICENSE.txt
new file mode 100644
index 0000000..0d29e78
--- /dev/null
+++ b/33.3f2d3a98.js.LICENSE.txt
@@ -0,0 +1 @@
+/*! algoliasearch-lite.umd.js | 4.8.4 | © Algolia, inc. |
https://github.com/algolia/algoliasearch-client-javascript */
diff --git a/33.f5924c25.js b/33.f5924c25.js
deleted file mode 100644
index b2b4d1f..0000000
--- a/33.f5924c25.js
+++ /dev/null
@@ -1,2 +0,0 @@
-/*! For license information please see 33.f5924c25.js.LICENSE.txt */
-(window.webpackJsonp=window.webpackJsonp||[]).push([[33],{119:function(e,t,n){"use
strict";function r(e){return"function"==typeof e||Array.isArray(e)||"[object
Object]"===Object.prototype.toString.call(e)}function i(e,t){if(e===t)return
e;for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n)){var
a=t[n],s=e[n];void 0!==s&&void
0===a||(r(s)&&r(a)?e[n]=i(s,a):e[n]="object"==typeof(c=a)&&null!==c?i(Array.isArray(c)?[]:{},c):c)}var
c;return e}e.exports=function(e){r(e)||(e={});for(var [...]
\ No newline at end of file
diff --git a/33.f5924c25.js.LICENSE.txt b/33.f5924c25.js.LICENSE.txt
deleted file mode 100644
index bc293e8..0000000
--- a/33.f5924c25.js.LICENSE.txt
+++ /dev/null
@@ -1 +0,0 @@
-/*! algoliasearch-lite.umd.js | 4.8.5 | © Algolia, inc. |
https://github.com/algolia/algoliasearch-client-javascript */
diff --git a/34.31d2f561.js b/34.b98ad9fa.js
similarity index 96%
rename from 34.31d2f561.js
rename to 34.b98ad9fa.js
index 8dd5b33..13dffec 100644
--- a/34.31d2f561.js
+++ b/34.b98ad9fa.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[34,37],{101:function(e,t,n){"use
strict";n.r(t);var
a=n(0),r=n.n(a),o=n(106),c=n(22),l=n(26),i=n(112),s=n(3),u=n(7),p=n(108),m=n(107),d=n(134),b=n(140),f=n(141),y=n(139),h=n(109),g=n(117),v=n(152),j=function(e){return
r.a.createElement("svg",Object(s.a)({width:"20",height:"20",role:"img"},e),r.a.createElement("g",{fill:"#7a7a7a"},r.a.createElement("path",{d:"M9.992
10.023c0 .2-.062.399-.172.547l-4.996 7.492a.982.982 0 01-.828.454H1c-.5 [...]
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[34,37],{100:function(e,t,n){"use
strict";n.r(t);var
a=n(0),r=n.n(a),o=n(106),c=n(22),l=n(26),i=n(112),s=n(3),u=n(7),p=n(108),m=n(107),d=n(133),b=n(139),f=n(140),y=n(138),h=n(109),g=n(117),v=n(152),j=function(e){return
r.a.createElement("svg",Object(s.a)({width:"20",height:"20",role:"img"},e),r.a.createElement("g",{fill:"#7a7a7a"},r.a.createElement("path",{d:"M9.992
10.023c0 .2-.062.399-.172.547l-4.996 7.492a.982.982 0 01-.828.454H1c-.5 [...]
\ No newline at end of file
diff --git a/35.6be2697e.js b/35.6be2697e.js
new file mode 100644
index 0000000..76edb3c
--- /dev/null
+++ b/35.6be2697e.js
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[35],{190:function(e,t,r){"use
strict";function n(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)}return
r}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,r){var a=t.initialState;return{getState:func [...]
\ No newline at end of file
diff --git a/35.ea71bb75.js b/35.ea71bb75.js
deleted file mode 100644
index eea974f..0000000
--- a/35.ea71bb75.js
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[35],{188:function(e,t,r){"use
strict";function n(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)}return
r}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,r){var a=t.initialState;return{getState:func [...]
\ No newline at end of file
diff --git a/36.b72da796.js b/36.bd5a10c5.js
similarity index 62%
rename from 36.b72da796.js
rename to 36.bd5a10c5.js
index 319b6d2..ab330f9 100644
--- a/36.b72da796.js
+++ b/36.bd5a10c5.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[36],{187:function(n,i,o){"use
strict";o.r(i);var r=o(61);for(var t in
r)["default"].indexOf(t)<0&&function(n){o.d(i,n,(function(){return
r[n]}))}(t)}}]);
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[36],{189:function(n,i,o){"use
strict";o.r(i);var r=o(61);for(var t in
r)["default"].indexOf(t)<0&&function(n){o.d(i,n,(function(){return
r[n]}))}(t)}}]);
\ No newline at end of file
diff --git a/37.fd446a3e.js b/37.b77cb21b.js
similarity index 86%
rename from 37.fd446a3e.js
rename to 37.b77cb21b.js
index fdcda08..86c77a9 100644
--- a/37.fd446a3e.js
+++ b/37.b77cb21b.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[37],{130:function(e,t,a){"use
strict";a.r(t);var n=a(0),o=a.n(n),l=a(112);t.default=function(){return
o.a.createElement(l.a,{title:"Page Not
Found"},o.a.createElement("main",{className:"container
margin-vert--xl"},o.a.createElement("div",{className:"row"},o.a.createElement("div",{className:"col
col--6 col--offset-3"},o.a.createElement("h1",{className:"hero__title"},"Page
Not Found"),o.a.createElement("p",null,"We could not find what yo [...]
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[37],{129:function(e,t,a){"use
strict";a.r(t);var n=a(0),o=a.n(n),l=a(112);t.default=function(){return
o.a.createElement(l.a,{title:"Page Not
Found"},o.a.createElement("main",{className:"container
margin-vert--xl"},o.a.createElement("div",{className:"row"},o.a.createElement("div",{className:"col
col--6 col--offset-3"},o.a.createElement("h1",{className:"hero__title"},"Page
Not Found"),o.a.createElement("p",null,"We could not find what yo [...]
\ No newline at end of file
diff --git a/38.7c719d44.js b/38.7c719d44.js
new file mode 100644
index 0000000..68173ce
--- /dev/null
+++ b/38.7c719d44.js
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[38],{191:function(t,e,n){"use
strict";var s=n(3),a=n(7),i=n(4);n(1);function o(t,e){return t.replace(new
RegExp("(^|\\s)"+e+"(?:\\s|$)","g"),"$1").replace(/\s+/g,"
").replace(/^\s*|\s*$/g,"")}var
r=n(0),p=n.n(r),l=n(25),u=n.n(l),c=!1,d=p.a.createContext(null),E="unmounted",f="exited",h="entering",x="entered",m="exiting",v=function(t){function
e(e,n){var s;s=t.call(this,e,n)||this;var
a,i=n&&!n.isMounting?e.enter:e.appear;return s.appea [...]
\ No newline at end of file
diff --git a/404.html b/404.html
index cfc7417..5bcdd20 100644
--- a/404.html
+++ b/404.html
@@ -8,26 +8,26 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><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" name="twitter:card"
content="summary_large_image"><meta data-react-helmet="true"
name="docsearch:language" content="en"><meta data-react-helmet="true"
name="docsearch:docusaurus_tag" content="default"><link
data-react-helmet="true" rel=" [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/34.31d2f561.js" as="script">
-<link rel="preload" href="/37.fd446a3e.js" as="script">
-<link rel="preload" href="/935f2afb.cf4d5fdd.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><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" name="twitter:card"
content="summary_large_image"><meta data-react-helmet="true"
name="docsearch:language" content="en"><meta data-react-helmet="true"
name="docsearch:docusaurus_tag" content="default"><link
data-react-helmet="true" rel=" [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/34.b98ad9fa.js" as="script">
+<link rel="preload" href="/37.b77cb21b.js" as="script">
+<link rel="preload" href="/935f2afb.fbf3a007.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/34.31d2f561.js"></script>
-<script src="/37.fd446a3e.js"></script>
-<script src="/935f2afb.cf4d5fdd.js"></script>
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/34.b98ad9fa.js"></script>
+<script src="/37.b77cb21b.js"></script>
+<script src="/935f2afb.fbf3a007.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/638581dc.18fae70d.js b/638581dc.09df1f93.js
similarity index 96%
rename from 638581dc.18fae70d.js
rename to 638581dc.09df1f93.js
index 393d301..7cc594b 100644
--- a/638581dc.18fae70d.js
+++ b/638581dc.09df1f93.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[15],{106:function(e,t,r){"use
strict";r.d(t,"a",(function(){return l})),r.d(t,"b",(function(){return
f}));var n=r(0),a=r.n(n);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
o(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})) [...]
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[15],{106:function(e,t,r){"use
strict";r.d(t,"a",(function(){return l})),r.d(t,"b",(function(){return
f}));var n=r(0),a=r.n(n);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
o(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})) [...]
\ No newline at end of file
diff --git a/7e37206e.2ef90a44.js b/7e37206e.2ef90a44.js
deleted file mode 100644
index 8acce25..0000000
--- a/7e37206e.2ef90a44.js
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[17],{85:function(e,t,a){"use
strict";a.r(t);var l=a(112),n=a(0);function c(e){var
t=e.config;e.language,t.baseUrl,t.docsUrl;return
n.createElement("div",{className:"container"},n.createElement("div",{className:"row"},n.createElement("div",{className:"post-header"},n.createElement("h1",null,"Need
help?"))),n.createElement("div",{className:"row"},"This project is maintained
by a dedicated group of people."),n.createElement("div",{classNa [...]
\ No newline at end of file
diff --git a/7e37206e.53d84f01.js b/7e37206e.53d84f01.js
new file mode 100644
index 0000000..0ce0cc8
--- /dev/null
+++ b/7e37206e.53d84f01.js
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[17],{101:function(e,t,a){"use
strict";a.r(t);var r=a(112),n=a(0);function
l(){return(l=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var
a=arguments[t];for(var r in
a)Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r])}return
e}).apply(this,arguments)}function c(e,t){if(null==e)return{};var
a,r,n=function(e,t){if(null==e)return{};var
a,r,n={},l=Object.keys(e);for(r=0;r<l.length;r++)a=l[r],t.indexOf(a)>=0||(n[a]=e[a]
[...]
\ No newline at end of file
diff --git a/812d7c14.b913dfdb.js b/812d7c14.b913dfdb.js
new file mode 100644
index 0000000..b7d9b9a
--- /dev/null
+++ b/812d7c14.b913dfdb.js
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[18],{106:function(e,a,t){"use
strict";t.d(a,"a",(function(){return d})),t.d(a,"b",(function(){return
u}));var n=t(0),r=t.n(n);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
s(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})) [...]
\ No newline at end of file
diff --git a/812d7c14.f86dde69.js b/812d7c14.f86dde69.js
deleted file mode 100644
index 49b66f6..0000000
--- a/812d7c14.f86dde69.js
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[18],{106:function(e,a,t){"use
strict";t.d(a,"a",(function(){return d})),t.d(a,"b",(function(){return
u}));var n=t(0),r=t.n(n);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
s(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})) [...]
\ No newline at end of file
diff --git a/935f2afb.cf4d5fdd.js b/935f2afb.cf4d5fdd.js
deleted file mode 100644
index dc1f1da..0000000
--- a/935f2afb.cf4d5fdd.js
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[19],{87:function(e){e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","isLast":true,"docsSidebars":{"docs":[{"collapsed":true,"type":"category","label":"Get
Involved","items":[{"type":"link","label":"Security","href":"/security"},{"type":"link","label":"Subscribe
Guide","href":"/docs"},{"type":"link","label":"Contributor
Guide","href":"/contributor-guide"},{"type":"link","label":"Committer
Guide","href":"/c [...]
\ No newline at end of file
diff --git a/935f2afb.fbf3a007.js b/935f2afb.fbf3a007.js
new file mode 100644
index 0000000..2d8f149
--- /dev/null
+++ b/935f2afb.fbf3a007.js
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[19],{86:function(e){e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","isLast":true,"docsSidebars":{"docs":[{"collapsed":true,"type":"category","label":"Get
Involved","items":[{"type":"link","label":"Security","href":"/security"},{"type":"link","label":"Subscribe
Guide","href":"/subscribe-guide"},{"type":"link","label":"Contributor
Guide","href":"/contributor-guide"},{"type":"link","label":"Committer Guide"
[...]
\ No newline at end of file
diff --git a/a4a2cefa.1c9bfc96.js b/a4a2cefa.0476efd7.js
similarity index 99%
rename from a4a2cefa.1c9bfc96.js
rename to a4a2cefa.0476efd7.js
index 50f7de3..bdae83f 100644
--- a/a4a2cefa.1c9bfc96.js
+++ b/a4a2cefa.0476efd7.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[20],{106:function(e,t,r){"use
strict";r.d(t,"a",(function(){return u})),r.d(t,"b",(function(){return
m}));var n=r(0),a=r.n(n);function b(e,t,r){return t in
e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function
l(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})) [...]
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[20],{106:function(e,t,r){"use
strict";r.d(t,"a",(function(){return u})),r.d(t,"b",(function(){return
m}));var n=r(0),a=r.n(n);function b(e,t,r){return t in
e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function
l(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})) [...]
\ No newline at end of file
diff --git a/a6641250.f9de2796.js b/a6641250.245eabe0.js
similarity index 97%
rename from a6641250.f9de2796.js
rename to a6641250.245eabe0.js
index 495261f..4e9b4ad 100644
--- a/a6641250.f9de2796.js
+++ b/a6641250.245eabe0.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[21],{106:function(e,t,r){"use
strict";r.d(t,"a",(function(){return f})),r.d(t,"b",(function(){return
m}));var n=r(0),o=r.n(n);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
c(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})) [...]
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[21],{106:function(e,t,r){"use
strict";r.d(t,"a",(function(){return f})),r.d(t,"b",(function(){return
m}));var n=r(0),o=r.n(n);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
c(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})) [...]
\ No newline at end of file
diff --git a/a6aa9e1f.4f5f955a.js b/a6aa9e1f.9ef0213b.js
similarity index 89%
rename from a6aa9e1f.4f5f955a.js
rename to a6aa9e1f.9ef0213b.js
index a80c083..639d298 100644
--- a/a6aa9e1f.4f5f955a.js
+++ b/a6aa9e1f.9ef0213b.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[22],{102:function(a,e,t){"use
strict";t.r(e);var n=t(0),i=t.n(n),l=t(22),r=t(112),c=t(143),m=t(109);var
s=function(a){var e=a.metadata,t=e.previousPage,n=e.nextPage;return
i.a.createElement("nav",{className:"pagination-nav","aria-label":"Blog list
page
navigation"},i.a.createElement("div",{className:"pagination-nav__item"},t&&i.a.createElement(m.a,{className:"pagination-nav__link",to:t},i.a.createElement("div",{className:"pagination-na
[...]
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[22],{102:function(a,e,t){"use
strict";t.r(e);var n=t(0),i=t.n(n),l=t(22),r=t(112),c=t(142),m=t(109);var
s=function(a){var e=a.metadata,t=e.previousPage,n=e.nextPage;return
i.a.createElement("nav",{className:"pagination-nav","aria-label":"Blog list
page
navigation"},i.a.createElement("div",{className:"pagination-nav__item"},t&&i.a.createElement(m.a,{className:"pagination-nav__link",to:t},i.a.createElement("div",{className:"pagination-na
[...]
\ No newline at end of file
diff --git a/b2b675dd.a0165438.js b/b2b675dd.46f53b3f.js
similarity index 73%
rename from b2b675dd.a0165438.js
rename to b2b675dd.46f53b3f.js
index 6075a89..5b34657 100644
--- a/b2b675dd.a0165438.js
+++ b/b2b675dd.46f53b3f.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[23],{92:function(o){o.exports=JSON.parse('{"permalink":"/blog","page":1,"postsPerPage":10,"totalPages":1,"totalCount":5,"previousPage":null,"nextPage":null,"blogDescription":"Blog","blogTitle":"Blog"}')}}]);
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[23],{91:function(o){o.exports=JSON.parse('{"permalink":"/blog","page":1,"postsPerPage":10,"totalPages":1,"totalCount":5,"previousPage":null,"nextPage":null,"blogDescription":"Blog","blogTitle":"Blog"}')}}]);
\ 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 f00a309..cd77d78 100644
--- a/blog/2020/08/22/new-website/index.html
+++ b/blog/2020/08/22/new-website/index.html
@@ -8,28 +8,28 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><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"
name="description" content="We are just refactored out website for Apache
APISIX by using docusaurus."><meta data-react-helmet="true"
property="og:description" content="We are just refactored out website for [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/3.0032298d.js" as="script">
-<link rel="preload" href="/ccc49370.d859b673.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><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"
name="description" content="We are just refactored out website for Apache
APISIX by using docusaurus."><meta data-react-helmet="true"
property="og:description" content="We are just refactored out website for [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/3.325ebf1a.js" as="script">
+<link rel="preload" href="/ccc49370.45b5b4a2.js" as="script">
<link rel="preload" href="/2d8fe9ee.93b6439b.js" as="script">
-<link rel="preload" href="/a6641250.f9de2796.js" as="script">
+<link rel="preload" href="/a6641250.245eabe0.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/3.0032298d.js"></script>
-<script src="/ccc49370.d859b673.js"></script>
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/3.325ebf1a.js"></script>
+<script src="/ccc49370.45b5b4a2.js"></script>
<script src="/2d8fe9ee.93b6439b.js"></script>
-<script src="/a6641250.f9de2796.js"></script>
+<script src="/a6641250.245eabe0.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 eca4c16..9c1e99a 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
@@ -8,29 +8,29 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><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"
name="description" content="@nic-chen, Apache APISIX PMC from Shenzhen Zhiliu
Technology Co."><meta data-react-helmet="true" property [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/3.0032298d.js" as="script">
-<link rel="preload" href="/ccc49370.d859b673.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><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"
name="description" content="@nic-chen, Apache APISIX PMC from Shenzhen Zhiliu
Technology Co."><meta data-react-helmet="true" property [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/3.325ebf1a.js" as="script">
+<link rel="preload" href="/ccc49370.45b5b4a2.js" as="script">
<link rel="preload" href="/2d8fe9ee.93b6439b.js" as="script">
<link rel="preload" href="/749ed826.1f01f50a.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-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 enhancedAnchor_prK2"
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's custom requirements. In this
[...]
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 enhancedAnchor_prK2"
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> [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/3.0032298d.js"></script>
-<script src="/ccc49370.d859b673.js"></script>
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/3.325ebf1a.js"></script>
+<script src="/ccc49370.45b5b4a2.js"></script>
<script src="/2d8fe9ee.93b6439b.js"></script>
<script src="/749ed826.1f01f50a.js"></script>
</body>
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 a6f3cff..b8ed3ce 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
@@ -8,28 +8,28 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><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"
name="description" content="@gxthrj, Apache APISIX PMC & Apache
apisix-ingress-controller Founder from Shenzhen Zhiliu Technology Co."><meta
data-react-helmet="true" property="og:description" content="@gxthrj, [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/3.0032298d.js" as="script">
-<link rel="preload" href="/ccc49370.d859b673.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><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"
name="description" content="@gxthrj, Apache APISIX PMC & Apache
apisix-ingress-controller Founder from Shenzhen Zhiliu Technology Co."><meta
data-react-helmet="true" property="og:description" content="@gxthrj, [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/3.325ebf1a.js" as="script">
+<link rel="preload" href="/ccc49370.45b5b4a2.js" as="script">
<link rel="preload" href="/2d8fe9ee.93b6439b.js" as="script">
-<link rel="preload" href="/a4a2cefa.1c9bfc96.js" as="script">
+<link rel="preload" href="/a4a2cefa.0476efd7.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/3.0032298d.js"></script>
-<script src="/ccc49370.d859b673.js"></script>
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/3.325ebf1a.js"></script>
+<script src="/ccc49370.45b5b4a2.js"></script>
<script src="/2d8fe9ee.93b6439b.js"></script>
-<script src="/a4a2cefa.1c9bfc96.js"></script>
+<script src="/a4a2cefa.0476efd7.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 1481a33..bafc3c3 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
@@ -8,28 +8,28 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><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"
name="description" content="@Chao Zhang, Apache APISIX Comitter from Shenzhen
Zhiliu Technology Co."><meta data-react-helmet="true" property="og:description"
content="@Chao Zhang, Apache APISIX Comitte [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/3.0032298d.js" as="script">
-<link rel="preload" href="/ccc49370.d859b673.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><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"
name="description" content="@Chao Zhang, Apache APISIX Comitter from Shenzhen
Zhiliu Technology Co."><meta data-react-helmet="true" property="og:description"
content="@Chao Zhang, Apache APISIX Comitte [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/3.325ebf1a.js" as="script">
+<link rel="preload" href="/ccc49370.45b5b4a2.js" as="script">
<link rel="preload" href="/2d8fe9ee.93b6439b.js" as="script">
<link rel="preload" href="/1c89ab3b.da3f678d.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-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)">"headers"</span><span
class="token builtin class-name" style="color:rgb(255, 203, 107)">:</span><span
class="token plain"> </span><span c [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/3.0032298d.js"></script>
-<script src="/ccc49370.d859b673.js"></script>
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/3.325ebf1a.js"></script>
+<script src="/ccc49370.45b5b4a2.js"></script>
<script src="/2d8fe9ee.93b6439b.js"></script>
<script src="/1c89ab3b.da3f678d.js"></script>
</body>
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 c4b458d..91c71f8 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
@@ -8,27 +8,27 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><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" name="description" content="@LiteSun, Apache APISIX
Committer from Shenzhen Zhiliu Technology Co."><meta data-react-helmet="true"
property="og:description" content="@LiteSun, Apache APISIX Comm [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/3.0032298d.js" as="script">
-<link rel="preload" href="/ccc49370.d859b673.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><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" name="description" content="@LiteSun, Apache APISIX
Committer from Shenzhen Zhiliu Technology Co."><meta data-react-helmet="true"
property="og:description" content="@LiteSun, Apache APISIX Comm [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/3.325ebf1a.js" as="script">
+<link rel="preload" href="/ccc49370.45b5b4a2.js" as="script">
<link rel="preload" href="/2d8fe9ee.93b6439b.js" as="script">
<link rel="preload" href="/47e0bf55.464b2b52.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/3.0032298d.js"></script>
-<script src="/ccc49370.d859b673.js"></script>
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/3.325ebf1a.js"></script>
+<script src="/ccc49370.45b5b4a2.js"></script>
<script src="/2d8fe9ee.93b6439b.js"></script>
<script src="/47e0bf55.464b2b52.js"></script>
</body>
diff --git a/blog/index.html b/blog/index.html
index e8e6596..ee69e2b 100644
--- a/blog/index.html
+++ b/blog/index.html
@@ -8,41 +8,41 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><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" name="description" content="Blog"><meta
data-react-helmet="true" property="og:description" content="Blog"><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><meta data-react-helmet="true"
name="docsearch:language" content="en"> [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/3.0032298d.js" as="script">
-<link rel="preload" href="/a6aa9e1f.4f5f955a.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><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" name="description" content="Blog"><meta
data-react-helmet="true" property="og:description" content="Blog"><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><meta data-react-helmet="true"
name="docsearch:language" content="en"> [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/3.325ebf1a.js" as="script">
+<link rel="preload" href="/a6aa9e1f.9ef0213b.js" as="script">
<link rel="preload" href="/2d8fe9ee.93b6439b.js" as="script">
-<link rel="preload" href="/e451ae2c.20483296.js" as="script">
+<link rel="preload" href="/e451ae2c.7ebc9180.js" as="script">
<link rel="preload" href="/514de2af.c71b6f56.js" as="script">
<link rel="preload" href="/5bb67ffc.da9c8f37.js" as="script">
-<link rel="preload" href="/e02da2c5.49e99beb.js" as="script">
+<link rel="preload" href="/e02da2c5.0d169e01.js" as="script">
<link rel="preload" href="/37e3b3ea.10fab840.js" as="script">
-<link rel="preload" href="/b2b675dd.a0165438.js" as="script">
+<link rel="preload" href="/b2b675dd.46f53b3f.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-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)">"headers"</span><span
class="token builtin class-name" style="color:rgb(255, 203, 107)">:</span><span
class="token plain"> </span><span c [...]
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 enhancedAnchor_prK2"
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's custom requirements. In this
[...]
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 enhancedAnchor_prK2"
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> [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/3.0032298d.js"></script>
-<script src="/a6aa9e1f.4f5f955a.js"></script>
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/3.325ebf1a.js"></script>
+<script src="/a6aa9e1f.9ef0213b.js"></script>
<script src="/2d8fe9ee.93b6439b.js"></script>
-<script src="/e451ae2c.20483296.js"></script>
+<script src="/e451ae2c.7ebc9180.js"></script>
<script src="/514de2af.c71b6f56.js"></script>
<script src="/5bb67ffc.da9c8f37.js"></script>
-<script src="/e02da2c5.49e99beb.js"></script>
+<script src="/e02da2c5.0d169e01.js"></script>
<script src="/37e3b3ea.10fab840.js"></script>
-<script src="/b2b675dd.a0165438.js"></script>
+<script src="/b2b675dd.46f53b3f.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/c4f5d8e4.7fc67a7e.js b/c4f5d8e4.7fc67a7e.js
deleted file mode 100644
index 8928878..0000000
--- a/c4f5d8e4.7fc67a7e.js
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[24],{103:function(e,t,a){"use
strict";a.r(t);var n=a(109),r=a(22),l=a(111),c=a(112),i=a(0);function
s(){return(s=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var
a=arguments[t];for(var n in
a)Object.prototype.hasOwnProperty.call(a,n)&&(e[n]=a[n])}return
e}).apply(this,arguments)}function o(e,t){if(null==e)return{};var
a,n,r=function(e,t){if(null==e)return{};var
a,n,r={},l=Object.keys(e);for(n=0;n<l.length;n++)a=l[n],t [...]
\ No newline at end of file
diff --git a/c4f5d8e4.88de71ad.js b/c4f5d8e4.88de71ad.js
new file mode 100644
index 0000000..0b49f48
--- /dev/null
+++ b/c4f5d8e4.88de71ad.js
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[24],{103:function(e,t,a){"use
strict";a.r(t);var n=a(109),r=a(22),l=a(111),c=a(112),i=a(0);function
s(){return(s=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var
a=arguments[t];for(var n in
a)Object.prototype.hasOwnProperty.call(a,n)&&(e[n]=a[n])}return
e}).apply(this,arguments)}function o(e,t){if(null==e)return{};var
a,n,r=function(e,t){if(null==e)return{};var
a,n,r={},l=Object.keys(e);for(n=0;n<l.length;n++)a=l[n],t [...]
\ No newline at end of file
diff --git a/ccc49370.d859b673.js b/ccc49370.45b5b4a2.js
similarity index 92%
rename from ccc49370.d859b673.js
rename to ccc49370.45b5b4a2.js
index 292aa31..0201507 100644
--- a/ccc49370.d859b673.js
+++ b/ccc49370.45b5b4a2.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[25],{104:function(e,t,a){"use
strict";a.r(t);var n=a(0),l=a.n(n),r=a(112),i=a(143),c=a(109);var
o=function(e){var t=e.nextItem,a=e.prevItem;return
l.a.createElement("nav",{className:"pagination-nav","aria-label":"Blog post
page
navigation"},l.a.createElement("div",{className:"pagination-nav__item"},a&&l.a.createElement(c.a,{className:"pagination-nav__link",to:a.permalink},l.a.createElement("div",{className:"pagination-nav__sublabel"},"
[...]
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[25],{104:function(e,t,a){"use
strict";a.r(t);var n=a(0),l=a.n(n),r=a(112),i=a(142),c=a(109);var
o=function(e){var t=e.nextItem,a=e.prevItem;return
l.a.createElement("nav",{className:"pagination-nav","aria-label":"Blog post
page
navigation"},l.a.createElement("div",{className:"pagination-nav__item"},a&&l.a.createElement(c.a,{className:"pagination-nav__link",to:a.permalink},l.a.createElement("div",{className:"pagination-nav__sublabel"},"
[...]
\ No newline at end of file
diff --git a/committer-guide/index.html b/committer-guide/index.html
index 21d6223..693ad60 100644
--- a/committer-guide/index.html
+++ b/committer-guide/index.html
@@ -8,30 +8,30 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Committer Guide | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property=" [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/34.31d2f561.js" as="script">
-<link rel="preload" href="/37.fd446a3e.js" as="script">
-<link rel="preload" href="/935f2afb.cf4d5fdd.js" as="script">
-<link rel="preload" href="/17896441.9f252253.js" as="script">
-<link rel="preload" href="/dcd70f61.d8f8021d.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Committer Guide | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property=" [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/34.b98ad9fa.js" as="script">
+<link rel="preload" href="/37.b77cb21b.js" as="script">
+<link rel="preload" href="/935f2afb.fbf3a007.js" as="script">
+<link rel="preload" href="/17896441.bac97d2f.js" as="script">
+<link rel="preload" href="/dcd70f61.0eb1889a.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/34.31d2f561.js"></script>
-<script src="/37.fd446a3e.js"></script>
-<script src="/935f2afb.cf4d5fdd.js"></script>
-<script src="/17896441.9f252253.js"></script>
-<script src="/dcd70f61.d8f8021d.js"></script>
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/34.b98ad9fa.js"></script>
+<script src="/37.b77cb21b.js"></script>
+<script src="/935f2afb.fbf3a007.js"></script>
+<script src="/17896441.bac97d2f.js"></script>
+<script src="/dcd70f61.0eb1889a.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/contributor-guide/index.html b/contributor-guide/index.html
index e07795a..a180212 100644
--- a/contributor-guide/index.html
+++ b/contributor-guide/index.html
@@ -8,30 +8,30 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Contributor Guide | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/34.31d2f561.js" as="script">
-<link rel="preload" href="/37.fd446a3e.js" as="script">
-<link rel="preload" href="/935f2afb.cf4d5fdd.js" as="script">
-<link rel="preload" href="/17896441.9f252253.js" as="script">
-<link rel="preload" href="/fdbbc319.d845d8ee.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Contributor Guide | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/34.b98ad9fa.js" as="script">
+<link rel="preload" href="/37.b77cb21b.js" as="script">
+<link rel="preload" href="/935f2afb.fbf3a007.js" as="script">
+<link rel="preload" href="/17896441.bac97d2f.js" as="script">
+<link rel="preload" href="/fdbbc319.ed2c4b48.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/34.31d2f561.js"></script>
-<script src="/37.fd446a3e.js"></script>
-<script src="/935f2afb.cf4d5fdd.js"></script>
-<script src="/17896441.9f252253.js"></script>
-<script src="/fdbbc319.d845d8ee.js"></script>
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/34.b98ad9fa.js"></script>
+<script src="/37.b77cb21b.js"></script>
+<script src="/935f2afb.fbf3a007.js"></script>
+<script src="/17896441.bac97d2f.js"></script>
+<script src="/fdbbc319.ed2c4b48.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/dcd70f61.0eb1889a.js b/dcd70f61.0eb1889a.js
new file mode 100644
index 0000000..557edd7
--- /dev/null
+++ b/dcd70f61.0eb1889a.js
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[26],{106:function(e,t,n){"use
strict";n.d(t,"a",(function(){return m})),n.d(t,"b",(function(){return
d}));var o=n(0),r=n.n(o);function i(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
o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return
Object.getOwnPropertyDescriptor(e,t).enumerable})) [...]
\ No newline at end of file
diff --git a/dcd70f61.d8f8021d.js b/dcd70f61.d8f8021d.js
deleted file mode 100644
index cafa64b..0000000
--- a/dcd70f61.d8f8021d.js
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[26],{106:function(e,t,n){"use
strict";n.d(t,"a",(function(){return m})),n.d(t,"b",(function(){return
d}));var o=n(0),r=n.n(o);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
o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return
Object.getOwnPropertyDescriptor(e,t).enumerable})) [...]
\ No newline at end of file
diff --git a/docs/index.html b/docs/index.html
deleted file mode 100644
index 1d141db..0000000
--- a/docs/index.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!doctype html>
-<html lang="en">
-<head>
-<meta charset="UTF-8">
-<meta name="viewport" content="width=device-width,initial-scale=1">
-<meta name="generator" content="Docusaurus v2.0.0-alpha.70">
-<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="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
-<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Subscribe Guide | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property=" [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/34.31d2f561.js" as="script">
-<link rel="preload" href="/37.fd446a3e.js" as="script">
-<link rel="preload" href="/935f2afb.cf4d5fdd.js" as="script">
-<link rel="preload" href="/17896441.9f252253.js" as="script">
-<link rel="preload" href="/2da51850.7ff8096e.js" as="script">
-</head>
-<body>
-<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/34.31d2f561.js"></script>
-<script src="/37.fd446a3e.js"></script>
-<script src="/935f2afb.cf4d5fdd.js"></script>
-<script src="/17896441.9f252253.js"></script>
-<script src="/2da51850.7ff8096e.js"></script>
-</body>
-</html>
\ No newline at end of file
diff --git a/downloads/index.html b/downloads/index.html
index f17c9e1..b0013b7 100644
--- a/downloads/index.html
+++ b/downloads/index.html
@@ -8,21 +8,21 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Downloads | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property="og:tit [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/34.31d2f561.js" as="script">
-<link rel="preload" href="/37.fd446a3e.js" as="script">
-<link rel="preload" href="/935f2afb.cf4d5fdd.js" as="script">
-<link rel="preload" href="/17896441.9f252253.js" as="script">
-<link rel="preload" href="/f9e23376.d935c812.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Downloads | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property="og:tit [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/34.b98ad9fa.js" as="script">
+<link rel="preload" href="/37.b77cb21b.js" as="script">
+<link rel="preload" href="/935f2afb.fbf3a007.js" as="script">
+<link rel="preload" href="/17896441.bac97d2f.js" as="script">
+<link rel="preload" href="/f9e23376.697b3b0d.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
</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" style="display:inline-block">
</span></div><div class="token-line" style="color:#bfc7d5"><span class="token
plain">pgpk -a KEYS</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" style="display:inline-block">
@@ -30,16 +30,16 @@
</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" style="display:inline-block">
</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" style="display:inline-block">
-</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_2GIj">Copy</button></div></div></div></article><div
class="margin-vert--xl"><div class="row"><div class="col"><a
href="https://github.com/apache/apisix-website/edit/master/website/docs/download.md"
target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2
[...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/34.31d2f561.js"></script>
-<script src="/37.fd446a3e.js"></script>
-<script src="/935f2afb.cf4d5fdd.js"></script>
-<script src="/17896441.9f252253.js"></script>
-<script src="/f9e23376.d935c812.js"></script>
+</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_2GIj">Copy</button></div></div></div></article><div
class="margin-vert--xl"><div class="row"><div class="col"><a
href="https://github.com/apache/apisix-website/edit/master/website/docs/download.md"
target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2
[...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/34.b98ad9fa.js"></script>
+<script src="/37.b77cb21b.js"></script>
+<script src="/935f2afb.fbf3a007.js"></script>
+<script src="/17896441.bac97d2f.js"></script>
+<script src="/f9e23376.697b3b0d.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/e02da2c5.49e99beb.js b/e02da2c5.0d169e01.js
similarity index 99%
rename from e02da2c5.49e99beb.js
rename to e02da2c5.0d169e01.js
index b31e519..fe1252d 100644
--- a/e02da2c5.49e99beb.js
+++ b/e02da2c5.0d169e01.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[27],{106:function(e,t,n){"use
strict";n.d(t,"a",(function(){return b})),n.d(t,"b",(function(){return
m}));var a=n(0),r=n.n(a);function i(e,t,n){return t in
e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function
o(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})) [...]
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[27],{106:function(e,t,n){"use
strict";n.d(t,"a",(function(){return b})),n.d(t,"b",(function(){return
m}));var a=n(0),r=n.n(a);function i(e,t,n){return t in
e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function
o(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})) [...]
\ No newline at end of file
diff --git a/e451ae2c.20483296.js b/e451ae2c.7ebc9180.js
similarity index 99%
rename from e451ae2c.20483296.js
rename to e451ae2c.7ebc9180.js
index 90cc8f7..ad795fa 100644
--- a/e451ae2c.20483296.js
+++ b/e451ae2c.7ebc9180.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[28],{106:function(e,t,n){"use
strict";n.d(t,"a",(function(){return p})),n.d(t,"b",(function(){return
d}));var a=n(0),r=n.n(a);function s(e,t,n){return t in
e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function
o(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})) [...]
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[28],{106:function(e,t,n){"use
strict";n.d(t,"a",(function(){return p})),n.d(t,"b",(function(){return
d}));var a=n(0),r=n.n(a);function s(e,t,n){return t in
e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function
o(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})) [...]
\ No newline at end of file
diff --git a/f9e23376.697b3b0d.js b/f9e23376.697b3b0d.js
new file mode 100644
index 0000000..6969e61
--- /dev/null
+++ b/f9e23376.697b3b0d.js
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[29],{106:function(e,a,t){"use
strict";t.d(a,"a",(function(){return b})),t.d(a,"b",(function(){return
u}));var r=t(0),n=t.n(r);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
s(e,a){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var
r=Object.getOwnPropertySymbols(e);a&&(r=r.filter((function(a){return
Object.getOwnPropertyDescriptor(e,a).enumerable})) [...]
\ No newline at end of file
diff --git a/f9e23376.d935c812.js b/f9e23376.d935c812.js
deleted file mode 100644
index 799dcdf..0000000
--- a/f9e23376.d935c812.js
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[29],{106:function(e,a,t){"use
strict";t.d(a,"a",(function(){return b})),t.d(a,"b",(function(){return
u}));var r=t(0),n=t.n(r);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
s(e,a){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var
r=Object.getOwnPropertySymbols(e);a&&(r=r.filter((function(a){return
Object.getOwnPropertyDescriptor(e,a).enumerable})) [...]
\ No newline at end of file
diff --git a/fdbbc319.d845d8ee.js b/fdbbc319.d845d8ee.js
deleted file mode 100644
index e78dfbf..0000000
--- a/fdbbc319.d845d8ee.js
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[30],{106:function(e,t,r){"use
strict";r.d(t,"a",(function(){return u})),r.d(t,"b",(function(){return
d}));var n=r(0),o=r.n(n);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
i(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})) [...]
\ No newline at end of file
diff --git a/fdbbc319.ed2c4b48.js b/fdbbc319.ed2c4b48.js
new file mode 100644
index 0000000..3a6ac07
--- /dev/null
+++ b/fdbbc319.ed2c4b48.js
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[30],{106:function(e,t,r){"use
strict";r.d(t,"a",(function(){return u})),r.d(t,"b",(function(){return
d}));var n=r(0),o=r.n(n);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})) [...]
\ No newline at end of file
diff --git a/help/index.html b/help/index.html
index 6870e1d..4ad2b5a 100644
--- a/help/index.html
+++ b/help/index.html
@@ -8,22 +8,22 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true"
property="og:title" content="Apache APISIX™"><meta data-react-helmet="true"
name="twitter:card" content="summary_large_image"><meta
data-react-helmet="true" name="docsearch:language" content="en"><meta
data-react-helmet="true" name="docsearch:docusaurus_tag"
content="default"><link data-react-helmet="true" rel="shortcut icon"
href="/img/favicon. [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/7e37206e.2ef90a44.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true"
property="og:title" content="Apache APISIX™"><meta data-react-helmet="true"
name="twitter:card" content="summary_large_image"><meta
data-react-helmet="true" name="docsearch:language" content="en"><meta
data-react-helmet="true" name="docsearch:docusaurus_tag"
content="default"><link data-react-helmet="true" rel="shortcut icon"
href="/img/favicon. [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/7e37206e.53d84f01.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/7e37206e.2ef90a44.js"></script>
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/7e37206e.53d84f01.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/img/community.png b/img/community.png
new file mode 100644
index 0000000..8eacc14
Binary files /dev/null and b/img/community.png differ
diff --git a/img/documents.png b/img/documents.png
new file mode 100644
index 0000000..7e546fe
Binary files /dev/null and b/img/documents.png differ
diff --git a/index.html b/index.html
index 71d1098..fbd4f40 100644
--- a/index.html
+++ b/index.html
@@ -8,22 +8,24 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true"
property="og:title" content="Apache APISIX™"><meta data-react-helmet="true"
name="twitter:card" content="summary_large_image"><meta
data-react-helmet="true" name="docsearch:language" content="en"><meta
data-react-helmet="true" name="docsearch:docusaurus_tag"
content="default"><link data-react-helmet="true" rel="shortcut icon"
href="/img/favicon. [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/c4f5d8e4.7fc67a7e.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true"
property="og:title" content="Apache APISIX™"><meta data-react-helmet="true"
name="twitter:card" content="summary_large_image"><meta
data-react-helmet="true" name="docsearch:language" content="en"><meta
data-react-helmet="true" name="docsearch:docusaurus_tag"
content="default"><link data-react-helmet="true" rel="shortcut icon"
href="/img/favicon. [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/38.7c719d44.js" as="script">
+<link rel="preload" href="/c4f5d8e4.88de71ad.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<div class="baseUrlIssueBanner_1-cE" style="border:solid red
thick;background-color:#ffe6b3;margin:20px;padding:20px;font-size:20px"><p
style="font-weight:bold;font-size:30px">Your Docusaurus site did not load
properly.</p><p>A very common reason is a wrong site <a
href="https://v2.docusaurus.io/docs/docusaurus.config.js/#baseurl"
style="font-weight:bold">baseUrl configuration</a>.</p><p>Current configured
baseUrl = <span style="font-weight:bold;color:red">/</span> (default
value)</p><p [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/c4f5d8e4.7fc67a7e.js"></script>
+<div class="baseUrlIssueBanner_1-cE" style="border:solid red
thick;background-color:#ffe6b3;margin:20px;padding:20px;font-size:20px"><p
style="font-weight:bold;font-size:30px">Your Docusaurus site did not load
properly.</p><p>A very common reason is a wrong site <a
href="https://v2.docusaurus.io/docs/docusaurus.config.js/#baseurl"
style="font-weight:bold">baseUrl configuration</a>.</p><p>Current configured
baseUrl = <span style="font-weight:bold;color:red">/</span> (default
value)</p><p [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/38.7c719d44.js"></script>
+<script src="/c4f5d8e4.88de71ad.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/main.1897b94e.js b/main.1897b94e.js
deleted file mode 100644
index 2a37f37..0000000
--- a/main.1897b94e.js
+++ /dev/null
@@ -1,2 +0,0 @@
-/*! For license information please see main.1897b94e.js.LICENSE.txt */
-(window.webpackJsonp=window.webpackJsonp||[]).push([[31],[function(e,t,n){"use
strict";e.exports=n(39)},function(e,t,n){e.exports=n(43)()},function(e,t,n){"use
strict";n.d(t,"a",(function(){return v})),n.d(t,"b",(function(){return
w})),n.d(t,"c",(function(){return T})),n.d(t,"d",(function(){return
_})),n.d(t,"e",(function(){return b})),n.d(t,"f",(function(){return
L})),n.d(t,"g",(function(){return j})),n.d(t,"h",(function(){return
g})),n.d(t,"i",(function(){return S})),n.d(t,"j",(functio [...]
\ No newline at end of file
diff --git a/main.8245d14c.js b/main.8245d14c.js
new file mode 100644
index 0000000..a22ac4c
--- /dev/null
+++ b/main.8245d14c.js
@@ -0,0 +1,2 @@
+/*! For license information please see main.8245d14c.js.LICENSE.txt */
+(window.webpackJsonp=window.webpackJsonp||[]).push([[31],[function(e,t,n){"use
strict";e.exports=n(39)},function(e,t,n){e.exports=n(43)()},function(e,t,n){"use
strict";n.d(t,"a",(function(){return v})),n.d(t,"b",(function(){return
w})),n.d(t,"c",(function(){return T})),n.d(t,"d",(function(){return
_})),n.d(t,"e",(function(){return b})),n.d(t,"f",(function(){return
L})),n.d(t,"g",(function(){return j})),n.d(t,"h",(function(){return
g})),n.d(t,"i",(function(){return S})),n.d(t,"j",(functio [...]
\ No newline at end of file
diff --git a/main.1897b94e.js.LICENSE.txt b/main.8245d14c.js.LICENSE.txt
similarity index 100%
rename from main.1897b94e.js.LICENSE.txt
rename to main.8245d14c.js.LICENSE.txt
diff --git a/release-guide/index.html b/release-guide/index.html
index 995e47a..c06b76a 100644
--- a/release-guide/index.html
+++ b/release-guide/index.html
@@ -8,21 +8,21 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Release Guide | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property="og [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/34.31d2f561.js" as="script">
-<link rel="preload" href="/37.fd446a3e.js" as="script">
-<link rel="preload" href="/935f2afb.cf4d5fdd.js" as="script">
-<link rel="preload" href="/17896441.9f252253.js" as="script">
-<link rel="preload" href="/812d7c14.f86dde69.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Release Guide | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property="og [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/34.b98ad9fa.js" as="script">
+<link rel="preload" href="/37.b77cb21b.js" as="script">
+<link rel="preload" href="/935f2afb.fbf3a007.js" as="script">
+<link rel="preload" href="/17896441.bac97d2f.js" as="script">
+<link rel="preload" href="/812d7c14.b913dfdb.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
</span></div><div class="token-line" style="color:#bfc7d5"><span class="token
plain">Please select what kind of key you want:</span></div><div
class="token-line" style="color:#bfc7d5"><span class="token plain">(1) RSA and
RSA (default)</span></div><div class="token-line" style="color:#bfc7d5"><span
class="token plain">(2) DSA and Elgamal</span></div><div class="token-line"
style="color:#bfc7d5"><span class="token plain">(3) DSA (sign
only)</span></div><div class="token-line" style="color [...]
</span></div><div class="token-line" style="color:#bfc7d5"><span class="token
plain">GnuPG needs to construct a user ID to identify your
key.</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">Real name: ${Enter your username}</span></div><div class="token-line"
style="color:#bfc7d5"><span class="token plain">Email address: ${Enter your
email address}</span></div><div class="token-line" style="color:#bfc7d5"><span
class="token plain">Comment: ${Enter comments}</span></div><div
class="token-line" style="color:#bfc7d5"><span class="token plain">You selected
this USER-ID:</span></div><div class=" [...]
@@ -39,16 +39,16 @@
</span></div><div class="token-line" style="color:#bfc7d5"><span class="token
plain"># check files</span></div><div class="token-line"
style="color:#bfc7d5"><span class="token plain">$ cd .. &&
tree</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">├── 1.0</span></div><div
class="token-line" style="color:#bfc7d5"><span class="token plain">│ ├──
apache-apisix-1 [...]
</span></div><div class="token-line" style="color:#bfc7d5"><span class="token
plain">1 directory, 4 files</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"># add files to SVN</span></div><div class="token-line"
style="color:#bfc7d5"><span class="token plain">$ svn add *</span></div><div
class="token-line" style="color:#bfc7d5"><span class="token plain">A
1.0</span></div><div class="token-line" style="color:#bfc7d5"><span
class="token plain">A (bin)
1.0/apache-apisix-1.0-src.tar.gz.asc</span></div><div class="token-line"
style="color:#bfc7d5"><span [...]
-</span></div><div class="token-line" style="color:#bfc7d5"><span class="token
plain"># commit to Apache SVN</span></div><div class="token-line"
style="color:#bfc7d5"><span class="token plain">$ svn --username=${Apache
username} commit -m "release 1.0"</span></div><div class="token-line"
style="color:#bfc7d5"><span class="token plain">Adding
1.0</span></div><div class="token-line" style="color:#bfc7d5"><span
class="token plain">Adding (bin) 1.0/apache-apisix-1.0-src.ta [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/34.31d2f561.js"></script>
-<script src="/37.fd446a3e.js"></script>
-<script src="/935f2afb.cf4d5fdd.js"></script>
-<script src="/17896441.9f252253.js"></script>
-<script src="/812d7c14.f86dde69.js"></script>
+</span></div><div class="token-line" style="color:#bfc7d5"><span class="token
plain"># commit to Apache SVN</span></div><div class="token-line"
style="color:#bfc7d5"><span class="token plain">$ svn --username=${Apache
username} commit -m "release 1.0"</span></div><div class="token-line"
style="color:#bfc7d5"><span class="token plain">Adding
1.0</span></div><div class="token-line" style="color:#bfc7d5"><span
class="token plain">Adding (bin) 1.0/apache-apisix-1.0-src.ta [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/34.b98ad9fa.js"></script>
+<script src="/37.b77cb21b.js"></script>
+<script src="/935f2afb.fbf3a007.js"></script>
+<script src="/17896441.bac97d2f.js"></script>
+<script src="/812d7c14.b913dfdb.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/runtime~main.2f7025f0.js b/runtime~main.2f7025f0.js
new file mode 100644
index 0000000..1b0c784
--- /dev/null
+++ b/runtime~main.2f7025f0.js
@@ -0,0 +1 @@
+!function(e){function r(r){for(var
a,c,o=r[0],d=r[1],b=r[2],u=0,l=[];u<o.length;u++)c=o[u],Object.prototype.hasOwnProperty.call(n,c)&&n[c]&&l.push(n[c][0]),n[c]=0;for(a
in
d)Object.prototype.hasOwnProperty.call(d,a)&&(e[a]=d[a]);for(i&&i(r);l.length;)l.shift()();return
f.push.apply(f,b||[]),t()}function t(){for(var e,r=0;r<f.length;r++){for(var
t=f[r],a=!0,c=1;c<t.length;c++){var
d=t[c];0!==n[d]&&(a=!1)}a&&(f.splice(r--,1),e=o(o.s=t[0]))}return e}var
a={},n={32:0},f=[];function c(e){retu [...]
\ No newline at end of file
diff --git a/runtime~main.73e8fd9d.js b/runtime~main.73e8fd9d.js
deleted file mode 100644
index 6e8ff97..0000000
--- a/runtime~main.73e8fd9d.js
+++ /dev/null
@@ -1 +0,0 @@
-!function(e){function r(r){for(var
n,o,c=r[0],d=r[1],u=r[2],b=0,l=[];b<c.length;b++)o=c[b],Object.prototype.hasOwnProperty.call(a,o)&&a[o]&&l.push(a[o][0]),a[o]=0;for(n
in
d)Object.prototype.hasOwnProperty.call(d,n)&&(e[n]=d[n]);for(i&&i(r);l.length;)l.shift()();return
f.push.apply(f,u||[]),t()}function t(){for(var e,r=0;r<f.length;r++){for(var
t=f[r],n=!0,o=1;o<t.length;o++){var
d=t[o];0!==a[d]&&(n=!1)}n&&(f.splice(r--,1),e=c(c.s=t[0]))}return e}var
n={},a={32:0},f=[];function o(e){retu [...]
\ No newline at end of file
diff --git a/search/index.html b/search/index.html
index 3962914..35b4d48 100644
--- a/search/index.html
+++ b/search/index.html
@@ -8,22 +8,22 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><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" name="twitter:card"
content="summary_large_image"><meta data-react-helmet="true"
name="docsearch:language" content="en"><meta data-react-helmet="true"
name="docsearch:docusaurus_tag" content="default"><meta
data-react-helmet="true" property="ro [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/33.f5924c25.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><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" name="twitter:card"
content="summary_large_image"><meta data-react-helmet="true"
name="docsearch:language" content="en"><meta data-react-helmet="true"
name="docsearch:docusaurus_tag" content="default"><meta
data-react-helmet="true" property="ro [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/33.3f2d3a98.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/33.f5924c25.js"></script>
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/33.3f2d3a98.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/security/index.html b/security/index.html
index b4a423a..dd44117 100644
--- a/security/index.html
+++ b/security/index.html
@@ -8,30 +8,30 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Security | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property="og:titl [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/34.31d2f561.js" as="script">
-<link rel="preload" href="/37.fd446a3e.js" as="script">
-<link rel="preload" href="/935f2afb.cf4d5fdd.js" as="script">
-<link rel="preload" href="/17896441.9f252253.js" as="script">
-<link rel="preload" href="/638581dc.18fae70d.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Security | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property="og:titl [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/34.b98ad9fa.js" as="script">
+<link rel="preload" href="/37.b77cb21b.js" as="script">
+<link rel="preload" href="/935f2afb.fbf3a007.js" as="script">
+<link rel="preload" href="/17896441.bac97d2f.js" as="script">
+<link rel="preload" href="/638581dc.09df1f93.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/34.31d2f561.js"></script>
-<script src="/37.fd446a3e.js"></script>
-<script src="/935f2afb.cf4d5fdd.js"></script>
-<script src="/17896441.9f252253.js"></script>
-<script src="/638581dc.18fae70d.js"></script>
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/34.b98ad9fa.js"></script>
+<script src="/37.b77cb21b.js"></script>
+<script src="/935f2afb.fbf3a007.js"></script>
+<script src="/17896441.bac97d2f.js"></script>
+<script src="/638581dc.09df1f93.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/sitemap.xml b/sitemap.xml
index 88da198..6a259b1 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:mobile="http://www.google.com/schemas/sitemap-mobile/1.0"
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>
[...]
\ 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:mobile="http://www.google.com/schemas/sitemap-mobile/1.0"
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>
[...]
\ No newline at end of file
diff --git a/styles.432c35c7.css b/styles.432c35c7.css
new file mode 100644
index 0000000..d6f9fa8
--- /dev/null
+++ b/styles.432c35c7.css
@@ -0,0 +1 @@
+.row .col,img{max-width:100%}.markdown
li,body{word-wrap:break-word}pre,table{overflow:auto}blockquote,pre{margin:0 0
var(--ifm-spacing-vertical)}.button,.close{-webkit-appearance:none;cursor:pointer}.breadcrumbs__link,.button{transition-timing-function:var(--ifm-transition-timing-default)}.button--link,a{-webkit-text-decoration:var(--ifm-link-decoration)}.button,.close,.menu__link,.navbar__link,a{cursor:pointer}.tabs__item,hr,img{box-sizing:content-box}.react-toggle,html{-webkit-tap-hig
[...]
\ No newline at end of file
diff --git a/styles.96e1c279.css b/styles.96e1c279.css
deleted file mode 100644
index ff2d8dd..0000000
--- a/styles.96e1c279.css
+++ /dev/null
@@ -1 +0,0 @@
-.row .col,img{max-width:100%}.markdown
li,body{word-wrap:break-word}pre,table{overflow:auto}blockquote,pre{margin:0 0
var(--ifm-spacing-vertical)}.button,.close{-webkit-appearance:none;cursor:pointer}.breadcrumbs__link,.button{transition-timing-function:var(--ifm-transition-timing-default)}.button--link,a{-webkit-text-decoration:var(--ifm-link-decoration)}.button,.close,.menu__link,.navbar__link,a{cursor:pointer}.tabs__item,hr,img{box-sizing:content-box}.react-toggle,html{-webkit-tap-hig
[...]
\ No newline at end of file
diff --git a/styles.3bb3f4a0.js b/styles.af9d7c7e.js
similarity index 68%
rename from styles.3bb3f4a0.js
rename to styles.af9d7c7e.js
index e337007..fe77965 100644
--- a/styles.3bb3f4a0.js
+++ b/styles.af9d7c7e.js
@@ -1 +1 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[0],[,,,,,,,,,,,,,,,,,function(e,n,o){},,,,,,,,,,,,,,,,,,,,function(e,n,o){e.exports={baseUrlIssueBanner:"baseUrlIssueBanner_1-cE"}},,,,,,,,,,function(e,n,o){},,,,function(e,n,o){},function(e,n,o){},,,function(e,n,o){e.exports={tableOfContents:"tableOfContents_2xL-",docItemContainer:"docItemContainer_1Kik"}},function(e,n,o){e.exports={iconEdit:"iconEdit_2LL7"}},function(e,n,o){e.exports={codeBlockContent:"codeBlockContent_actS",codeBloc
[...]
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[0],[,,,,,,,,,,,,,,,,,function(e,n,o){},,,,,,,,,,,,,,,,,,,,function(e,n,o){e.exports={baseUrlIssueBanner:"baseUrlIssueBanner_1-cE"}},,,,,,,,,,function(e,n,o){},,,,function(e,n,o){},function(e,n,o){},,,function(e,n,o){e.exports={tableOfContents:"tableOfContents_2xL-",docItemContainer:"docItemContainer_1Kik"}},function(e,n,o){e.exports={iconEdit:"iconEdit_2LL7"}},function(e,n,o){e.exports={codeBlockContent:"codeBlockContent_actS",codeBloc
[...]
\ No newline at end of file
diff --git a/subscribe-guide/index.html b/subscribe-guide/index.html
new file mode 100644
index 0000000..6c38c31
--- /dev/null
+++ b/subscribe-guide/index.html
@@ -0,0 +1,37 @@
+<!doctype html>
+<html lang="en">
+<head>
+<meta charset="UTF-8">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+<meta name="generator" content="Docusaurus v2.0.0-alpha.70">
+<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="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
+<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
+<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Subscribe Guide | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property=" [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/34.b98ad9fa.js" as="script">
+<link rel="preload" href="/37.b77cb21b.js" as="script">
+<link rel="preload" href="/935f2afb.fbf3a007.js" as="script">
+<link rel="preload" href="/17896441.bac97d2f.js" as="script">
+<link rel="preload" href="/2da51850.00e4a4dc.js" as="script">
+</head>
+<body>
+<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/34.b98ad9fa.js"></script>
+<script src="/37.b77cb21b.js"></script>
+<script src="/935f2afb.fbf3a007.js"></script>
+<script src="/17896441.bac97d2f.js"></script>
+<script src="/2da51850.00e4a4dc.js"></script>
+</body>
+</html>
\ No newline at end of file
diff --git a/team/index.html b/team/index.html
index e97909e..ccf80c3 100644
--- a/team/index.html
+++ b/team/index.html
@@ -8,30 +8,30 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Team | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property="og:title" c [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
-<link rel="preload" href="/34.31d2f561.js" as="script">
-<link rel="preload" href="/37.fd446a3e.js" as="script">
-<link rel="preload" href="/935f2afb.cf4d5fdd.js" as="script">
-<link rel="preload" href="/17896441.9f252253.js" as="script">
-<link rel="preload" href="/2275ea3b.5b120176.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Team | Apache APISIX™</title><meta
data-react-helmet="true" name="twitter:card"
content="summary_large_image"><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" content="docs-default-current"><meta
data-react-helmet="true" property="og:title" c [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
+<link rel="preload" href="/34.b98ad9fa.js" as="script">
+<link rel="preload" href="/37.b77cb21b.js" as="script">
+<link rel="preload" href="/935f2afb.fbf3a007.js" as="script">
+<link rel="preload" href="/17896441.bac97d2f.js" as="script">
+<link rel="preload" href="/2275ea3b.f959387e.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
-<script src="/34.31d2f561.js"></script>
-<script src="/37.fd446a3e.js"></script>
-<script src="/935f2afb.cf4d5fdd.js"></script>
-<script src="/17896441.9f252253.js"></script>
-<script src="/2275ea3b.5b120176.js"></script>
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
+<script src="/34.b98ad9fa.js"></script>
+<script src="/37.b77cb21b.js"></script>
+<script src="/935f2afb.fbf3a007.js"></script>
+<script src="/17896441.bac97d2f.js"></script>
+<script src="/2275ea3b.f959387e.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/users/index.html b/users/index.html
index c6b4c26..964f993 100644
--- a/users/index.html
+++ b/users/index.html
@@ -8,22 +8,22 @@
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache APISIX™ Blog Atom Feed">
<link rel="search" type="application/opensearchdescription+xml" title="Apache
APISIX™" href="/opensearch.xml">
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap">
-<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true"
property="og:title" content="Apache APISIX™"><meta data-react-helmet="true"
name="twitter:card" content="summary_large_image"><meta
data-react-helmet="true" name="docsearch:language" content="en"><meta
data-react-helmet="true" name="docsearch:docusaurus_tag"
content="default"><link data-react-helmet="true" rel="shortcut icon"
href="/img/favicon. [...]
-<link rel="preload" href="/styles.3bb3f4a0.js" as="script">
-<link rel="preload" href="/runtime~main.73e8fd9d.js" as="script">
-<link rel="preload" href="/main.1897b94e.js" as="script">
-<link rel="preload" href="/1.9e8c86b4.js" as="script">
-<link rel="preload" href="/2.91f7bfaa.js" as="script">
+<script src="https://buttons.github.io/buttons.js"></script><title
data-react-helmet="true">Apache APISIX™</title><meta data-react-helmet="true"
property="og:title" content="Apache APISIX™"><meta data-react-helmet="true"
name="twitter:card" content="summary_large_image"><meta
data-react-helmet="true" name="docsearch:language" content="en"><meta
data-react-helmet="true" name="docsearch:docusaurus_tag"
content="default"><link data-react-helmet="true" rel="shortcut icon"
href="/img/favicon. [...]
+<link rel="preload" href="/styles.af9d7c7e.js" as="script">
+<link rel="preload" href="/runtime~main.2f7025f0.js" as="script">
+<link rel="preload" href="/main.8245d14c.js" as="script">
+<link rel="preload" href="/1.a1564f8b.js" as="script">
+<link rel="preload" href="/2.892914c0.js" as="script">
<link rel="preload" href="/1dba9094.7f91409e.js" as="script">
</head>
<body>
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
-<script src="/styles.3bb3f4a0.js"></script>
-<script src="/runtime~main.73e8fd9d.js"></script>
-<script src="/main.1897b94e.js"></script>
-<script src="/1.9e8c86b4.js"></script>
-<script src="/2.91f7bfaa.js"></script>
+<nav aria-label="Skip navigation links"><button type="button" tabindex="0"
class="skipToContent_11B0">Skip to main content</button></nav><nav
class="navbar navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><div aria-label="Navigation bar toggle"
class="navbar__toggle" role="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-m [...]
+<script src="/styles.af9d7c7e.js"></script>
+<script src="/runtime~main.2f7025f0.js"></script>
+<script src="/main.8245d14c.js"></script>
+<script src="/1.a1564f8b.js"></script>
+<script src="/2.892914c0.js"></script>
<script src="/1dba9094.7f91409e.js"></script>
</body>
</html>
\ No newline at end of file