Nginx第三方替换模块replace-filter-nginx-module

  • A+
所属分类:网站建设

replace-filter-nginx-module,已经有很多年了,现在也是多年没有更新,但是一点也不影响该模块的使用,该模块实现的功能请自行百度,现在介绍一下该模块的安装过程。
以oneinstack安装LNMP为原构架安装包默认目录为/home/oneinstack,安装nginx第三方模块replace-filter-nginx-module。
查看Nginx目前安装的组件使用

  1. nginx -V

返回如下代码(大同小异)

  1. nginx version: nginx/1.16.1
  2. built by gcc 6.3.0 20170516 (Debian 6.3.0-18+deb9u1)
  3. built with OpenSSL 1.1.1d  10 Sep 2019
  4. TLS SNI support enabled
  5. configure arguments: --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-http_mp4_module --with-openssl=../openssl-1.1.1d --with-pcre=../pcre-8.43 --with-pcre-jit --with-ld-opt=-ljemalloc

我们看到安装openssl和pcre.8这个两个额外的模块,我们需要进oneinstack文件夹对Nginx和以上两个模块进行解压到oneinstack安装目录备用

  1. cd /home/oneinstack/src/
  2. tar zxf nginx-1.16.1.tar.gz
  3. tar zxf openssl-1.1.1d.tar.gz
  4. tar zxf pcre-8.43.tar.gz

下载replace-filter-nginx-module运行库和replace-filter-nginx-module模块

  1. git clone https://github.com/agentzh/sregex && cd sregex && make && make install
  2. cd ..
  3. git clone https://github.com/agentzh/replace-filter-nginx-module

进入nginx安装目录对nginx进程从新编译

  1. cd nginx-1.16.1
  2. ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-http_mp4_module --with-openssl=../openssl-1.1.1d --with-pcre=../pcre-8.43 --with-pcre-jit --with-ld-opt=-ljemalloc --add-module=../replace-filter-nginx-module
  3. make

编译完成以后执行以下命令

  1. mv /usr/local/nginx/sbin/nginx{,_`date +%m%d`}  #备份现有nginx
  2. cp objs/nginx /usr/local/nginx/sbin/  #更新nginx
  3. nginx -t  #检查nginx语法
  4. service nginx restart

如果出现如下错误提示
:/usr/local/nginx/sbin/nginx: error while loading shared libraries: libsregex.so.0: cannot open shared object file: No such file or directory
请看这里建站之路一Nginx替换模块安装后错误解决记录

nginx.conf的使用方法举例:

  1. location /t {
  2.     default_type text/html;
  3.     echo abc;
  4.     replace_filter 'ab|abc' X;
  5. }
  6. location / {
  7.     # proxy_pass/fastcgi_pass/...
  8.     # caseless global substitution:
  9.     replace_filter '\d+' 'blah blah' 'ig';
  10.     replace_filter_types text/plain text/css;
  11. }

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: