在CentOS 6.9 x86_64的nginx 1.12.2上安装第三方模块set-misc-nginx-module实录

2024-03-18 15:08

本文主要是介绍在CentOS 6.9 x86_64的nginx 1.12.2上安装第三方模块set-misc-nginx-module实录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

set-misc-nginx-module模块是标准的HttpRewriteModule指令的扩展,提供更多的功能,如URI转义与非转义、JSON引述、Hexadecimal/MD5/SHA1/Base32/Base64编码与解码、随机数等等。在后面的应用中,都将会接触使用到这个模块的。该模块是由章亦春先生开发的,他开发的其他模块应用也会使用到这个模块的。充分使用nginx非阻塞模式,对性能上有极大的提高,我个人认为很有必要去弄懂弄透nginx,通过自己去动手动脑用实例来加以验证,不断的对模块参数命令加以理解,在实际环境中应用自如。
这两个模块的主页分别是
标准模块ngx_http_rewrite_module
http://nginx.org/en/docs/http/ngx_http_rewrite_module.html
第三方模块set-misc-nginx-module
ngx_set_misc - Various set_xxx directives added to nginx's rewrite module (md5/sha1, sql/json quoting, and many more)
https://github.com/openresty/set-misc-nginx-module


下载源码
cd /usr/local/src
wget https://github.com/openresty/set-misc-nginx-module/archive/v0.31.tar.gz
wget https://github.com/simpl/ngx_devel_kit/archive/v0.3.0.tar.gz
tar zxvf v0.31.tar.gz
tar zxvf v0.3.0.tar.gz


编译安装
cd nginx-1.12.2
./configure --with-http_ssl_module \
--with-pcre=/usr/local/src/pcre-8.41 \
--with-zlib=/usr/local/src/zlib-1.2.11 \
--with-openssl=/usr/local/src/openssl-1.1.0g \
--with-http_stub_status_module \
--add-module=/usr/local/src/ngx_cache_purge \
--add-module=/usr/local/src/ngx_req_status \
--add-module=/usr/local/src/echo-nginx-module \
--add-module=/usr/local/src/ngx_devel_kit-0.3.0 \
--add-module=/usr/local/src/set-misc-nginx-module-0.31
make
make install
注意这里set-misc-nginx-module依赖ngx_devel_kit模块,且--add-module=ngx_devel_kit一定要早于--add-module=set-misc-nginx-module


配置
        location /test {echo "uri = $uri";echo "request_uri = $request_uri";echo "name: $arg_name";echo "class: $arg_class";set_unescape_uri $name $arg_name;set_unescape_uri $class $arg_class;echo "name: $name";echo "class: $class";}

更完整的nginx.conf配置参见
https://github.com/taoyunxing/github_test/blob/master/nginx.conf

测试

curl -v 'http://localhost:8082/test'
curl 'http://localhost:8082/test?a=3&b=4'
curl 'http://localhost:8082/test/hello%20world?a=3&b=4'


curl 'http://localhost:8082/test?name=Tom&class=3'
curl 'http://localhost:8082/test?name=hello%20world&class=9'
curl 'http://localhost:8082/test?NAME=Marry'

curl 'http://localhost:8082/test?Name=Jimmy'


curl 'http://localhost:8082/test?name=hello%20world&class=9'


更复杂的指令待后续继续补充


参考文献
[1].https://github.com/openresty/set-misc-nginx-module
[2].http://www.ttlsa.com/nginx/nginx_set-misc-nginx-module-module-description/
[3].https://github.com/openresty/set-misc-nginx-module#installation

[4].http://www.ttlsa.com/nginx/nginx-var-2/


这篇关于在CentOS 6.9 x86_64的nginx 1.12.2上安装第三方模块set-misc-nginx-module实录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/822734

相关文章

Nginx添加内置模块过程

《Nginx添加内置模块过程》文章指导如何检查并添加Nginx的with-http_gzip_static模块:确认该模块未默认安装后,需下载同版本源码重新编译,备份替换原有二进制文件,最后重启服务验... 目录1、查看Nginx已编辑的模块2、Nginx官网查看内置模块3、停止Nginx服务4、Nginx

Python库 Django 的简介、安装、用法入门教程

《Python库Django的简介、安装、用法入门教程》Django是Python最流行的Web框架之一,它帮助开发者快速、高效地构建功能强大的Web应用程序,接下来我们将从简介、安装到用法详解,... 目录一、Django 简介 二、Django 的安装教程 1. 创建虚拟环境2. 安装Django三、创

linux安装、更新、卸载anaconda实践

《linux安装、更新、卸载anaconda实践》Anaconda是基于conda的科学计算环境,集成1400+包及依赖,安装需下载脚本、接受协议、设置路径、配置环境变量,更新与卸载通过conda命令... 目录随意找一个目录下载安装脚本检查许可证协议,ENTER就可以安装完毕之后激活anaconda安装更

Jenkins的安装与简单配置过程

《Jenkins的安装与简单配置过程》本文简述Jenkins在CentOS7.3上安装流程,包括Java环境配置、RPM包安装、修改JENKINS_HOME路径及权限、启动服务、插件安装与系统管理设置... 目录www.chinasem.cnJenkins安装访问并配置JenkinsJenkins配置邮件通知

python urllib模块使用操作方法

《pythonurllib模块使用操作方法》Python提供了多个库用于处理URL,常用的有urllib、requests和urlparse(Python3中为urllib.parse),下面是这些... 目录URL 处理库urllib 模块requests 库urlparse 和 urljoin编码和解码

通过配置nginx访问服务器静态资源的过程

《通过配置nginx访问服务器静态资源的过程》文章介绍了图片存储路径设置、Nginx服务器配置及通过http://192.168.206.170:8007/a.png访问图片的方法,涵盖图片管理与服务... 目录1.图片存储路径2.nginx配置3.访问图片方式总结1.图片存储路径2.nginx配置

Nginx禁用TLSv1.0 1.1改为TLSv1.2 1.3的操作方法

《Nginx禁用TLSv1.01.1改为TLSv1.21.3的操作方法》使用MozillaSSL配置工具生成配置,修改nginx.conf的ssl_protocols和ssl_ciphers,通... 目录方法一:方法二:使用 MoziChina编程lla 提供的 在线生成SSL配置工具,根据自己的环境填充对应的

创建springBoot模块没有目录结构的解决方案

《创建springBoot模块没有目录结构的解决方案》2023版IntelliJIDEA创建模块时可能出现目录结构识别错误,导致文件显示异常,解决方法为选择模块后点击确认,重新校准项目结构设置,确保源... 目录创建spChina编程ringBoot模块没有目录结构解决方案总结创建springBoot模块没有目录

nginx配置错误日志的实现步骤

《nginx配置错误日志的实现步骤》配置nginx代理过程中,如果出现错误,需要看日志,可以把nginx日志配置出来,以便快速定位日志问题,下面就来介绍一下nginx配置错误日志的实现步骤,感兴趣的可... 目录前言nginx配置错误日志总结前言在配置nginx代理过程中,如果出现错误,需要看日志,可以把

idea Maven Springboot多模块项目打包时90%的问题及解决方案

《ideaMavenSpringboot多模块项目打包时90%的问题及解决方案》:本文主要介绍ideaMavenSpringboot多模块项目打包时90%的问题及解决方案,具有很好的参考价值,... 目录1. 前言2. 问题3. 解决办法4. jar 包冲突总结1. 前言之所以写这篇文章是因为在使用Mav