基于Nginx的模块化设计,衍生出了很多第三方模块以扩展Nginx的能力。其中,有一个有趣且影响深远的模块,即lua-nginx-module。它把Lua解析器内嵌到了Nginx中,从而可以使用Lua语言编程,极大增强了Nginx的能力。
Lua是一种轻量,小巧的脚本语言,用标准的c语言编写并以源代码,其设计目的是 饿了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能
OpenResty(openresty.org/cn/) 正是基于Nginx与Lua的高性能Web平台,其内部集成了大量精良的Lua库,第三方模块以及大多数依赖项,用于方便地搭建能够处理超高并发和扩展性极高的动态Web应用,Web服务和动态网关。
下面以Ubuntu 1604(LTS)为例,详细介绍了OpenResty的安装和使用
- 安装相关依赖库,命令如下:
sudo apt install -y libpcre3-dev libssl-dev perl make build-essential curl
复制代码
- 从OpenResty官方(openresty.org/cn/download…
wget https://openresty.org/download/openresty-1.13.6.1.tar.gztar -xvf openresty-1.13.6.1.tar.gz
cd openresty-1.13.6.1
./configure -j2
make -j2
sudo make install
复制代码
默认情况下程序会被安装到”/usr/local/openresty”目录下,也可以使用”./configuure –help”查看更多的配置选项
- 安装成功后,在开始使用OpenResty前,新建Nginx配置文件confgi/nginx.conf, 代码如下:
worker_processes 1;
error_log logs/error.log;
events {
worker_connections 1024
}
http {
server {
listen 9000;
location / {
default_type text/html;
content_by_lua '
ngx.say("<p>Hello, World!<p>")
';
}
}
}
复制代码
tips: 关于lua语言的介绍和使用,请参考lua官方文档:www.lua.org/docs.html
- 启动OpenResty服务,命令如下:
/usr/local/openresty/nginx/sbin/nginx -p `pwd`/ -c conf/nginx.conf
复制代码
如果没有任何输出,说明启动成功,其中参数-p指定项目目录:参数-c指定配置文件
- 使用cURL来访问该服务,命令如下:
curl http://localhost:8080/
复制代码
- 输出结果如下:
<p>Hello, World!<p>
复制代码
简单来说,OpenResty是基于Nginx的扩展,并且开发语言不在是Nginx的C语言实现,而是更简单,易用的lua语言
内容出处:,
声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。文章链接:http://www.yixao.com/soft/28119.html