本文主要讲 如何全局替换站点指定字符串、若是制做docker容器镜像、如何使用dockerfile制做镜像、nginx含插件编译。
复制代码
前言
前段时间某个场景须要将咱们产品中的一些文字替换成另外的一些文字,好比原来全站http改成https(或者将http://改成//);好比CDN节点地址替换;好比原来是AAA产品,如今须要改成BBB产品;好比原来网站名叫CCC,如今改成DDD等。相似的需求,若是一个个改,会耗费很多时间,并且不免会遗漏。因而,临时解决方案:使用nginx的ngx_http_substitutions_filter_module模块进行全局替换。javascript
可能有人说,这样替换性能不是有损耗吗?我以为能够限定http返回头(application/xml application/javascript text/css text/xml),对于图片啊,文件啊啥的不替换;其次,也能够提升nginx在集群中的副本数量。css
认识nginx内容替换模块
ngx_http_substitutions_filter_module是一个可替换内容的nginx插件,html
可支持:
中英文替换
正则替换
支持多种替换逻辑
具体替换逻辑及使用以下以下:
subs_filter source_str destination_str [参数]java
g(default): 所有替换
i: 不准分大小写替换.
o: 只替换一次
r: 正则表达式
做用域:
http