开发者学堂课程【大数据实战项目:反爬虫系统(Lua+Spark+Redis+Hadoop 框架搭建)第一阶段:Nginx 集成 lua 脚本】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/669/detail/11606
Nginx 集成 lua 脚本
内容介绍
一.掌握 Nginx 集成 lua 的两种方式
二.总结
一. 掌握 Nginx 集成 lua 的两种方式
1. helloWorld
【openresty1.9.3.1及以下版本,请使用 content_by_lua 命令;在 openresty1.9.3.2以上,content_by_lua 改成了 content_by_lua_block。可使用 nginx-V 命令查看版本号】
首先,回到环境中:
打开这个页面:
这时 Nginx 自己的服务,lua 脚本的环境已经准备好,那么如何将 Nginx 和 lua 联系起来呢?
修改配置文件:
在 nginz 的配置文件 nginx.conf 中添加下列信息,然后执 nginx-s reload。
location/{
#root html;
#index index.html index.htm;
default_type text/html;
content_by_lua_block {
ngx.say("hello world");
}
}
[root@clintnode conf]#
vi
nginx.
conf
找到 location,输入:
然后保存,用 block 的方式进行了输出。
将界面刷新,还是:
那么如何看到我们输出的 hello nginx 呢?每一次修改配置完,都需要重启 nginx:
重启后再来刷新这个界面,会提示一个下载的操作:
是因为上面省略了一步,现在补上来解决这个问题:保存后重复重启操作,再次刷新界面:
这就是 nginx 集成方式的输出。
2. 123456789
如果是脚本集成要怎么办呢?我们也可以使用 content_by_lua_file 来引入一个 lua文件:
location/{
#root html;
#index index.html index.htm;
default_type text/html;
content by lua file /usr/
l
ocal/openresty/nginx/conf
/
my.lua;
}
找到配置文件:
输入完 content_by_lua_file, 跟一个绝对路径,绝对路径到新的克隆的里面找:
做一个输出,在 lua 的脚本里:
Ngx.say(123456789),然后保存,绝对路径如图绿色框中:
将绝对路径复制,在配置文件中粘贴,把刚刚的脚本文件 test10 也粘贴,这样配置好的 lula 脚本就配置到了 nginx 文件当中。保存,再重启 nginx,没有报错:
再来刷新界面,就变成了:
这样就基本实现了 lua 脚本与 nginx 的配置文件的集成。
以上就是我们要学习的 lua 脚本与 nginx 的配置文件的集成的两种方法。
二. 总结
目标:掌握 Nginx 集成 Lua 的两种方式
1、第一种方式:通过代码块的方式集成
content_by_
l
ua_block{
ngx.say("hello world")}
2、第二种方式:通过引入脚本的方式
content_by_
l
ua_file /usr/
l
oca
l
/openresty/test/mytest.
l
ua