目录
最近基于OpenResty在做nginx + lua的开发,选用的开发工具是idea。下面介绍完整的环境搭建过程:
1.OpenResty安装
1.1 去OpenResty官网下载最新版本的OpenRestry:http://openresty.org/cn/download.html
1.2 解压到E:\openresty-1.13.6.2-win64(这里要替换成你的目录)
1.3 配置环境变量OpenResty:E:\openresty-1.13.6.2-win64(这里要替换成你的目录)
1.3 idea安装openrestry插件
安装完成以后重启
2.Nginx配置
2.1 idea安装nginx插件
2.2 配置nginx server
3. 创建Lua工程
3.1 新建lua工程
File->New->Project...
选择Lua SDK version为luaj:
最后输入项目名称lua-learn,最后点击Finish
项目结构定义如下:
3.2 配置nginx.conf文件打开方式
在项目中新建一个conf文件夹,并将E:\openresty-1.13.6.2-win64\conf(这里要替换成你的目录)中的nginx.conf文件拷贝到该文件夹下。
默认情况下,idea是不支持nginx.conf中的语法高亮的,需要配置nginx.conf打开方式
设置完成之后,我们看到的nginx.conf文件中语法就高亮显示了。
3.3 配置nginx.conf
修改nginx.conf文件如下:
worker_processes 2;
error_log logs/error.log info;
events {
worker_connections 1024;
}
http {
default_type application/octet-stream;
access_log logs/access.log;
lua_package_path 'lua-learn/?.lua;;';
server {
listen 8001;
server_name localhost;
default_type text/html;
location = /favicon.ico {
log_not_found off;
access_log off;
}
location /test {
content_by_lua_file lua-learn/test.lua;
}
}
}
3.4 创建test.lua文件
在根目录下创建src目录,并在src目录下创建一个test.lua文件,代码如下
local function main()
ngx.say("Hello World")
end
main()
3.5 idea配置ant
根目录下新建一个build.xml文件,文件代码如下,注意location="E:\openresty-1.13.6.2-win64" 这个地方需要修改成你们openresty的安装目录:
<project name="lua-learn" default="dist" basedir=".">
<description>
run lua-learn
</description>
<!-- set global properties for this build -->
<property name="openresty-home" location="E:\openresty-1.13.6.2-win64"/>
<property name="conf" location="${basedir}/conf"/>
<property name="src" location="${basedir}/src"/>
<property name="target-conf" location="${openresty-home}/conf"/>
<property name="target-src" location="${openresty-home}/${ant.project.name}"/>
<echo>######开发版本的ant配置#####</echo>
<target name="clean" depends="">
<echo>清理openresty目录 ${dist}下的conf,logs,janus,januslib</echo>
<delete dir="${target-conf}"/>
<delete dir="${target-src}"/>
<delete>
<fileset dir="${openresty-home}/logs" includes="*.log">
</fileset>
</delete>
</target>
<target name="init" depends="clean">
<echo>创建安装目录</echo>
<mkdir dir="${target-conf}"/>
<mkdir dir="${target-src}"/>
</target>
<target name="dist" depends="init" description="generate the distribution" >
<echo>复制安装文件</echo>
<copy todir="${target-conf}">
<fileset dir="${conf}"></fileset>
</copy>
<copy todir="${target-src}">
<fileset dir="${src}"></fileset>
</copy>
</target>
</project>
经过以上配置,代码结构如下图所示:
3.6 ant build添加build.xml文件
选择idea右侧Ant Build,选择刚刚配置的build.xml文件,最后点击OK:
在nginx中配置Run Ant target:
选择disk:
由于ant需要JDK环境,所以需要指定项目的JDK版本。选择File->Project Structure...
Project选择JDK1.8:
SDKs选择1.8:
4 启动nginx
finished~