文档章节

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

啊哈关关
 啊哈关关
发布于 2017/07/25 10:44
字数 302
阅读 43
收藏 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
博文 155
码字总数 72670
作品 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+lua灰度发布的简单实验

如题,本文是笔者使用openresty 和lua脚本实现的简单灰度发布系统,记录下来。 一、安装 参考openresty 官方网站安装openresty即可 建议参考文章https://www.cnblogs.com/zdz8207/p/Nginx-L...

月黑风高杀人夜
08/27
0
0
OpenResty简介、编译安装

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

justin_peng
07/23
0
0
openresty + nginx-http-sysguard 调研使用

openresty 扩展使用 install https://openresty.org/cn/ openresty + TMD (nginx-http-sysguard) https://github.com/alibaba/nginx-http-sysguard, 淘宝开源限流模块 安装 + --with-pcre=DI......

Lennie002
08/22
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

没有更多内容

加载失败,请刷新页面

加载更多

wordpress 汉化

在 wp-config.php 添加 define('WPLANG','zh_CN'); 在后台,更新 now ,即可。

james_laughing
10分钟前
0
0
Android JNI开发系列(十一) JNI 访问父类的构造方法和父类实例方法

JNI 访问父类的构造方法和父类实例方法 构造方法和父类实例方法 先看一段Java代码, Java package org.professor.jni.animal;import android.util.Log;public class Animal {protecte...

蔡小鹏
16分钟前
0
0
腾讯投资最高1.75亿美元正式进军菲律宾移动支付市场

菲律宾长途电话公司(PLDT)公司今日宣布,中国互联网巨头腾讯和私募股权公司KKR将获得该公司旗下金融科技公司Voyager Innovations的少数股权。 PLDT在一份声明中称:“腾讯和KKR最多将分别收...

linuxCool
43分钟前
2
0
正则介绍及grep/egrep用法

10月16日任务 9.1 正则介绍_grep上 9.2 grep中 9.3 grep下 扩展 把一个目录下,过滤所有*.php文档中含有eval的行 grep -r --include="*.php" 'eval' /data 正则介绍 正则就是一串有规律的字符...

hhpuppy
54分钟前
1
0
J2Cache 中使用 Lettuce 替代 Jedis 管理 Redis 连接

一直以来 J2Cache 都是使用 Jedis 连接 Redis 服务的。Jedis 是一个很老牌的 Redis 的 Java 开发包,使用很稳定,作者维护很勤勉,社区上能搜到的文章也非常非常多。算是使用范围最广的 Redi...

红薯
今天
15
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部