什么是openresty?
OpenResty® 是一款基于 NGINX 和 LuaJIT 的 Web 平台。
OpenResty(也称为 ngx_openresty)是一个全功能的 Web 应用服务器。它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项。
通过揉和众多设计良好的 Nginx 模块,OpenResty 有效地把 Nginx 服务器转变为一个强大的 Web 应用服务器,基于它开发人员可以使用 Lua 编程语言对 Nginx 核心以及现有的各种 Nginx C 模块进行脚本编程,构建出可以处理一万以上并发请求的极端高性能的 Web 应用。
借助于Nginx的事件驱动模型和非阻塞IO,可以实现高性能的Web应用程序。而且OpenResty提供了大量组件如Mysql、Redis、Memcached等等,使在Nginx上开发Web应用更方便更简单。目前京东,淘宝、去哪儿网等都在使用Nginx+Lua架构。
一、安装步骤
Windows7/windows10 平台
其他平台参考安装步骤:http://openresty.org/cn/installation.html
1,本人win10,下载openresty_for_windows_1.7.10.2001_64bit.zip,解压缩在F:\software\openrestry目录下,
nginx目录下,双击Nginx.exe或者进入win+R,进入cmd ,使用命令start nginx启动。
2,验证是否启动成功
其中一个是 master 进程,另一个是 worker 进程。
3,打开浏览器输入localhost,可以看到欢迎界面。
虽然openrestry也发布特windows版本,还是希望各位有条件的尽可能使用linux环境。
github源码地址:https://github.com/openresty/openresty
4.编辑nginx.conf配置文件 :
1)在http部分添加lua的配置
#lua模块路径,多个之间”;”分隔,其中”;;”表示默认搜索路径,默认到/usr/servers/nginx下找
lua_package_path "servers/lualib/?.lua;;"; #lua 模块
lua_package_cpath "servers/lualib/?.so;;"; #c模块
#lua_package_path "$prefix/?.luac;$prefix/?.lua;;";
2)为了以后更好的开发和维护,在conf目录下建立lua.conf
#lua.conf
server {
listen 80;
server_name _;
}
3)在nginx.conf中的http部分添加include lua.conf包含此文件片段,incloud lua.conf
可以使用nginx -t检测一下是否配置成功,如果成功会有如下提示:
nginx: the configuration file /usr/servers/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/servers/nginx/conf/nginx.conf test is successful
如果,失败请到log下查看err.log,查看详细日志信息。
好了,来吧,试一把吧,hello world!
在lua.conf文件的server部分添加
location /lua {
default_type 'text/html';
content_by_lua 'ngx.say("hello world!")';
}
4)重启nginx,nginx -s reload
5)输入http://http://192.168.10.105/lua