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

2023-10-13 00:20

本文主要是介绍openresty编译添加drizzle-nginx-module模块,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

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命令,将参数添加上来即可

104123_1Ycs_2263272.png

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中)

142250_MeCv_2263272.png

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

142333_oPqs_2263272.png

测试情形二:

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 thenreturn ngx.exec("@user-by-name")endif ngx.var.arg_id thenreturn ngx.exec("@user-by-id")end    ';rds_json_ret 400 "expecting \"name\" or \"id\" query arguments"; }}}

运行结果:

144435_WRTd_2263272.png

 

144459_igUx_2263272.png

 

145109_AWiB_2263272.png

测试情形三:

location /mysql-status {drizzle_status;}

145325_7N8J_2263272.png

测试情形四:

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; }

运行结果:

145953_YHmS_2263272.png

150016_TMra_2263272.png

转载于:https://my.oschina.net/u/2263272/blog/1486733

这篇关于openresty编译添加drizzle-nginx-module模块的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/199437

相关文章

检查 Nginx 是否启动的几种方法

《检查Nginx是否启动的几种方法》本文主要介绍了检查Nginx是否启动的几种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1. 使用 systemctl 命令(推荐)2. 使用 service 命令3. 检查进程是否存在4

Nginx概念、架构、配置与虚拟主机实战操作指南

《Nginx概念、架构、配置与虚拟主机实战操作指南》Nginx是一个高性能的HTTP服务器、反向代理服务器、负载均衡器和IMAP/POP3/SMTP代理服务器,它支持高并发连接,资源占用低,功能全面且... 目录Nginx 深度解析:概念、架构、配置与虚拟主机实战一、Nginx 的概念二、Nginx 的特点

Nginx内置变量应用场景分析

《Nginx内置变量应用场景分析》Nginx内置变量速查表,涵盖请求URI、客户端信息、服务器信息、文件路径、响应与性能等类别,这篇文章给大家介绍Nginx内置变量应用场景分析,感兴趣的朋友跟随小编一... 目录1. Nginx 内置变量速查表2. 核心变量详解与应用场景3. 实际应用举例4. 注意事项Ng

Python AST 模块实战演示

《PythonAST模块实战演示》Python的ast模块提供了一种处理Python代码的强大工具,通过解析代码生成抽象语法树(AST),可以进行代码分析、修改和生成,接下来通过本文给大家介绍Py... 目录 什么是抽象语法树(AST)️ ast 模块的核心用法1. 解析代码生成 AST2. 查看 AST

Java编译错误java.lang.NoSuchFieldError的解决方案详析

《Java编译错误java.lang.NoSuchFieldError的解决方案详析》java.lang.NoSuchFieldError是Java中的一种运行时错误,:本文主要介绍Java编译错... 目录前言解决方案1. 统一JDK版本环境2. 优化maven-compiler-plugin配置3. 清

GO语言中gox交叉编译的实现

《GO语言中gox交叉编译的实现》本文主要介绍了GO语言中gox交叉编译的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录一、安装二、使用三、遇到的问题1、开启CGO2、修改环境变量最近在工作中使用GO语言进行编码开发,因

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

Python sys模块的使用及说明

《Pythonsys模块的使用及说明》Pythonsys模块是核心工具,用于解释器交互与运行时控制,涵盖命令行参数处理、路径修改、强制退出、I/O重定向、系统信息获取等功能,适用于脚本开发与调试,需... 目录python sys 模块详解常用功能与代码示例获取命令行参数修改模块搜索路径强制退出程序标准输入

Python pickle模块的使用指南

《Pythonpickle模块的使用指南》Pythonpickle模块用于对象序列化与反序列化,支持dump/load方法及自定义类,需注意安全风险,建议在受控环境中使用,适用于模型持久化、缓存及跨... 目录python pickle 模块详解基本序列化与反序列化直接序列化为字节流自定义对象的序列化安全注