docs: fix error link (#6989)

This commit is contained in:
homeward 2022-05-07 10:22:14 +08:00 committed by GitHub
parent 00cc4386ee
commit 2b7bcf0034
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 49 additions and 49 deletions

View File

@ -81,7 +81,7 @@ A/B testing, canary release, blue-green deployment, limit rate, defense against
- **Full Dynamic**
- [Hot Updates And Hot Plugins](docs/en/latest/architecture-design/plugin.md): Continuously updates its configurations and plugins without restarts!
- [Hot Updates And Hot Plugins](docs/en/latest/terminology/plugin.md): Continuously updates its configurations and plugins without restarts!
- [Proxy Rewrite](docs/en/latest/plugins/proxy-rewrite.md): Support rewrite the `host`, `uri`, `schema`, `enable_websocket`, `headers` of the request before send to upstream.
- [Response Rewrite](docs/en/latest/plugins/response-rewrite.md): Set customized response status code, body and header to the client.
- Dynamic Load Balancing: Round-robin load balancing with weight.
@ -137,7 +137,7 @@ A/B testing, canary release, blue-green deployment, limit rate, defense against
- Version Control: Supports rollbacks of operations.
- CLI: start\stop\reload APISIX through the command line.
- [Stand-Alone](docs/en/latest/stand-alone.md): Supports to load route rules from local YAML file, it is more friendly such as under the kubernetes(k8s).
- [Global Rule](docs/en/latest/architecture-design/global-rule.md): Allows to run any plugin for all request, eg: limit rate, IP filter etc.
- [Global Rule](docs/en/latest/terminology/global-rule.md): Allows to run any plugin for all request, eg: limit rate, IP filter etc.
- High performance: The single-core QPS reaches 18k with an average delay of fewer than 0.2 milliseconds.
- [Fault Injection](docs/en/latest/plugins/fault-injection.md)
- [REST Admin API](docs/en/latest/admin-api.md): Using the REST Admin API to control Apache APISIX, which only allows 127.0.0.1 access by default, you can modify the `allow_admin` field in `conf/config.yaml` to specify a list of IPs that are allowed to call the Admin API. Also, note that the Admin API uses key auth to verify the identity of the caller. **The `admin_key` field in `conf/config.yaml` needs to be modified before deployment to ensure security**.

View File

@ -111,7 +111,7 @@ Let's take an example query `foo.com/product/index.html?id=204&page=2` and consi
There are two different ways to achieve this in Apache APISIX:
1. Using the `vars` field in a [Route](architecture-design/route.md):
1. Using the `vars` field in a [Route](terminology/route.md):
```shell
curl -i http://127.0.0.1:9080/apisix/admin/routes/1 -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' -X PUT -d '

View File

@ -31,7 +31,7 @@ By default, the Admin API listens to port `9080` (`9443` for HTTPS) when APISIX
**API**: /apisix/admin/routes/{id}?ttl=0
[Routes](./architecture-design/route.md) match the client's request based on defined rules, loads and executes the corresponding [plugins](#plugin), and forwards the request to the specified [Upstream](#upstream).
[Routes](./terminology/route.md) match the client's request based on defined rules, loads and executes the corresponding [plugins](#plugin), and forwards the request to the specified [Upstream](#upstream).
**Note**: When the Admin API is enabled, to avoid conflicts with your design API, use a different port for the Admin API. This can be set in your configuration file by changing the `port_admin` key.
@ -59,7 +59,7 @@ By default, the Admin API listens to port `9080` (`9443` for HTTPS) when APISIX
| ---------------- | ---------------------------------------- | ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------- |
| name | False | Auxiliary | Identifier for the Route. | route-xxxx |
| desc | False | Auxiliary | Description of usage scenarios. | route xxxx |
| uri | True, can't be used with `uris` | Match Rules | Matches the uri. For more advanced matching see [Router](./architecture-design/router.md). | "/hello" |
| uri | True, can't be used with `uris` | Match Rules | Matches the uri. For more advanced matching see [Router](./terminology/router.md). | "/hello" |
| uris | True, can't be used with `uri` | Match Rules | Matches with any one of the multiple `uri`s specified in the form of a non-empty list. | ["/hello", "/word"] |
| host | False, can't be used with `hosts` | Match Rules | Matches with domain names such as `foo.com` or PAN domain names like `*.foo.com`. | "foo.com" |
| hosts | False, can't be used with `host` | Match Rules | Matches with any one of the multiple `host`s specified in the form of a non-empty list. | ["foo.com", "*.bar.com"] |
@ -69,12 +69,12 @@ By default, the Admin API listens to port `9080` (`9443` for HTTPS) when APISIX
| priority | False | Match Rules | If different Routes matches to the same `uri`, then the Route is matched based on its `priority`. A higher value corresponds to higher priority. It is set to `0` by default. | priority = 10 |
| vars | False | Match Rules | Matches based on the specified variables consistent with variables in Nginx. Takes the form `[[var, operator, val], [var, operator, val], ...]]`. Note that this is case sensitive when matching a cookie name. See [lua-resty-expr](https://github.com/api7/lua-resty-expr) for more details. | [["arg_name", "==", "json"], ["arg_age", ">", 18]] |
| filter_func | False | Match Rules | Matches based on a user-defined filtering function. Used in scenarios requiring complex matching. These functions can accept an input parameter `vars` which can be used to access the Nginx variables. | function(vars) return vars["arg_name"] == "json" end |
| plugins | False | Plugin | Plugins that are executed during the request/response cycle. See [Plugin](architecture-design/plugin.md) for more. | |
| script | False | Script | Used for writing arbitrary Lua code or directly calling existing plugins to be executed. See [Script](architecture-design/script.md) for more. | |
| upstream | False | Upstream | Configuration of the [Upstream](./architecture-design/upstream.md). | |
| upstream_id | False | Upstream | Id of the [Upstream](architecture-design/upstream.md) service. | |
| service_id | False | Service | Configuration of the bound [Service](architecture-design/service.md). | |
| plugin_config_id | False, can't be used with `script` | Plugin | [Plugin config](architecture-design/plugin-config.md) bound to the Route. | |
| plugins | False | Plugin | Plugins that are executed during the request/response cycle. See [Plugin](terminology/plugin.md) for more. | |
| script | False | Script | Used for writing arbitrary Lua code or directly calling existing plugins to be executed. See [Script](terminology/script.md) for more. | |
| upstream | False | Upstream | Configuration of the [Upstream](./terminology/upstream.md). | |
| upstream_id | False | Upstream | Id of the [Upstream](terminology/upstream.md) service. | |
| service_id | False | Service | Configuration of the bound [Service](terminology/service.md). | |
| plugin_config_id | False, can't be used with `script` | Plugin | [Plugin config](terminology/plugin-config.md) bound to the Route. | |
| labels | False | Match Rules | Attributes of the Route specified as key-value pairs. | {"version":"v2","build":"16","env":"production"} |
| timeout | False | Auxiliary | Sets the timeout for connecting to, and sending and receiving messages between the Upstream and the Route. This will overwrite the `timeout` value configured in your [Upstream](#upstream). | {"connect": 3, "send": 3, "read": 3} |
| enable_websocket | False | Auxiliary | Enables a websocket. Set to `false` by default. | |
@ -297,9 +297,9 @@ The relationship between Routes and a Service is usually N:1.
| Parameter | Required | Type | Description | Example |
| ---------------- | -------- | ----------- | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------ |
| plugins | False | Plugin | Plugins that are executed during the request/response cycle. See [Plugin](architecture-design/plugin.md) for more. | |
| upstream | False | Upstream | Configuration of the [Upstream](./architecture-design/upstream.md). | |
| upstream_id | False | Upstream | Id of the [Upstream](architecture-design/upstream.md) service. | |
| plugins | False | Plugin | Plugins that are executed during the request/response cycle. See [Plugin](terminology/plugin.md) for more. | |
| upstream | False | Upstream | Configuration of the [Upstream](./terminology/upstream.md). | |
| upstream_id | False | Upstream | Id of the [Upstream](terminology/upstream.md) service. | |
| name | False | Auxiliary | Identifier for the Service. | service-xxxx |
| desc | False | Auxiliary | Description of usage scenarios. | service xxxx |
| labels | False | Match Rules | Attributes of the Service specified as key-value pairs. | {"version":"v2","build":"16","env":"production"} |
@ -446,7 +446,7 @@ Consumers are users of services and can only be used in conjunction with a user
| Parameter | Required | Type | Description | Example |
| ----------- | -------- | ----------- | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------ |
| username | True | Name | Name of the Consumer. | |
| plugins | False | Plugin | Plugins that are executed during the request/response cycle. See [Plugin](architecture-design/plugin.md) for more. | |
| plugins | False | Plugin | Plugins that are executed during the request/response cycle. See [Plugin](terminology/plugin.md) for more. | |
| desc | False | Auxiliary | Description of usage scenarios. | customer xxxx |
| labels | False | Match Rules | Attributes of the Consumer specified as key-value pairs. | {"version":"v2","build":"16","env":"production"} |
| create_time | False | Auxiliary | Epoch timestamp (in seconds) of the created time. If missing, this field will be populated automatically. | 1602883670 |
@ -825,7 +825,7 @@ Sets Plugins which run globally. i.e these Plugins will be run before any Route/
| Parameter | Required | Description | Example |
| ----------- | -------- | ------------------------------------------------------------------------------------------------------------------ | ---------- |
| plugins | True | Plugins that are executed during the request/response cycle. See [Plugin](architecture-design/plugin.md) for more. | |
| plugins | True | Plugins that are executed during the request/response cycle. See [Plugin](terminology/plugin.md) for more. | |
| create_time | False | Epoch timestamp (in seconds) of the created time. If missing, this field will be populated automatically. | 1602883670 |
| update_time | False | Epoch timestamp (in seconds) of the updated time. If missing, this field will be populated automatically. | 1602883670 |
@ -850,7 +850,7 @@ Group of Plugins which can be reused across Routes.
| Parameter | Required | Description | Example |
| ----------- | -------- | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------ |
| plugins | True | Plugins that are executed during the request/response cycle. See [Plugin](architecture-design/plugin.md) for more. | |
| plugins | True | Plugins that are executed during the request/response cycle. See [Plugin](terminology/plugin.md) for more. | |
| desc | False | Description of usage scenarios. | customer xxxx |
| labels | False | Attributes of the Plugin config specified as key-value pairs. | {"version":"v2","build":"16","env":"production"} |
| create_time | False | Epoch timestamp (in seconds) of the created time. If missing, this field will be populated automatically. | 1602883670 |
@ -954,8 +954,8 @@ Route used in the [Stream Proxy](./stream-proxy.md).
| Parameter | Required | Type | Description | Example |
| ----------- | -------- | -------- | ------------------------------------------------------------------- | ----------------------------- |
| upstream | False | Upstream | Configuration of the [Upstream](./architecture-design/upstream.md). | |
| upstream_id | False | Upstream | Id of the [Upstream](architecture-design/upstream.md) service. | |
| upstream | False | Upstream | Configuration of the [Upstream](./terminology/upstream.md). | |
| upstream_id | False | Upstream | Id of the [Upstream](terminology/upstream.md) service. | |
| remote_addr | False | IP/CIDR | Filters Upstream forwards by matching with client IP. | "127.0.0.1/32" or "127.0.0.1" |
| server_addr | False | IP/CIDR | Filters Upstream forwards by matching with APISIX Server IP. | "127.0.0.1/32" or "127.0.0.1" |
| server_port | False | Integer | Filters Upstream forwards by matching with APISIX Server port. | 9090 |

View File

@ -43,7 +43,7 @@ To enable parameter matching in plugin's control API, add `router: 'radixtree_ur
## Control API Added via Plugins
[Plugins](./architecture-design/plugin.md) can be enabled to add its control API.
[Plugins](./terminology/plugin.md) can be enabled to add its control API.
Some Plugins have their own control APIs. See the documentation of the specific Plugin to learn more.
@ -210,7 +210,7 @@ Triggers a full garbage collection in the HTTP subsystem.
Introduced in [v3.0](https://github.com/apache/apisix/releases/tag/3.0).
Returns all configured [Routes](./architecture-design/route.md):
Returns all configured [Routes](./terminology/route.md):
```json
[

View File

@ -202,7 +202,7 @@ This response indicates that APISIX is running successfully:
From the previous step, we have a running instance of APISIX in Docker. Now let's create a Route.
APISIX provides a powerful [Admin API](./admin-api.md) and [APISIX Dashboard](https://github.com/apache/apisix-dashboard). Here, we will use the Admin API to create a Route and connect it to an [Upstream](./architecture-design/upstream.md) service. When a request arrives, APISIX will forward the request to the specified Upstream service.
APISIX provides a powerful [Admin API](./admin-api.md) and [APISIX Dashboard](https://github.com/apache/apisix-dashboard). Here, we will use the Admin API to create a Route and connect it to an [Upstream](./terminology/upstream.md) service. When a request arrives, APISIX will forward the request to the specified Upstream service.
We will configure the Route so that APISIX can forward the request to the corresponding Upstream service:

View File

@ -31,7 +31,7 @@ description: This document contains information about the Apache APISIX basic-au
The `basic-auth` Plugin is used to add [basic access authentication](https://en.wikipedia.org/wiki/Basic_access_authentication) to a Route or a Service.
This works well with a [Consumer](../architecture-design/consumer.md). Consumers of the API can then add their key to the header to authenticate their requests.
This works well with a [Consumer](../terminology/consumer.md). Consumers of the API can then add their key to the header to authenticate their requests.
## Attributes

View File

@ -31,7 +31,7 @@ description: This document contains information about the Apache APISIX key-auth
The `key-auth` Plugin is used to add an authentication key (API key) to a Route or a Service.
This works well with a [Consumer](../architecture-design/consumer.md). Consumers of the API can then add their key to the query string or the header to authenticate their requests.
This works well with a [Consumer](../terminology/consumer.md). Consumers of the API can then add their key to the query string or the header to authenticate their requests.
## Attributes

View File

@ -29,7 +29,7 @@ This represents the configuration of the plugins that are executed during the HT
While configuring the same plugin, only one copy of the configuration is valid. The order of precedence is always `Consumer` > `Route` > `Service`.
While [configuring APISIX](./apisix.md#configuring-apisix), you can declare the Plugins that are supported by the local APISIX node. This acts as a whitelisting mechanism as Plugins that are not in this whitelist will be automatically ignored. So, this feature can be used to temporarily turn off/turn on specific plugins.
While [configuring APISIX](./architecture-design/apisix.md#configuring-apisix), you can declare the Plugins that are supported by the local APISIX node. This acts as a whitelisting mechanism as Plugins that are not in this whitelist will be automatically ignored. So, this feature can be used to temporarily turn off/turn on specific plugins.
## Adding a Plugin

View File

@ -83,7 +83,7 @@ A/B 测试、金丝雀发布(灰度发布)、蓝绿部署、限流限速、
- **全动态能力**
- [热更新和热插件](architecture-design/plugin.md):无需重启服务,就可以持续更新配置和插件。
- [热更新和热插件](terminology/plugin.md):无需重启服务,就可以持续更新配置和插件。
- [代理请求重写](plugins/proxy-rewrite.md):支持重写请求上游的`host`、`uri`、`schema`、`enable_websocket`、`headers`信息。
- [输出内容重写](plugins/response-rewrite.md):支持自定义修改返回内容的 `status code`、`body`、`headers`。
- [Serverless](plugins/serverless.md):在 APISIX 的每一个阶段,你都可以添加并调用自己编写的函数。
@ -139,7 +139,7 @@ A/B 测试、金丝雀发布(灰度发布)、蓝绿部署、限流限速、
- 版本控制:支持操作的多次回滚。
- CLI使用命令行来启动、关闭和重启 APISIX。
- [单机模式](stand-alone.md):支持从本地配置文件中加载路由规则,在 kubernetes(k8s) 等环境下更友好。
- [全局规则](architecture-design/global-rule.md):允许对所有请求执行插件,比如黑白名单、限流限速等。
- [全局规则](terminology/global-rule.md):允许对所有请求执行插件,比如黑白名单、限流限速等。
- 高性能:在单核上 QPS 可以达到 18k同时延迟只有 0.2 毫秒。
- [故障注入](plugins/fault-injection.md)
- [REST Admin API](admin-api.md):使用 REST Admin API 来控制 Apache APISIX默认只允许 127.0.0.1 访问,你可以修改 `conf/config.yaml` 中的 `allow_admin` 字段,指定允许调用 Admin API 的 IP 列表。同时需要注意的是Admin API 使用 key auth 来校验调用者身份,**在部署前需要修改 `conf/config.yaml` 中的 `admin_key` 字段,来保证安全。**
@ -182,7 +182,7 @@ A/B 测试、金丝雀发布(灰度发布)、蓝绿部署、限流限速、
4. 插件二次开发
可以参考[插件开发指南](plugin-develop.md),以及示例插件 `example-plugin` 的代码实现。
阅读[插件概念](architecture-design/plugin.md) 会帮助你学到更多关于插件的知识。
阅读[插件概念](terminology/plugin.md) 会帮助你学到更多关于插件的知识。
更多文档请参考 [Apache APISIX 文档站](https://apisix.apache.org/docs/apisix/getting-started/)。

View File

@ -23,7 +23,7 @@ title: Admin API
## 描述
Admin API 是为 Apache APISIX 服务的一组 API我们可以将参数传递给 Admin API 以控制 APISIX 节点。更好地了解其工作原理,请参阅 [architecture-design](./architecture-design/apisix.md) 中的文档。
Admin API 是为 Apache APISIX 服务的一组 API我们可以将参数传递给 Admin API 以控制 APISIX 节点。更好地了解其工作原理,请参阅 [Architecture Design](./architecture-design/apisix.md) 中的文档。
启动 Apache APISIX 时,默认情况下 Admin API 将监听 `9080` 端口HTTPS 的 `9443` 端口)。您可以通过修改 [conf/config.yaml](https://github.com/apache/apisix/blob/master/conf/config.yaml) 文件来改变默认监听的端口。
@ -59,14 +59,14 @@ Admin API 是为 Apache APISIX 服务的一组 API我们可以将参数传递
| 名字 | 可选项 | 类型 | 说明 | 示例 |
| ---------------- | ---------------------------------- | -------- |---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| ---------------------------------------------------- |
| uri | 必选,不能与 `uris` 一起使用 | 匹配规则 | 除了如 `/foo/bar`、`/foo/gloo` 这种全量匹配外,使用不同 [Router](architecture-design/router.md) 还允许更高级匹配,更多见 [Router](architecture-design/router.md)。 | "/hello" |
| uri | 必选,不能与 `uris` 一起使用 | 匹配规则 | 除了如 `/foo/bar`、`/foo/gloo` 这种全量匹配外,使用不同 [Router](terminology/router.md) 还允许更高级匹配,更多见 [Router](terminology/router.md)。 | "/hello" |
| uris | 必选,不能与 `uri` 一起使用 | 匹配规则 | 非空数组形式,可以匹配多个 `uri` | ["/hello", "/world"] |
| plugins | 可选 | Plugin | 详见 [Plugin](architecture-design/plugin.md) | |
| script | 可选 | Script | 详见 [Script](architecture-design/script.md) | |
| upstream | 可选 | Upstream | 启用的 Upstream 配置,详见 [Upstream](architecture-design/upstream.md) | |
| upstream_id | 可选 | Upstream | 启用的 upstream id详见 [Upstream](architecture-design/upstream.md) | |
| service_id | 可选 | Service | 绑定的 Service 配置,详见 [Service](architecture-design/service.md) | |
| plugin_config_id | 可选,无法跟 script 一起配置 | Plugin | 绑定的 Plugin config 配置,详见 [Plugin config](architecture-design/plugin-config.md) | |
| plugins | 可选 | Plugin | 详见 [Plugin](terminology/plugin.md) | |
| script | 可选 | Script | 详见 [Script](terminology/script.md) | |
| upstream | 可选 | Upstream | 启用的 Upstream 配置,详见 [Upstream](terminology/upstream.md) | |
| upstream_id | 可选 | Upstream | 启用的 upstream id详见 [Upstream](terminology/upstream.md) | |
| service_id | 可选 | Service | 绑定的 Service 配置,详见 [Service](terminology/service.md) | |
| plugin_config_id | 可选,无法跟 script 一起配置 | Plugin | 绑定的 Plugin config 配置,详见 [Plugin config](terminology/plugin-config.md) | |
| name | 可选 | 辅助 | 标识路由名称 | route-xxxx |
| desc | 可选 | 辅助 | 标识描述、使用场景等。 | 路由 xxxx |
| host | 可选,不能与 `hosts` 一起使用 | 匹配规则 | 当前请求域名,比如 `foo.com`;也支持泛域名,比如 `*.foo.com`。 | "foo.com" |
@ -303,9 +303,9 @@ HTTP/1.1 200 OK
| 名字 | 可选项 | 类型 | 说明 | 示例 |
| ---------------- | ---------------------------------- | -------- | ---------------------------------------------------------------------- | ------------------------------------------------ |
| plugins | 可选 | Plugin | 详见 [Plugin](architecture-design/plugin.md) | |
| upstream | upstream 或 upstream_id 两个选一个 | Upstream | 启用的 Upstream 配置,详见 [Upstream](architecture-design/upstream.md) | |
| upstream_id | upstream 或 upstream_id 两个选一个 | Upstream | 启用的 upstream id详见 [Upstream](architecture-design/upstream.md) | |
| plugins | 可选 | Plugin | 详见 [Plugin](terminology/plugin.md) | |
| upstream | upstream 或 upstream_id 两个选一个 | Upstream | 启用的 Upstream 配置,详见 [Upstream](terminology/upstream.md) | |
| upstream_id | upstream 或 upstream_id 两个选一个 | Upstream | 启用的 upstream id详见 [Upstream](terminology/upstream.md) | |
| name | 可选 | 辅助 | 标识服务名称。 | |
| desc | 可选 | 辅助 | 服务描述、使用场景等。 | |
| labels | 可选 | 匹配规则 | 标识附加属性的键值对 | {"version":"v2","build":"16","env":"production"} |
@ -837,7 +837,7 @@ ssl 对象 json 配置内容:
| 名字 | 可选项 | 类型 | 说明 | 示例 |
| ----------- | ------ | ------ | --------------------------------------------- | ---------- |
| plugins | 必需 | Plugin | 详见 [Plugin](architecture-design/plugin.md) | |
| plugins | 必需 | Plugin | 详见 [Plugin](terminology/plugin.md) | |
| create_time | 可选 | 辅助 | 单位为秒的 epoch 时间戳,如果不指定则自动创建 | 1602883670 |
| update_time | 可选 | 辅助 | 单位为秒的 epoch 时间戳,如果不指定则自动创建 | 1602883670 |
@ -864,7 +864,7 @@ ssl 对象 json 配置内容:
| 名字 | 可选项 | 类型 | 说明 | 示例 |
|---------|---------|----|-----------|----|
|plugins | 必需 |Plugin| 详见 [Plugin](architecture-design/plugin.md) ||
|plugins | 必需 |Plugin| 详见 [Plugin](terminology/plugin.md) ||
|desc | 可选 | 辅助 | 标识描述、使用场景等 |customer xxxx|
|labels | 可选 | 辅助 | 标识附加属性的键值对 |{"version":"v2","build":"16","env":"production"}|
|create_time| 可选 | 辅助 | 单位为秒的 epoch 时间戳,如果不指定则自动创建 |1602883670|
@ -973,8 +973,8 @@ $ curl "http://127.0.0.1:9080/apisix/admin/plugins/key-auth" -H 'X-API-KEY:
| 名字 | 可选项 | 类型 | 说明 | 示例 |
| ---------------- | ------| -------- | ------| -----|
| upstream | 可选 | Upstream | 启用的 Upstream 配置,详见 [Upstream](architecture-design/upstream.md) | |
| upstream_id | 可选 | Upstream | 启用的 upstream id详见 [Upstream](architecture-design/upstream.md) | |
| upstream | 可选 | Upstream | 启用的 Upstream 配置,详见 [Upstream](terminology/upstream.md) | |
| upstream_id | 可选 | Upstream | 启用的 upstream id详见 [Upstream](terminology/upstream.md) | |
| remote_addr | 可选 | IP/CIDR | 过滤选项:如果客户端 IP 匹配,则转发到上游 | "127.0.0.1/32" 或 "127.0.0.1" |
| server_addr | 可选 | IP/CIDR | 过滤选项:如果 APISIX 服务器 IP 与 server_addr 匹配,则转发到上游 | "127.0.0.1/32" 或 "127.0.0.1" |
| server_port | 可选 | 整数 | 过滤选项:如果 APISIX 服务器 port 与 server_port 匹配,则转发到上游 | 9090 |

View File

@ -134,7 +134,7 @@ curl "http://127.0.0.1:9080/apisix/admin/services/" -H 'X-API-KEY: edd1c9f034335
Apache APISIX 提供了强大的 [Admin API](./admin-api.md) 和 [Dashboard](https://github.com/apache/apisix-dashboard) 可供我们使用。在本文中,我们使用 Admin API 来做演示。
我们可以创建一个 [Route](./architecture-design/route.md) 并与上游服务(通常也被称为 [Upstream](./architecture-design/upstream.md) 或后端服务)绑定,当一个 `请求Request` 到达 Apache APISIX 时Apache APISIX 就会明白这个请求应该转发到哪个上游服务中。
我们可以创建一个 [Route](./terminology/route.md) 并与上游服务(通常也被称为 [Upstream](./terminology/upstream.md) 或后端服务)绑定,当一个 `请求Request` 到达 Apache APISIX 时Apache APISIX 就会明白这个请求应该转发到哪个上游服务中。
因为我们为 Route 对象配置了匹配规则,所以 Apache APISIX 可以将请求转发到对应的上游服务。以下代码会创建一个示例 Route 配置:
@ -194,7 +194,7 @@ curl "http://127.0.0.1:9080/apisix/admin/upstreams/1" -H "X-API-KEY: edd1c9f0343
-->
:::note 注意
创建上游服务实际上并不是必需的,因为我们可以使用 [插件](./architecture-design/plugin.md) 拦截请求,然后直接响应。但在本指南中,我们假设需要设置至少一个上游服务。
创建上游服务实际上并不是必需的,因为我们可以使用 [插件](./terminology/plugin.md) 拦截请求,然后直接响应。但在本指南中,我们假设需要设置至少一个上游服务。
:::
### 绑定路由与上游服务
@ -228,9 +228,9 @@ curl -i -X GET "http://127.0.0.1:9080/get?foo1=bar1&foo2=bar2" -H "Host: httpbin
我们在第二步中创建的路由是公共的,只要知道 Apache APISIX 对外暴露的地址,**任何人** 都可以访问这个上游服务,这种访问方式没有保护措施,存在一定的安全隐患。在实际应用场景中,我们需要为路由添加身份验证。
现在我们希望只有特定的用户 `John` 可以访问这个上游服务,需要使用 [消费者Consumer](./architecture-design/consumer.md) 和 [插件Plugin](./architecture-design/plugin.md) 来实现身份验证。
现在我们希望只有特定的用户 `John` 可以访问这个上游服务,需要使用 [消费者Consumer](./terminology/consumer.md) 和 [插件Plugin](./terminology/plugin.md) 来实现身份验证。
首先,让我们用 [key-auth](./plugins/key-auth.md) 插件创建一个 [消费者Consumer](./architecture-design/consumer.md) `John`,我们需要提供一个指定的密钥:
首先,让我们用 [key-auth](./plugins/key-auth.md) 插件创建一个 [消费者Consumer](./terminology/consumer.md) `John`,我们需要提供一个指定的密钥:
```bash
curl "http://127.0.0.1:9080/apisix/admin/consumers" -H "X-API-KEY: edd1c9f034335f136f87ad84b625c8f1" -X PUT -d '

View File

@ -31,7 +31,7 @@ description: 本文介绍了关于 Apache APISIX `basic-auth` 插件的基本信
使用 `basic-auth` 插件可以将 [Basic_access_authentication](https://en.wikipedia.org/wiki/Basic_access_authentication) 添加到 Route 或 Service 中。
该插件需要与 [Consumer](../architecture-design/consumer.md) 一起使用。API 的消费者可以将它们的密钥添加到请求头中以验证其请求。
该插件需要与 [Consumer](../terminology/consumer.md) 一起使用。API 的消费者可以将它们的密钥添加到请求头中以验证其请求。
## 属性

View File

@ -31,7 +31,7 @@ description: 本文介绍了关于 Apache APISIX `key-auth` 插件的基本信
`key-auth` 插件用于向 Route 或 Service 添加身份验证密钥API key
它需要与 [Consumer](../architecture-design/consumer.md) 一起配合才能工作,通过 Consumer 将其密钥添加到查询字符串参数或标头中以验证其请求。
它需要与 [Consumer](../terminology/consumer.md) 一起配合才能工作,通过 Consumer 将其密钥添加到查询字符串参数或标头中以验证其请求。
## 属性