把Lua编译进nginx步骤方法

Lua编译进nginx的方法

1、先安装lua-jit,网上说也可以下载lua,不过lua-jit效率比较高,地址:http://luajit.org/download.html
我下的是2.0.3版本的
下载解压后,直接make && make install就可以了,默认安装在/usr/local目录

2、下载ngx devel包
地址:https://github.com/simpl/ngx_devel_kit/tags
注意,这个是一个nginx的扩展,不需要编译

3、下载nginx的lua扩展

https://github.com/openresty/lua-nginx-module/archive/v0.9.8.tar.gz

4、导出两个变量

代码如下:

export LUAJIT_LIB=/usr/local/lib
export LUAJIT_INC=/usr/local/include/luajit-<VERSION>

其中LUAJIT表示luajit的安装目录

5、接下来是编译nginx了

代码如下:

./configure --prefix=/opt/nginxrw --with-http_gzip_static_module --with-http_stub_status_module
--with-http_ssl_module    --add-module=/data/src/lua-nginx-module-0.9.8  
--add-module=/data/src/ngx_devel_kit-0.2.19

其中两个--add-module表示lua的nginx模块和ngx devel包扩展

启动时,可能报某个库的路径找不到:

代码如下:

sbin/nginx: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or directory

用ldd命令可以看下某个二进制文件的引用的动态库

解决办法:

代码如下:

echo "/usr/local/lib" >> /etc/ld.so.conf.d/usr_local_lib.conf
ldconfig

ok,是不是编译成功了呢,开始编写lua脚本吧

(0)

相关推荐

  • 安装Nginx+Lua开发环境

    首先我们选择使用OpenResty,其是由Nginx核心加很多第三方模块组成,其最大的亮点是默认集成了Lua开发环境,使得Nginx可以作为一个Web Server使用.借助于Nginx的事件驱动模型和非阻塞IO,可以实现高性能的Web应用程序.而且OpenResty提供了大量组件如Mysql.Redis.Memcached等等,使在Nginx上开发Web应用更方便更简单.目前在京东如实时价格.秒杀.动态服务.单品页.列表页等都在使用Nginx+Lua架构,其他公司如淘宝.去哪儿网等. 安装环境

  • nginx中使用lua脚本的方法

    Lua是一种跟JavaScript很像的语言,Ngix_Lua同样使用异步单线程,语法甚至比JS更加简单,之前的评测指出,Ngix_lua的性能几乎是Node.JS的一倍. Nginx 特点 1.流行的高性能HTTP服务器 2.事件驱动(异步)架构 3.少量且可测内存占用 4.声明性配置语言 5.基于C的可扩展模块 通过lua-nginx-module即可在nginx上启动lua脚本. 一个例子: 复制代码 代码如下: location / {     content_by_lua '     

  • 使用Lua编写Nginx服务器的认证模块的方法

    过去两天里,我解决了一个非常有趣的问题.我用一个nginx服务器作为代理,需要能够向其中添加一个认证层,使其能够使用外部的认证源(比如某个web应用)来进行验证,如果用户在外部认证源有账号,就可以在代理里认证通过. 需求一览 我考虑了几种解决方案,罗列如下: 用一个简单的Python/Flask模块来做代理和验证. 一个使用subrequests做验证的nginx模块(nginx目前可以做到这一点) 使用Lua编写一个nginxren认证模块 很显然,给整个系统添加额外请求将执行的不是很好,因为

  • 把Lua编译进nginx步骤方法

    Lua编译进nginx的方法 1.先安装lua-jit,网上说也可以下载lua,不过lua-jit效率比较高,地址:http://luajit.org/download.html 我下的是2.0.3版本的 下载解压后,直接make && make install就可以了,默认安装在/usr/local目录 2.下载ngx devel包 地址:https://github.com/simpl/ngx_devel_kit/tags 注意,这个是一个nginx的扩展,不需要编译 3.下载ngin

  • IDEA将Maven项目中指定文件夹下的xml等文件编译进classes的方法

    出处:https://www.cnblogs.com/SunSpring eclipse下面创建的Maven项目,使用mybatis.eclipse里面能正常启动,在idea中一直卡在maybatis 加载位置. 1.首先是不报错也没反应.这个时候需要我们重写SqlSessionFactoryBean 让错误显示出来. public class BeanFactory extends SqlSessionFactoryBean { @Override protected SqlSessionFa

  • centos7编译安装nginx的方法步骤

    安装nginx编译所需的lib库 yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel yum -y install pcre pcre-devel 查看pcre(正则库)版本 pcre-config --version 进入编译目录 cd /usr/local/src 从官网下载最新的nginx(stable version稳定版) wget http://nginx.org/download/ngi

  • 把ImageMagic库编译进nginx服务器的一些必要配置

    1.首先要将ImageMagick库的相应头文件加到环境变量中 复制代码 代码如下: export C_INCLUDE_PATH=$C_INCLUDE_PATH:/usr/local/ImageMagick/include/ImageMagick/ 后面的路径依每个人的情况不同 不然会出现以下错误 复制代码 代码如下: wand/MagickWand.h: No such file or directory 2.链接时加上相应的库 在obj/Makefile文件中,找到以下行, 复制代码 代码如

  • Docker上部署Nginx的方法步骤

    目录 1.从 docker 下载 Nginx 镜像 2.创建挂载目录 3.为了保证文件的正确性,建议先进入容器把对应的文件给复制出来 4.接下来修改下 default.conf 文件就好了 5.接下来就可以启动容器了 6.不停止 nginx 更新配置文件 1.从 docker 下载 Nginx 镜像 docker pull nginx 2.创建挂载目录 之后的文件就放这里面,对 docker 里 Nginx 对应的目录进行映射,就不用改文件进到容器里了 mkdir -p /data/nginx/

  • Linux 6下安装编译安装Nginx的步骤

    Linux 6下安装编译安装Nginx的步骤 前言: Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.在高连接并发的情况下,Nginx是Apache服务器不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一.能够支持高达50,000个并发连接数的响应,而且内存开销极小.这也是Nginx广受欢迎的重要原因.本文演示了基于Linux 6下编译安装Nginx,供大家参考. 一.安装环境 # cat /etc/issue Red Ha

  • CentOS下编译安装nginx及配置缩略图插件的方法教程

    相信大家都知道利用yum安装nginx 非常方便,但是有些插件并不会默认安装,比如 http_image_filter_module, 因此我们需要编译安装 nginx,已达到我们的目的.下面来看看详细的方法吧. 安装依赖 yum install -y pcre-devel libmxl2-devel libxslt-devel gd-devel 安装 nginx wget http://nginx.org/download/nginx-1.9.1.tar.gz tar -xzvf nginx-

  • Ubuntu环境编译安装PHP和Nginx的方法

    本文实例讲述了Ubuntu环境编译安装PHP和Nginx的方法.分享给大家供大家参考,具体如下: 编译安装nginx 切换目录到工作文件夹: cd /usr/local/src 下载pcre源代码并安装 wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre2-10.20.tar.gz tar -zxvf pcre2-10.20.tar.gz mv ./pcre2-10.20.tar.gz ./pcre cd pcre ./

  • QT5编译使用QFtp的方法步骤

    背景 使用 QNetworkAccessManager 可以实现 Ftp 的上传/下载功能,但它没有提供例如list.cd.remove.mkdir.rmdir.rename 等功能.这种情况下,我们可以使用QFtp,需要下载源码.编译并处理一些坑. 下载 从 GitHub 下载 QFtp: https://github.com/qt/qtftp 编译 修改 qftp/qftp.pro,删除最后一行,module_qtftp_tests.不然编译会有错误,这个是测试子项目,暂时去除,先编译使用.

  • Docker Compose部署Nginx的方法步骤

    使用Docker Compose部署Nginx,创建docker-compose.yaml: [root@192 ~]# vim docker-compose.yaml 输入以下内容: version: '3' services: nginx: container_name: nginx image: nginx restart: always ports: - 8080:80 privileged: true networks: - mynginx networks: mynginx: dri

随机推荐