【手把手】教你OpenResty的安装和使用

导读:本篇文章讲解 【手把手】教你OpenResty的安装和使用,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

OpenResty是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。Web 开发人员可以使用 Lua 脚本语言调动 Nginx 支持的各种 C 以及 Lua 模块,更主要的是在性能方面,OpenResty可以 快速构造出足以胜任 10K 以上并发连接响应的超高性能 Web 应用系统。

1、安装OpenResty所需要的依赖库

yum install pcre-devel openssl-devel gcc curl

【手把手】教你OpenResty的安装和使用

2、下载OpenResty源码包到本地

cd /usr/local/

mkdir source

cd source/

wget https://openresty.org/download/openresty-1.19.9.1.tar.gz

【手把手】教你OpenResty的安装和使用

3、解压源码包

tar -zxvf openresty-1.19.9.1.tar.gz

【手把手】教你OpenResty的安装和使用

进入解压后的文件夹:cd openresty-1.19.9.1/

这次不用看README文件了,因为OpenResty是由中国人章亦春院士发起,可以直接去中文官网查看详细的教程OpenResty® – 中文官方站

4、编译源码及安装

./configure,执行完这步默认程序会被安装到 /usr/local/openresty/ 目录下

【手把手】教你OpenResty的安装和使用

make

【手把手】教你OpenResty的安装和使用

make install

【手把手】教你OpenResty的安装和使用

5、启动OpenResty

进入到OpenResty安装目录下:cd /usr/local/openresty/

【手把手】教你OpenResty的安装和使用

看到OpenResty已经将nginx和lua集成好了,进入bin目录下:cd bin/

【手把手】教你OpenResty的安装和使用

可以看到,其实OpenResty的启动其实就是将所集成的Nginx服务启动即可

cd ../nginx/sbin/

./nginx

访问Nginx服务

【手把手】教你OpenResty的安装和使用

6、运行Lua脚本

编辑OpenResty中的Nginx配置文件:

cd /usr/local/openresty/nginx/conf/

vim nginx.conf

Lua脚本代码可以直接写在Nginx配置文件中执行

【手把手】教你OpenResty的安装和使用

重启Nginx服务,访问 http://${Nginx服务地址}$/lua,结果发现浏览器下载了个文件,打开下载的文件后看到:

【手把手】教你OpenResty的安装和使用

这起码证明了配置和代码没啥问题,那么就需要告诉浏览器怎么读取Nginx返回的数据:

【手把手】教你OpenResty的安装和使用

【手把手】教你OpenResty的安装和使用

使用content_by_lua写起来很不方便,一次只能写一句,想要写很多代码怎么办?使用content_by_lua_block

修改Nginx配置文件

【手把手】教你OpenResty的安装和使用

重启Nginx服务并访问

【手把手】教你OpenResty的安装和使用

7、将Lua脚本解耦成文件引入Nginx

进入OpenResty Nginx配置文件目录中,新建一个Lua脚本文件

cd /usr/local/openresty/nginx/conf/

vim lua_script_001.lua

【手把手】教你OpenResty的安装和使用

修改Nginx配置文件

【手把手】教你OpenResty的安装和使用

重启Nginx服务并访问

【手把手】教你OpenResty的安装和使用

再进一步,将所有关于Lua的都写到一个conf文件中

vim lua.conf

【手把手】教你OpenResty的安装和使用

修改Nginx配置文件

【手把手】教你OpenResty的安装和使用

重启Nginx服务并访问

【手把手】教你OpenResty的安装和使用

8、对Lua脚本进行热部署

修改Nginx配置文件

【手把手】教你OpenResty的安装和使用

Lua脚本的热部署是基于Lua外部文件来实现的,也就是说使用content_by_lua和content_by_lua_block是无法实现Lua的热部署!

重启Nginx服务并访问会看到这个热部署会影响到Nginx的性能

【手把手】教你OpenResty的安装和使用

Nginx服务启动之后,只要修改Lua文件中的脚本,不需重启Nginx服务即可生效

【手把手】教你OpenResty的安装和使用

9、Lua脚本获取Nginx中数据

【手把手】教你OpenResty的安装和使用【手把手】教你OpenResty的安装和使用

【手把手】教你OpenResty的安装和使用【手把手】教你OpenResty的安装和使用

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/111918.html

(0)
Java光头强的头像Java光头强

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!