部署Mercurial库,以生产 - 安全问题和提示

在我的研究,我发现周围部署一个在线的PHP应用程序,而让“.hg”文件夹或“.svn文件”文件夹代替生产服务器上的一些担忧。 不幸的是,我没能找到一个明确的解释,为什么这是一个问题。 我想更好地了解这一安全隐患。

在我看来,你比你要显示的PHP文件的内容不希望这些文件夹可见了。 会不会解决方案是配置Web服务器不服务“.hg”目录? 是否安全运行的关注比这更深? 我真的不知道。 你有这种援助是非常感谢!

如果是有帮助的,我之所以要保留在服务器上的生产资源库版本控制如下:

  • 更快的部署,从舞台(与做每部署一个新的副本)
  • 方便快捷的回退功能
  • 以确认产生的能力保持不变(通过hg st

替代品的欢迎。

谢谢!

--------------解决方案-------------

事实上,如果能依靠不服务于.svn / .hg默认目录,这将是没有问题的。 正因为如此,有人(newbee /新开发/经历了一个糟糕的一天)也可以破坏这些设置的变化不大,而作为'万无一失'没有注意到保护已经一去不复返了。 瞧,你的源代码向世界开放,与甚至可能存储的密码及机密。 这并不是说事情会出错,正确的设置,那就是一个轻微,容易被掩盖了改变,他们可以去错了,那么为什么不发挥它的安全?

在严格控制的释放过程中,我发现很容易export某些分支/标记某些文件夹,并切换到一个新的领域/标签已存活测试只是改变了文档根目录的/path/project/release-123/path/project/release-124使它一样简单,甚至更快,切换回release-123可能需要在那里)。 如果你有一个小的变化和错误修正更多的是流的释放过程,其中出口工作确实是一个痛苦,但增加的安全性是值得的,在我看来。

在开发服务器,一切都已经上过滤(VPN-)IP地址或证书,所以我采用具有“最新和greatest`主干版本与版本控制迪尔斯检出没有任何问题。

编辑:

无论水银和颠覆时下保持在一个单一的.hg /的.svn目录中的顶级存在的数据。 正如人们通常会做一个结算,其中大部分文件是文档根目录外(和文档根目录可能是一个子目录进一步下跌), 是好的。 只要确保你的版本控制目录是不是在一个文件夹访问的文档根目录内的Web服务器,你可以保持结账而不是出口也没有太大的问题。

我有我的DocumentRoot是我的Mercurial库的克隆的粉丝。 事实上,你甚至可以配置回购对推动使用这样的挂钩自动更新:

[hooks]
changegroup = hg update

这意味着你可以hg push到回购您的服务器上,你会得到网站结账自动更新。 不少人都这样做。

其他的差异文件的风险被意外地提供给客户端我没有看到任何其他的安全问题。

考虑到你限制访问的.svn,.hg或其他。 事实上,你有这些文件夹存在导致你不必不断地执行限制他们,这是有风险的。 人的错误时有发生。

问候,阿林

分类:php 时间:2012-03-07 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.866 (s). 10 q(s)