本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/51279582 未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys
1,静态资源
线上服务,有静态的html 比如首页,资讯页面,关于公司,加入我们,帮助页面。
都是静态的html页面。后台写了一个CMS系统,使用velocity 配置模板,然后生成html页面。在同步到线上服务器上面。
主要使用的就是 rsync 同步。
2,首先必须ssh 打通
假设 CMS 的机器是 192.168.100.101 。
线上的两台 nginx 服务器是 192.168.100.108 , 192.168.100.109。
要rsycn 同步到nginx。所以必须在nginx上面配置cms的key。
1,在cms的机器上面生成密钥。假设是root用户。
执行 ssh-keygen 即可。
在/root/.ssh 会生成两个文件,id_rsa, id_rsa.pub。
查看 id_rsa.pub 的内容。
cat id_rsa.pub
拷贝置线上nginx服务器的 /root/.ssh/authorized_keys
主要 必须是整体的一行,不能换行。
然后在 cms机器上面执行:
ssh root@192.168.100.108
ssh root@192.168.100.109
看看通了没有。如果遇到
Permission denied (publickey)
这个问题,必须检查下权限:(nginx 端和cms的权限)
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
3,rsync
配置ssh之后就可以使用 rsync工具了非常的简单:
rsync -rcv /data/nginx/html root@192.168.100.108:/data/nginx/html
rsync -rcv /data/nginx/html root@192.168.100.109:/data/nginx
nginx 的root指向 /data/nginx/html目录就可以了。
4,总结
本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/51279582 未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys
rsync工具非常的好用,没有修改的文件不会被同步。同步修改的文件。
也就是增量同步数据。这样解决了CMS发布同步nginx的问题。