文档章节

openresty编译添加drizzle-nginx-module模块

啊哈关关
 啊哈关关
发布于 2017/07/25 10:44
字数 302
阅读 36
收藏 0

1.下载drizzle模块

地址见:   http://agentzh.org/misc/nginx/drizzle7-2011.07.21.tar.gz

1.安装drizzle

  •     cd /usr/local/openresty
  •    tar zxvf drizzle7-2011.7.21.tar.gz
  •    cd drizzle7-2011.7.21/
  •    ./configure --with-server
  •    make libdrizzle-1.0
  •    make install-libdrizzle-1.0

 3.编译drizzle-nginx-module

wget  http://openresty.org/download/ngx_openresty-1.9.7.4.tar.gz

tar -zxvf  ngx_openresty-1.9.7.4.tar.gz

cd ngx_openresty-1.9.7.4

输入nginx -V命令,将参数添加上来即可

3.编译命令

./configure --prefix=/usr/local/openrest --with-cc-opt='-O2 -I/usr/local/Cellar/openssl/1.0.2h_1/include/ -I/usr/local/Cellar/pcre/8.39/include/'  --with-stream --with-stream_ssl_module --add-module=/usr/local/openresty/stream-lua-nginx-module --with-ld-opt='-Wl,-rpath,/usr/local/openresty/luajit/lib -L/usr/local/Cellar/openssl/1.0.2h_1/lib/ -L/usr/local/Cellar/pcre/8.39/lib/' --with-http_ssl_module --with-http_drizzle_module

make

make install

 

4.下图表示已经编译成功

4

 

5.测试一下:

nginx.conf文件:(server位于http中)

运行结果如下:返回格式为json

测试情形二:

server{
        
    listen 8080;

       
    location @user-by-name { 
        set_unescape_uri $name $arg_name; #接收name参数
        set_quote_sql_str $name;   #编码防止注入
        drizzle_query 'select * from user01 where name=$name'; 
        drizzle_pass backend; 
        rds_json on; 
    }

    location @user-by-id { 
        set_quote_sql_str $id $arg_id; 
        drizzle_query 'select * from user01 where id=$id'; 
        drizzle_pass backend; 
        rds_json on; 
    }



    location =/user {
         access_by_lua '
                if ngx.var.arg_name then
                    return ngx.exec("@user-by-name")
                end
                
                if ngx.var.arg_id then
                    return ngx.exec("@user-by-id")
                end    

            ';


            rds_json_ret 400 "expecting \"name\" or \"id\" query arguments"; 

        }
    }}

运行结果:

 

 

测试情形三:


 location /mysql-status {
           drizzle_status;
       }

测试情形四:

location ~ '^/mysql/(.*)' {
            set $name $1; 
            set_quote_sql_str $quote_name $name; 
            set $sql "SELECT * FROM user01 WHERE username=$quote_name"; 
            drizzle_query $sql; 
            drizzle_pass backend; 
            rds_json on; 
       }

运行结果:

© 著作权归作者所有

共有 人打赏支持
啊哈关关
粉丝 7
博文 152
码字总数 72519
作品 0
深圳
程序员
Openresty中使用LuaJit

今天在使用Openresty的时候,遇到了一个问题: local resty_sha1 = require "resty.sha1" 想使用resy.sha1的时候,出现了error,log如下: 2013/09/25 09:00:40 [error] 19620#0: *3 lua en...

timingbob
2013/09/25
0
0
OpenResty简介、编译安装

OpenResty,也被称为“ngxopenresty”,是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方的Nginx模块和大部分系统依赖包,用于方便地搭建能够处理超高并发...

justin_peng
07/23
0
0
OpenResty学习资料收集

1、nginx-lua-module使用 https://github.com/iresty/nginx-lua-module-zh-wiki https://github.com/openresty/lua-nginx-module#readme 2、OpenResty最佳实践 https://www.gitbook.com/book......

workming
06/29
0
0
OpenResty 1.13.6.2,基于 Nginx 与 Lua 的 Web 平台

OpenResty 1.13.6.2 已发布,从这个版本开始,官方将会提供 64 位 Windows 原生二进制包,也为 Ubuntu 18.04 Bionic 提供新的 yum 包。 下一个 OpenResty 版本将基于 nginx core 1.13.12 或即...

淡漠悠然
05/23
0
9
打造基于Nginx的敏感信息泄露检测系统

  *本文原创作者:f4ckbaidu,本文属FreeBuf原创奖励计划,未经许可禁止转载   0、环境说明:   注意:本文所有的代码都放在/data/code下面   如路径变化则需要修改test.conf中标红的...

FreeBuf
08/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

ES6 Promise

Promise promise是异步编程的一种解决方案 1 什么是异步? 异步模式,每一个任务有一个或多个回调函数(callback),前一个任务结束后,不是执行后一个任务,而是执行回调函数,后一个任务则...

NDweb
18分钟前
0
0
Python百分登顶年度编程语言排行榜

今天 IEEE Spectrum 发布了 2018 年度顶级编程语言排行榜。该榜单可根据流行趋势、职业方向、语言类型等多个标准各自细分生成榜单,也可以综合多个标准进行排列,使用者可以根据自己的需求过...

六库科技
22分钟前
0
0
consul笔记

安装和启动就不说了,很简单。 注册一个服务: http://localhost:8500/v1/agent/service/register put请求,json格式内容如下 { "ID": "userServiceId", //服务id "Name": "userService", //服...

朝如青丝暮成雪
22分钟前
0
0
iOS CollectionView 的那些事

UICollectionView是开发中用的比较多的一个控件,本文记录UICollectionView在开发中常用的方法总结,包括使用UICollectionViewFlowLayout实现Grid布局、添加Header/Footer、自定义layout布局...

aron1992
23分钟前
0
0
linux tar.gz zip 解压缩 压缩命令

http://apps.hi.baidu.com/share/detail/37384818 download ADT link http://dl.google.com/android/ADT-0.9.6.zip download SDK link http://dl.google.com/Android/android-sdk_r11-linux_......

owensliu
25分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部