首先下载最新版的 相关软件 的安装文件。

nginx: http://nginx.org/en/download.html

LuaJIT: http://luajit.org/download.html

lua-nginx-module: https://github.com/openresty/lua-nginx-module/releases/tag/v0.9.16

ngx_devel_kit: https://github.com/simpl/ngx_devel_kit/releases/tag/v0.2.19

[root@localhost src]# ll -t
total
-rw-r--r--. root root Sep : ngx_devel_kit-0.2..tar.gz
-rw-r--r--. root root Sep : lua-nginx-module-0.9..tar.gz
-rw-r--r--. root root Sep : LuaJIT-2.0..tar.gz
-rw-r--r--. root root Sep : nginx-1.8..tar.gz

1. 先解压安装 LuaJIT

tar zxvf LuaJIT-2.0.4.tar.gz

cd LuaJIT-2.0. 进去

make && make install

搞定。

然后分别解压 ngx_devel_kit-0.2.19.tar.gz 和 lua-nginx-module-0.9.16.tar.gz

2. 再解压安装 nginx ,加入 ngx_devel_kit 和 lua-nginx-module 模块:

[root@localhost nginx]# ./configure --add-module=/usr/local/src/lua-nginx-module-0.9. \
> --add-module=/usr/local/src/ngx_devel_kit-0.2.19
[root@localhost nginx]# make && make install

安装完成,测试一般会报错:

[root@localhost sbin]# ./nginx
./nginx: error while loading shared libraries: libluajit-5.1.so.: cannot open shared object file: No such file or directory

解决方法:

[root@localhost lib]# echo "/usr/local/lib" > /etc/ld.so.conf.d/usr_local_lib.conf
[root@localhost lib]# cat /etc/ld.so.conf.d/usr_local_lib.conf
/usr/local/lib
[root@localhost lib]# ldconfig

在测试,OK。

[root@localhost sbin]# ./nginx
[root@localhost sbin]# ps -elf|grep nginx
S root - - : ? :: nginx: master process ./nginx
S nobody - - : ? :: nginx: worker process
S nobody - - : ? :: nginx: worker process
S root - - : pts/ :: grep ngin

配置了 ndk 和 lua-nginx-module 的nginx 要别原来大一些

[root@localhost sbin]# ls -lh
total 7.1M
-rwxr-xr-x. root root 4.4M Sep : nginx
-rwxr-xr-x. root root 2.8M Sep : nginx.old

3. 测试Lua 模块配置是否成功:

在 nginx.conf 文件中加入:

        location /lua {
set $test "hello, world.";
content_by_lua '
ngx.header.content_type = "text/plain";
ngx.say(ngx.var.test);
';
}

然后 nginx -t; 测试无错误,然后 nginx -s reload; 重新加载nginx.conf文件

然后访问 192.168.1.200/lua:

看到结果,表示 nginx, Lua 开发环境搭建成功。

上面配置的意思,就是定义一个变量 $test, 然后以 text/pain 格式输出它的值。$test定义变量,让人想起 php 和 shell 变量的定义。

其实,nginx 和 lua 有专门的已经配置好了的开发环境: OpenResty 和 Tengine

nginx 与 lua 开发环境搭建的更多相关文章

  1. nginx+uwsgi+django开发环境搭建

    Nginx+uWSGI+Djangoi开发环境搭建 Django简介,环境搭建 uWSGI简介,安装与配置 Nginx安装与配置 Nginx+uWSGI+Django原理解析 1.django简介,环 ...

  2. Nginx详解二十三:Nginx深度学习篇之Nginx+Lua开发环境搭建

    Nginx+Lua开发环境 1.下载LuaJIT解释器wget http://luajit.org/download/LuaJIT-2.0.2.tar.gztar -zxvf LuaJIT-2.0.2 ...

  3. cocos2dx--vs2012+lua开发环境搭建

    cocos2dx版本号:cocos2dx2.2.3 lua插件:babelua 1.5.3  下载地址:http://pan.baidu.com/s/1i3mPD8h 第一步:先关闭vs,双击下载下来 ...

  4. Lua开发环境搭建(Mac)

    1.下载最新版的Lua,点击下载 2.下载完成后,解压压缩包,打开终端,cd进入Lua解压目录下 3. 在终端输入“make macosx”,编译lua 4.编译完成后,在终端输入”make test ...

  5. Lua开发环境搭建(Mac OS X)

    1. 安装Rudix Rudix: http://rudix.org curl -O https://raw.githubusercontent.com/rudix-mac/rpm/2015.4/ru ...

  6. Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试

    Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试一.下载相关安装包 1.下载nginx最新版本(nginx1.3.13版之后才支持websocket协议) 下载地址 ...

  7. windows下vue+webpack前端开发环境搭建及nginx部署

    一.开发环境搭建 1.前端框架一般都依赖nodejs,我们首先要安装node.js.请参考http://www.cnblogs.com/wuac/p/6381819.html. 2.由于许多npm的源 ...

  8. 搭建windows环境下(nginx+mysql+php)开发环境

    搭建windows环境下(nginx+mysql+php)开发环境   1. 所需准备应用程序包        1.1 nginx 程序包nginx-1.0.4.zip或其他版本(下载地址: http ...

  9. [转载]使用VS2015搭建Lua开发环境

    参考原文请看: Lua学习笔记1:Windows7下使用VS2015搭建Lua开发环境(一) Lua学习笔记2:Windows7下使用VS2015搭建Lua开发环境(二) 本篇主要分以下几个部分: 一 ...

随机推荐

  1. 【Win10】让 TextBlock 按字符换行

    要想将 TextBlock 里的文本自动换行的话,只需要设置 TextWrapping 属性为 Wrap 即可. 但是 TextWrapping 是尽可能根据空白字符来换行的,因此,就有可能出现下面这 ...

  2. 关于c++数的进制的经验

    默认状态下,数据按十进制输入输出.如果要求按八进制或十六进制输入输出,在cin或cout中必须指明相应的数据形式,oct为八进制,hex为十六进制,dec为十进制. 注意: 1.使用不带.h的头文件& ...

  3. Python入门笔记(16):对文件的操作(2)

    一.文件系统 从系统角度来看,文件系统是对文件存储器空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统.具体地说,它负责为用户建立文件,存入.读出.修改.转储文件,控制文件的存取,当用 ...

  4. EffectiveJava——复合优先于继承

    继承时实现代码重用的重要手段,但它并非永远是完成这项工作的最佳工具,不恰当的使用会导致程序变得很脆弱,当然,在同一个程序员的控制下,使用继承会变的非常安全.想到了很有名的一句话,你永远不知道你的用户是 ...

  5. python函数和常用模块(二),Day4

    内置函数2 装饰器 字符串格式化 生成器 迭代器 递归 模块 序列化相关 time模块 datetime模块 内置函数2 callable() # 是否可以被执行,是否可以被调用 chr() # as ...

  6. 那一夜,我们..奋笔疾书敲出的--->>库存管理系统

    说了会再见,最近好吗?无论你在哪里>也许你在温暖的家,或许你在身在异乡的城市;或许你高高的峰顶放生高歌,或许你还在陡峭的山峰半空努力攀爬.......相信我们都会登上顶峰,"会当凌绝顶 ...

  7. Linux守护进程的编程实现(转)

    http://blog.csdn.net/zg_hover/article/details/2553321 http://blog.csdn.net/kongdefei5000/article/det ...

  8. C# Sqlite事务

    在 C#中执行Sqlite数据库事务有两种方式:Sql代码和C#代码 1.Sql代码: BEGIN… COMMIT /ROLLBACK 2.C#代码: using (SQLiteConnection ...

  9. LALR(1)语法分析生成器--xbytes

    0.概述: 看了编译器龙书和虎书后,自己手动写了一个LALR(1)语法分析生成器,使用的语法文件格式和lemon的差不多. 程序里面很多的算法也都是摘录自虎书,龙书虽然讲的很详细,但是真正动手写的时候 ...

  10. H5实现的可自定义贪吃蛇游戏

    原创游戏,使用lufylegend.js开发 用canvas实现的贪吃蛇游戏,与一般的贪吃蛇游戏不同,图片经过美工设计,代码设计支持扩展和自定义. 游戏元素丰富,包括障碍物(仙人掌),金币(奖励),苹 ...