From 651a4163928aa00c4e179584f93e3e9746121b12 Mon Sep 17 00:00:00 2001 From: yzeng25 Date: Fri, 9 Jul 2021 15:22:34 +0800 Subject: [PATCH] docs: update CN and EN how-to-build document --- docs/en/latest/getting-started.md | 2 +- docs/en/latest/how-to-build.md | 211 ++++++++++++++++++++---------- docs/zh/latest/getting-started.md | 4 +- docs/zh/latest/how-to-build.md | 203 +++++++++++++++++++--------- 4 files changed, 281 insertions(+), 139 deletions(-) diff --git a/docs/en/latest/getting-started.md b/docs/en/latest/getting-started.md index d5956e0fc8ea..216a0f04e16a 100644 --- a/docs/en/latest/getting-started.md +++ b/docs/en/latest/getting-started.md @@ -75,7 +75,7 @@ curl --location --request GET "http://httpbin.org/get?foo1=bar1&foo2=bar2" - We use the [curl](https://curl.se/docs/manpage.html) command for API testing. You can also use other tools such as [Postman](https://www.postman.com/) for testing. :::note Note -If you already have Apache APISIX installed, please skip Step 1, and go to [Step 2](getting-started.md#Step-2-Create-a-Route) directly. +If you already have Apache APISIX installed, please skip Step 1, and go to [Step 2](getting-started.md#step-2-create-a-route) directly. ::: ## Step 1: Install Apache APISIX diff --git a/docs/en/latest/how-to-build.md b/docs/en/latest/how-to-build.md index 6d19ffcaf96b..1d3f7e323c99 100644 --- a/docs/en/latest/how-to-build.md +++ b/docs/en/latest/how-to-build.md @@ -21,20 +21,50 @@ title: How to build Apache APISIX # --> -## 1. Install dependencies +## Step 1: Install dependencies -The runtime environment for Apache APISIX requires Nginx and etcd. +The Apache APISIX runtime environment requires dependencies on NGINX and etcd. -So before installation, please follow the different operating systems [install Dependencies](install-dependencies.md). +Before installing Apache APISIX, please install dependencies according to the operating system you are using. We provide the dependencies installation instructions for **CentOS7**, **Fedora 31 & 32**, **Ubuntu 16.04 & 18.04**, **Debian 9 & 10**, and **MacOS**, please refer to [Install Dependencies](install-dependencies.md) for more details. -The Docker / Helm Chart installation may already contain the required Nginx or etcd. -Please refer to their own documentations. +## Step 2: Install Apache APISIX -## 2. Install Apache APISIX +You can install Apache APISIX via source release packages, RPM package, Docker and Helm Chart. Please choose one from the following options. -You can install Apache APISIX in a variety of ways, including source code packages, Docker, and Helm Chart. +### Installation via Source Release Package -### Installation via RPM package (CentOS 7) +1. Create a directory named `apisix-2.7`. + + ```shell + mkdir apisix-2.7 + ``` + +2. Download Apache APISIX Release source package. + + ```shell + wget https://downloads.apache.org/apisix/2.7/apache-apisix-2.7-src.tgz + ``` + + You can also download the Apache APISIX Release source package from the Apache APISIX website. The [Apache APISIX Official Website - Download Page](https://apisix.apache.org/downloads/) also provides source packages for Apache APISIX, APISIX Dashboard and APISIX Ingress Controller. + +3. Unzip the Apache APISIX Release source package. + + ```shell + tar zxvf apache-apisix-2.7-src.tgz -C apisix-2.7 + ``` + +4. Install the runtime dependent Lua libraries. + + ```shell + # Switch to the apisix-2.7 directory + cd apisix-2.7 + # Create dependencies + make deps + ``` + +### Installation via RPM Package(CentOS 7) + +This installation method is suitable for CentOS 7, please run the following command to install Apache APISIX. ```shell sudo yum install -y https://github.com/apache/apisix/releases/download/2.7/apisix-2.7-0.x86_64.rpm @@ -42,88 +72,116 @@ sudo yum install -y https://github.com/apache/apisix/releases/download/2.7/apisi ### Installation via Docker -See https://hub.docker.com/r/apache/apisix +Please refer to: [Installing Apache APISIX with Docker](https://hub.docker.com/r/apache/apisix). ### Installation via Helm Chart -See https://github.com/apache/apisix-helm-chart +Please refer to: [Installing Apache APISIX with Helm Chart](https://github.com/apache/apisix-helm-chart). + +## Step 3: Manage Apache APISIX Server + +We can initialize dependencies, start service, and stop service with commands in the Apache APISIX directory, we can also view all commands and their corresponding functions with the `make help` command. -### Installation via source release +### Initializing Dependencies -You need to download the Apache source release first: +Run the following command to initialize the NGINX configuration file and etcd. ```shell -$ mkdir apisix-2.7 -$ wget https://downloads.apache.org/apisix/2.7/apache-apisix-2.7-src.tgz -$ tar zxvf apache-apisix-2.7-src.tgz -C apisix-2.7 +# initialize NGINX config file and etcd +make init ``` -Install the Lua libraries that the runtime depends on: +### Start Apache APISIX + +Run the following command to start Apache APISIX. ```shell -cd apisix-2.7 -make deps +# start Apache APISIX server +make run ``` -## 3. Manage (start/stop) APISIX Server +### Stop Apache APISIX + +Both `make quit` and `make stop` can stop Apache APISIX. The main difference is that `make quit` stops Apache APISIX gracefully, while `make stop` stops Apache APISIX immediately. + +It is recommended to use gracefully stop command `make quit` because it ensures that Apache APISIX will complete all the requests it has received before stopping down. In contrast, `make stop` will trigger a forced shutdown, it stops Apache APISIX immediately, in which case the incoming requests will not be processed before the shutdown. -We can start the APISIX server by command `make run` in APISIX home folder, -or we can stop APISIX server by command `make stop`. +The command to perform a graceful shutdown is shown below. ```shell -# init nginx config file and etcd -$ make init +# stop Apache APISIX server gracefully +make quit +``` -# start APISIX server -$ make run +The command to perform a forced shutdown is shown below. -# stop APISIX server gracefully -$ make quit +```shell +# stop Apache APISIX server immediately +make stop +``` -# stop APISIX server immediately -$ make stop +### View Other Operations +Run the `make help` command to see the returned results and get commands and descriptions of other operations. + +```shell # more actions find by `help` -$ make help +make help ``` -Environment variable can be used to configure APISIX. Please take a look at `conf/config.yaml` to -see how to do it. +## Step 4: Run Test Cases + +1. Install `cpanminus`, the package manager for `perl`. + +2. Then install the test-nginx dependencies via `cpanm`: + + ```shell + sudo cpanm --notest Test::Nginx IPC::Run > build.log 2>&1 || (cat build.log && exit 1) + ``` -## 4. Test +3. Run the `git clone` command to clone the latest source code locally, please use the version we forked out: -1. Install perl's package manager `cpanminus` first -2. Then install `test-nginx`'s dependencies via `cpanm`::`sudo cpanm --notest Test::Nginx IPC::Run > build.log 2>&1 || (cat build.log && exit 1)` -3. Clone source code:`git clone https://github.com/iresty/test-nginx.git`. Note that we should use our fork. -4. Load the `test-nginx` library with perl's `prove` command and run the test cases in the `/t` directory: - * Set PERL5LIB for perl module: `export PERL5LIB=.:$PERL5LIB` - * Run the test cases: `make test` - * To set the path of nginx to run the test cases: `TEST_NGINX_BINARY=/usr/local/bin/openresty prove -Itest-nginx/lib -r t` - * Some tests depend on external services and modified system configuration. If you want to setup a local CI environment, - you can refer to `ci/linux_openresty_common_runner.sh`. + ```shell + git clone https://github.com/iresty/test-nginx.git + ``` + +4. Load the test-nginx library with the `prove` command in `perl` and run the test case set in the `/t` directory. + + - Append the current directory to the perl module directory: `export PERL5LIB=.:$PERL5LIB`, then run `make test` command. + + - Or you can specify the NGINX binary path by running this command: `TEST_NGINX_BINARY=/usr/local/bin/openresty prove -Itest-nginx/lib -r t`. + + :::note Note + Some of the tests rely on external services and system configuration modification. For a complete test environment build, you can refer to `ci/linux_openresty_common_runner.sh`. + ::: ### Troubleshoot Testing -**Set Nginx Path** +**Configuring NGINX Path** -- If you run in to an issue `Error unknown directive "lua_package_path" in /API_ASPIX/apisix/t/servroot/conf/nginx.conf` -make sure to set openresty as default nginx. And export the path as below. +The solution to the `Error unknown directive "lua_package_path" in /API_ASPIX/apisix/t/servroot/conf/nginx.conf` error is as shown below. -* export PATH=/usr/local/openresty/nginx/sbin:$PATH - - Linux default installation path: - * export PATH=/usr/local/openresty/nginx/sbin:$PATH - - OSx default installation path via homebrew: - * export PATH=/usr/local/opt/openresty/nginx/sbin:$PATH +Ensure that Openresty is set to the default NGINX, and export the path as follows: -**Run Individual Test Cases** +* `export PATH=/usr/local/openresty/nginx/sbin:$PATH` + * Linux default installation path: + * `export PATH=/usr/local/openresty/nginx/sbin:$PATH` + * MacOS default installation path via homebrew: + * `export PATH=/usr/local/opt/openresty/nginx/sbin:$PATH` -- Use the following command to run test cases constrained to a file: - - prove -Itest-nginx/lib -r t/plugin/openid-connect.t +**Run a Single Test Case** -## 5. Update Admin API token to protect Apache APISIX +Run the specified test case using the following command. -Changes the `apisix.admin_key` in the file `conf/config.yaml` and restart the service. -Here is an example: +```shell +prove -Itest-nginx/lib -r t/plugin/openid-connect.t +``` + +## Step 5: Update Admin API token to Protect Apache APISIX + +You need to modify the Admin API key to protect Apache APISIX. + +Please modify `apisix.admin_key` in `conf/config.yaml` and restart the service as shown below. ```yaml apisix: @@ -131,21 +189,35 @@ apisix: admin_key - name: "admin" - key: abcdefghabcdefgh + key: abcdefghabcdefgh # Modify the original key to abcdefghabcdefgh role: admin ``` -When calling the Admin API, `key` can be used as a token. +When we need to access the Admin API, we can use the key above, as shown below. + +```shell +curl http://127.0.0.1:9080/apisix/admin/routes?api_key=abcdefghabcdefgh -i +``` + +The status code 200 in the returned result indicates that the access was successful, as shown below. ```shell -$ curl http://127.0.0.1:9080/apisix/admin/routes?api_key=abcdefghabcdefgh -i HTTP/1.1 200 OK Date: Fri, 28 Feb 2020 07:48:04 GMT Content-Type: text/plain ... ... {"node":{...},"action":"get"} +``` -$ curl http://127.0.0.1:9080/apisix/admin/routes?api_key=abcdefghabcdefgh-invalid -i +At this point, if the key you enter does not match the value of `apisix.admin_key` in `conf/config.yaml`, for example, we know that the correct key is `abcdefghabcdefgh`, but we enter an incorrect key, such as `wrong- key`, as shown below. + +```shell +curl http://127.0.0.1:9080/apisix/admin/routes?api_key=wrong-key -i +``` + +The status code `401` in the returned result indicates that the access failed because the `key` entered was incorrect and did not pass authentication, triggering an `Unauthorized` error, as shown below. + +```shell HTTP/1.1 401 Unauthorized Date: Fri, 28 Feb 2020 08:17:58 GMT Content-Type: text/html @@ -153,20 +225,17 @@ Content-Type: text/html {"node":{...},"action":"get"} ``` -## 6. Build OpenResty for APISIX +## Step 6: Build OpenResty for Apache APISIX -Some features require you to build OpenResty with extra Nginx modules. -If you need those features, you can build OpenResty with -[this build script](https://raw.githubusercontent.com/api7/apisix-build-tools/master/build-apisix-openresty.sh). +Some features require additional NGINX modules to be introduced into OpenResty. If you need these features, you can build OpenResty with [this script](https://raw.githubusercontent.com/api7/apisix-build-tools/master/build-apisix-openresty.sh). -## 7. Add systemd unit file for APISIX +## Step 7: Add Systemd Unit File for Apache APISIX -If you install APISIX with rpm package, the unit file is installed automatically, and you could directly do +If you are using CentOS 7 and you installed Apache APISIX via the RPM package in step 2, the configuration file is already in place automatically and you can run the following command directly. -``` -$ systemctl start apisix -$ systemctl stop apisix -$ systemctl enable apisix +```shell +systemctl start apisix +systemctl stop apisix ``` -If installed in other methods, you could refer to [the unit file template](https://github.com/api7/apisix-build-tools/blob/master/usr/lib/systemd/system/apisix.service), modify if needed, and place it as `/usr/lib/systemd/system/apisix.service`. +If you installed Apache APISIX by other methods, you can refer to the [configuration file template](https://github.com/api7/apisix-build-tools/blob/master/usr/lib/systemd/system/apisix.service) for modification and put it in the `/usr/lib/systemd/system/apisix.service` path. diff --git a/docs/zh/latest/getting-started.md b/docs/zh/latest/getting-started.md index 150e014e9e00..0d2cde814717 100644 --- a/docs/zh/latest/getting-started.md +++ b/docs/zh/latest/getting-started.md @@ -25,7 +25,7 @@ title: 快速入门指南 本文是 Apache APISIX 的快速入门指南。快速入门分为三个步骤: -1. 通过[Docker Compose](https://docs.docker.com/compose/) 安装 Apache APISIX。 +1. 通过 [Docker Compose](https://docs.docker.com/compose/) 安装 Apache APISIX。 1. 创建路由并绑定上游。 1. 使用命令行语句 `curl` 验证绑定之后返回的结果是否符合预期。 @@ -75,7 +75,7 @@ curl --location --request GET "http://httpbin.org/get?foo1=bar1&foo2=bar2" - 本文使用 [curl](https://curl.se/docs/manpage.html) 命令行进行 API 测试。您也可以使用其他工具例如 [Postman](https://www.postman.com/)等,进行测试。 :::note 说明 -如果您已经安装了 Apache APISIX,请直接阅读 [第二步](getting-started.md#第二步-创建一个-Route) +如果您已经安装了 Apache APISIX,请直接阅读 [第二步](getting-started.md#第二步:创建路由) ::: ## 第一步:安装 Apache APISIX diff --git a/docs/zh/latest/how-to-build.md b/docs/zh/latest/how-to-build.md index 3c74de261309..381718638777 100644 --- a/docs/zh/latest/how-to-build.md +++ b/docs/zh/latest/how-to-build.md @@ -21,103 +21,165 @@ title: 如何构建 Apache APISIX # --> -## 1. 安装依赖 +## 步骤1:安装依赖 -Apache APISIX 的运行环境需要 Nginx 和 etcd, +Apache APISIX 的运行环境需要依赖 NGINX 和 etcd,所以在安装 Apache APISIX 前,请根据您使用的操作系统安装对应的依赖。我们提供了 **CentOS7** 、**Fedora 31 & 32** 、**Ubuntu 16.04 & 18.04** 、 **Debian 9 & 10** 和 **MacOS** 上的依赖安装操作步骤,详情请参考[安装依赖](install-dependencies.md)。 -所以在安装前,请根据不同的操作系统来[安装依赖](install-dependencies.md)。 +通过 Docker 或 Helm Chart 安装 Apache APISIX 时,已经包含了所需的 NGINX 和 etcd,请参照各自对应的文档。 -通过 Docker / Helm Chart 安装时可能已经包含了所需的 Nginx 和 etcd。 -请参照各自对应的文档。 +## 步骤2:安装 Apache APISIX -## 2. 安装 Apache APISIX +你可以通过源码包、RPM 包、Docker、Helm Chart 等多种方式来安装 Apache APISIX。请在以下选项中选择其中一种执行。 -你可以通过源码包、Docker、Helm Chart 等多种方式来安装 Apache APISIX。 +### 通过源码包安装 + +1. 创建一个名为 `apisix-2.7` 的目录。 + + ```shell + mkdir apisix-2.7 + ``` + +2. 下载 Apache APISIX Release 源码包: + + ```shell + wget https://downloads.apache.org/apisix/2.7/apache-apisix-2.7-src.tgz + ``` + + 您也可以通过 Apache APISIX 官网下载 Apache APISIX Release 源码包。 Apache APISIX 官网也提供了 Apache APISIX、APISIX Dashboard 和 APISIX Ingress Controller 的源码包,详情请参考[Apache APISIX 官网-下载页](https://apisix.apache.org/zh/downloads)。 + +3. 解压 Apache APISIX Release 源码包: + + ```shell + tar zxvf apache-apisix-2.7-src.tgz -C apisix-2.7 + ``` + +4. 安装运行时依赖的 Lua 库: + + ```shell + # 切换到 apisix-2.7 目录 + cd apisix-2.7 + # 创建依赖 + make deps + ``` ### 通过 RPM 包安装(CentOS 7) +这种安装方式适用于 CentOS 7 操作系统,请运行以下命令安装 Apache APISIX。 + ```shell sudo yum install -y https://github.com/apache/apisix/releases/download/2.7/apisix-2.7-0.x86_64.rpm ``` ### 通过 Docker 安装 -见 https://hub.docker.com/r/apache/apisix +详情请参考:[使用 Docker 安装 Apache APISIX](https://hub.docker.com/r/apache/apisix)。 ### 通过 Helm Chart 安装 -见 https://github.com/apache/apisix-helm-chart +详情请参考:[使用 Helm Chart 安装 Apache APISIX](https://github.com/apache/apisix-helm-chart)。 -### 通过源码包安装 +## 步骤3:管理 Apache APISIX 服务 + +我们可以在 Apache APISIX 的目录下使用命令初始化依赖、启动服务和停止服务,也可以通过 `make help` 命令查看所有命令和对应的功能。 -你需要先下载 Apache Release 源码包: +### 初始化依赖 + +运行以下命令初始化 NGINX 配置文件和 etcd。 ```shell -$ mkdir apisix-2.7 -$ wget https://downloads.apache.org/apisix/2.7/apache-apisix-2.7-src.tgz -$ tar zxvf apache-apisix-2.7-src.tgz -C apisix-2.7 +# initialize NGINX config file and etcd +make init ``` -安装运行时依赖的 Lua 库: +### 启动 Apache APISIX +运行以下命令启动 Apache APISIX。 + +```shell +# start Apache APISIX server +make run ``` -cd apisix-2.7 -make deps -``` -## 3. 管理(启动、关闭等)APISIX 服务 +### 停止运行 Apache APISIX + +优雅停机 `make quit` 和强制停机 `make stop`都可以停止运行 Apache APISIX。建议您优先选择优雅停机的方式停止 Apache APISIX,因为这种停止方式能够保证 Apache APISIX 完成了已经接受到的请求之后再停止;而强制停机则是立即停止 Apache APISIX,在这种情况下,Apache APISIX 接收到但未完成的请求会随着强制停机一并停止。 -我们可以在 apisix 的目录下用 `make run` 命令来启动服务,或者用 `make stop` 方式关闭服务。 +执行优雅停机的命令如下所示: ```shell -# init nginx config file and etcd -$ make init +# stop Apache APISIX server gracefully +make quit +``` -# start APISIX server -$ make run +执行强制停机的命令如下所示: -# stop APISIX server gracefully -$ make quit +```shell +# stop Apache APISIX server immediately +make stop +``` + +### 查看其他操作 -# stop APISIX server immediately -$ make stop +运行 `make help` 命令,查看返回结果,获取其他操作的命令和描述。 +```shell # more actions find by `help` -$ make help +make help ``` -## 4. 运行测试案例 +## 步骤4:运行测试案例 + +1. 安装 `perl` 的包管理器 `cpanminus`。 + +2. 然后通过 `cpanm` 来安装 test-nginx 的依赖: -1. 先安装 perl 的包管理器 cpanminus -2. 然后通过 cpanm 来安装 test-nginx 的依赖:`sudo cpanm --notest Test::Nginx IPC::Run > build.log 2>&1 || (cat build.log && exit 1)` -3. 然后 clone 最新的源码:`git clone https://github.com/iresty/test-nginx.git`。注意使用我们 fork 出来的版本。 -4. 通过 perl 的 `prove` 命令来加载 test-nginx 的库,并运行 `/t` 目录下的测试案例集: - * 追加当前目录到perl模块目录: `export PERL5LIB=.:$PERL5LIB` - * 直接运行:`make test` - * 指定 nginx 二进制路径:`TEST_NGINX_BINARY=/usr/local/bin/openresty prove -Itest-nginx/lib -r t` - * 部分测试需要依赖外部服务和修改系统配置。如果想要完整地构建测试环境,可以参考 `ci/linux_openresty_common_runner.sh`。 + ```shell + sudo cpanm --notest Test::Nginx IPC::Run > build.log 2>&1 || (cat build.log && exit 1) + ``` -### 疑难排解测试 +3. 运行 `git clone` 命令,将最新的源码克隆到本地,请使用我们 fork 出来的版本: -**配置 Nginx 路径** + ```shell + git clone https://github.com/iresty/test-nginx.git + ``` -如果遇到问题 `Error unknown directive "lua_package_path" in /API_ASPIX/apisix/t/servroot/conf/nginx.conf` -确保将openresty设置为默认的nginx并按如下所示导出路径。 +4. 通过 `perl` 的 `prove` 命令来加载 test-nginx 的库,并运行 `/t` 目录下的测试案例集: -* export PATH=/usr/local/openresty/nginx/sbin:$PATH + - 追加当前目录到perl模块目录: `export PERL5LIB=.:$PERL5LIB`,然后运行 `make test` 命令。 + + - 或指定 NGINX 二进制路径:`TEST_NGINX_BINARY=/usr/local/bin/openresty prove -Itest-nginx/lib -r t`。 + + :::note 说明 + 部分测试需要依赖外部服务和修改系统配置。如果想要完整地构建测试环境,可以参考 `ci/linux_openresty_common_runner.sh`。 + ::: + +### 问题排查 + +**配置 NGINX 路径** + +出现`Error unknown directive "lua_package_path" in /API_ASPIX/apisix/t/servroot/conf/nginx.conf` 报错的解决方法如下: + +确保将 Openresty 设置为默认的 NGINX,并按如下所示导出路径: + +* `export PATH=/usr/local/openresty/nginx/sbin:$PATH` * Linux 默认安装路径: - * export PATH=/usr/local/openresty/nginx/sbin:$PATH - * OSx 通过homebrew默认安装路径: - * export PATH=/usr/local/opt/openresty/nginx/sbin:$PATH + * `export PATH=/usr/local/openresty/nginx/sbin:$PATH` + * MacOS 通过 homebrew 默认安装路径: + * `export PATH=/usr/local/opt/openresty/nginx/sbin:$PATH` **运行单个测试用例** -- 使用以下命令运行指定的测试用例: - - prove -Itest-nginx/lib -r t/plugin/openid-connect.t +使用以下命令运行指定的测试用例: + +```shell +prove -Itest-nginx/lib -r t/plugin/openid-connect.t +``` + +## 步骤5:修改 Admin API key -## 5. 更新 Admin API 的 token ,保护 Apache APISIX +您需要修改 Admin API 的 key,以保护 Apache APISIX。 -修改 `conf/config.yaml` 中的 `apisix.admin_key` 并重启服务。例如下面例子: +请修改 `conf/config.yaml` 中的 `apisix.admin_key` 并重启服务,如下所示: ```yaml apisix: @@ -125,21 +187,35 @@ apisix: admin_key - name: "admin" - key: abcdefghabcdefgh + key: abcdefghabcdefgh # 将原有的 key 修改为abcdefghabcdefgh role: admin ``` -当我们需要访问 Admin API 时,就可以使用上面记录的 key 作为 token 了。 +当我们需要访问 Admin API 时,就可以使用上面记录的 key 了,如下所示: + +```shell +curl http://127.0.0.1:9080/apisix/admin/routes?api_key=abcdefghabcdefgh -i +``` + +返回结果中的状态码 200 说明访问成功,如下所示: ```shell -$ curl http://127.0.0.1:9080/apisix/admin/routes?api_key=abcdefghabcdefgh -i HTTP/1.1 200 OK Date: Fri, 28 Feb 2020 07:48:04 GMT Content-Type: text/plain ... ... {"node":{...},"action":"get"} +``` + +在这个时候,如果您输入的 key 与 `conf/config.yaml` 中 `apisix.admin_key` 的值不匹配,例如,我们已知正确的 key 是 `abcdefghabcdefgh`,但是我们选择输入一个错误的 key,例如 `wrong-key`,如下所示: + +```shell +curl http://127.0.0.1:9080/apisix/admin/routes?api_key=wrong-key -i +``` + +返回结果中的状态码 `401` 说明访问失败,原因是输入的 `key` 有误,未通过认证,触发 `Unauthorized` 错误,如下所示: -$ curl http://127.0.0.1:9080/apisix/admin/routes?api_key=abcdefghabcdefgh-invalid -i +```shell HTTP/1.1 401 Unauthorized Date: Fri, 28 Feb 2020 08:17:58 GMT Content-Type: text/html @@ -147,20 +223,17 @@ Content-Type: text/html {"node":{...},"action":"get"} ``` -## 6. 为 APISIX 构建 OpenResty +## 步骤6:为 Apache APISIX 构建 OpenResty -有些功能需要你引入额外的 Nginx 模块到 OpenResty 当中。 -如果你需要这些功能,你可以用[这个脚本](https://raw.githubusercontent.com/api7/apisix-build-tools/master/build-apisix-openresty.sh) -构建 OpenResty。 +有些功能需要引入额外的 NGINX 模块到 OpenResty 当中。如果您需要这些功能,你可以用[这个脚本](https://raw.githubusercontent.com/api7/apisix-build-tools/master/build-apisix-openresty.sh)构建 OpenResty。 -## 7. 为 APISIX 添加 systemd 配置文件 +## 步骤7:为 Apache APISIX 添加 systemd 配置文件 -如果通过 rpm 包安装 APISIX,配置文件已经自动安装到位,你可以直接运行 +如果您使用的操作系统是 CentOS 7,且在步骤 2 中通过 RPM 包安装 Apache APISIX,配置文件已经自动安装到位,你可以直接运行以下命令: -``` -$ systemctl start apisix -$ systemctl stop apisix -$ systemctl enable apisix +```shell +systemctl start apisix +systemctl stop apisix ``` -如果通过其他方法安装,可以参考[配置文件模板](https://github.com/api7/apisix-build-tools/blob/master/usr/lib/systemd/system/apisix.service)进行修改,并将其放置在 `/usr/lib/systemd/system/apisix.service`。 +如果通过其他方法安装,可以参考[配置文件模板](https://github.com/api7/apisix-build-tools/blob/master/usr/lib/systemd/system/apisix.service)进行修改,并将其放置在 `/usr/lib/systemd/system/apisix.service`路径下。