头图

https://www.bilibili.com/vide...

下面我将演示如何使用 OpenResty 实现一个“hello world”的 HTTP 接口。

screenshot 1

首先,我们要确保我们使用的是 OpenResty 的 nginx。

export PATH=/usr/local/openresty/nginx/sbin:$PATH
which nginx

screenshot 2

一般都是这个路径。

然后我们进入 home 目录。

cd ~/

在我们的例子中,创建并切换到一个名为 hello 的目录。

mkdir hello
cd hello

screenshot 5

为 OpenResty 应用程序创建模板子目录。

mkdir logs conf
ls

screenshot 6

然后让我们在“conf”子目录下创建一个简单的 nginx.conf 文件。

vim conf/nginx.conf
  1. 为了简单起见,让我们启用单个 nginx 工作进程。
  2. 我们最多启用 1024 个每工作进程的连接。
  3. 而这里我们配置一个 HTTP 服务器。
  4. 启用 reuseport 后监听 8080 端口。
  5. 最后我们给这个服务器添加一个根位置。
  6. 我们将默认的 MIME 类型设置为 text/plain。
  7. 我们嵌入一些 Lua 代码来发出一个响应体是“Hello World”。
worker_processes 1;

events {
    worker_connections 1024;
}

http {
    server {
        listen 8080 reuseport;

        location / {
            default_type text/plain;
            content_by_lua_block {
                ngx.say("Hello World")
            }
        }
    }
}

现在让我们用 -t 选项来测试配置是否正确。

nginx -p $PWD/ -t

screenshot 17

看起来很不错!

现在让我们真正启动这个 OpenResty 应用。

nginx -p $PWD/

screenshot 19

并检查 nginx 进程是否在运行。

ps aux|grep nginx|grep -v /tmp/

screenshot 20

很好啊! 它们都起来了。一个 master 进程,一个工作进程。

现在我们可以使用 curl 命令行工具向这个服务器发送一个测试的 HTTP 请求。

curl 'http://127.0.0.1:8080/'

我们确实得到了响应体 你好,世界

screenshot 23

我们也可以尝试在网络浏览器中访问 / URI。

screenshot 25

我们可以看到,它也按照预期显示“Hello World”。
如果你喜欢这个教程,请订阅这个博客网站和我们的 YouTube 频道B 站频道。谢谢!

关于本文和关联视频

本文和相关联的视频都是完全由我们的 OpenResty Demo 系统从一个极简单的剧本文件自动生成的。

关于作者

章亦春是开源项目 OpenResty® 的创始人,同时也是 OpenResty Inc. 公司的创始人和 CEO。他贡献了许多 Nginx 的第三方模块,相当多 Nginx 和 LuaJIT 核心补丁,并且设计了 OpenResty XRay 等产品。

关注我们

如果您喜欢本文,欢迎关注我们 OpenResty Inc. 公司的博客网站 。也欢迎扫码关注我们的微信公众号:

我们的微信公众号

翻译

我们提供了英文版原文和中译版(本文) 。我们也欢迎读者提供其他语言的翻译版本,只要是全文翻译不带省略,我们都将会考虑采用,非常感谢!


OpenResty技术
195 声望1.6k 粉丝

OpenResty Inc - 软件系统的实时 X 光诊断与优化。我们有顶尖技术团队,背靠快速成长的 OpenResty 开源用户群体和社区,是世界上第一家广泛应用机器编程的公司,我们的愿景是帮助所有开发与运维工程师,透视任意...