首页 > 系统相关 >nginx 文件同步方案

nginx 文件同步方案

时间:2022-08-17 22:00:07浏览次数:58  
标签:文件 同步 vhosts 环境 nginx html conf 目录

由于公司有多套相对独立测试环境,每次迭代上线后,需要对nginx进行同步。
同步主要分为html目录文件同步和nginx conf文件同步。
html的同步方式比较简单,对于没有特殊需求的环境,直接将整个html目录同步过去;
对于有特殊目录要求的环境,则针对特殊目录进行同步即可。

对于conf文件,一般都放置于conf目录下的vhosts目录中。
conf文件不同环境主要有以下一些不同点。
1.server_name 一般带有环境的特征(test1xxx.xxx.com) 或者ip地址(x.x.x.x)
2.proxy_pass 可能会有环境相关的域名(t1xxx.xxx.com) 或者ip+端口的形式(x.x.x.x:xx)

所以同步的方案就按如下步骤进行
1.将目标环境的html,vhosts目录生成备份目录
2.将源环境的html,vhosts目录scp到目标环境
3.将环境相关特征使用目标环境的信息替换源环境的信息 eg test1 --> test2
4.再将相关的ip,port一一替换

具体实现
使用python paramiko模块来操作linux命令
1.连接目标环境机器,查看html/vhosts目录是否存在,存在则生成备份目录(mv)
2.使用scp 命令将html/vhosts目录从源服务器同步到目标服务器。
3.使用perl 命令将conf文件的所有源环境信息替换成目标环境信息 perl -p -i -e "s/test1/test2/g" ./*.conf
4.遍历所有conf文件,读取是否存在相应ip或者端口信息,有则用目标环境的相关信息替换,生成新的conf文件

标签:文件,同步,vhosts,环境,nginx,html,conf,目录
From: https://www.cnblogs.com/mtck/p/16596938.html

相关文章

  • curl上传文件
    用hfs开服务器,设置所有人都能上传curl-F'[email protected]'http://127.0.0.1/hfs-upload/设置用户权限后需要同时有access和upload权限curl-uuser:password......
  • Zblog静态html文件生成报错:Empty reply from server如何处理?
    zblog使用静态化插件生成html时,报错Emptyreplyfromserver;如图:  一般是防火墙开启了,导致写入文件权限受阻。解决方法:关闭防火墙,重新执行生成静态文件即可。 ......
  • Unity 代码调用重新生成csproj文件
    结论先放结论:editor代码中直接调用Unity.CodeEditor.CodeEditor.CurrentEditor.SyncAll();原因在一些操作后,比如修改csc.rsp的内容之后,需要重新生成csproj文件方......
  • 用户和用户组文件
    用户和用户组文件/etc/passwd完成用户管理的工作有许多种方法,但是每一种方法实际上都是对有关的系统文件进行修改在Linux系统中,所创建的用户帐号和其相关信息(密......
  • Canal 数据同步 到 Kafka Canal 配置2
    配置canalvim/opt/module/canal/conf/canal.properties##########################################################commonargument###############......
  • python 日志写入文件
    importloggingfmt="%(asctime)s%(filename)s[line:%(lineno)d]%(levelname)s:%(message)s"logging.basicConfig(level=logging.DEBUG,format=fmt,......
  • 大文件上传控件webupload插件
    ​这里只写后端的代码,基本的思想就是,前端将文件分片,然后每次访问上传接口的时候,向后端传入参数:当前为第几块文件,和分片总数下面直接贴代码吧,一些难懂的我大部分都加上注......
  • Git 删除本地文件后,从远程仓库重新获取
    基础命令gitadd.//会将文件添加到本地暂存区,未生成版本gitcommit-m'xx'//提交后会生成最新版本gitcheckout'文件名'//恢复该文件到未修改之前内容gitresetHEA......
  • nginx 113: No route to host
    nginx113:Noroutetohost1.1背景用容器启动的nginx服务启动正常,upstream访问后端的时候,nginx日志里有报错:failed(113:Noroutetohost)whileconnectingtou......
  • infowear下拉同步
    importosimportsubprocessimportsysimportuiautomator2asu2importtimeclassLogger(object):def__init__(self,fileN="Default.log"):self.terminal......