php – 将Mercurial资源库部署到生产 – 安全问题和提示

前端之家收集整理的这篇文章主要介绍了php – 将Mercurial资源库部署到生产 – 安全问题和提示前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在我的研究中,我发现在部署在线 PHP应用程序的同时留下其生产服务器上的“.hg”文件夹或“.svn”文件夹的一些问题.不幸的是,我无法找到一个明确的解释,为什么这是一个问题.我想更好地了解这种安全隐患.

在我看来,你不希望这些文件夹可见,而不是你想显示PHP文件内容.将解决方案配置为不提供“.hg”目录的Web服务器?安全问题是否比这更深?我真的不知道您的帮助非常感谢!

如果这是有帮助的,我想在服务器的生产库中保留版本控制的原因如下:

>分期更快的部署(而不是每次部署新的副本)
>轻松快速的回滚功能
>验证生产保持不变(通过hg st)的能力

欢迎选择.

谢谢!

事实上,如果默认情况下可以依靠不提供.svn / .hg目录,那将是没有问题的.就这样,某个人(新手/新开发/经验不好的一天)就会发生一些变化,破坏这些设置,并且“没有什么问题”并没有注意到保护已经消失. Voilà,您的源代码向世界开放,甚至可能存储密码和秘密.这不正确的设置会出错,这是一个未成年人,容易被忽略的变化,他们可能会出错,为什么不玩安全?

在严格控制的发布过程中,我发现将某些分支/标签导出到某些文件夹变得更加容易,并且切换到在测试中幸存下来的新的分支/标签只是将文档根目录从/ path / project / release-123更改为/ path / project / release-124(使它变得简单,甚至可以更快)切换回release-123可能需要在那里).如果你有一个释放过程,更多的是一个小的变化流错误修正,出口工作确实会很痛苦,但是我认为增加的安全性是值得的.

在开发服务器上,所有内容都已经通过(VPN-)IP或证书进行了过滤,所以我用’最新&最好的trunk版本与版本控制dirs没有任何问题.

编辑:

Mercurial和Subversion现在都保留在顶级单个.hg / .svn目录中的数据.通常情况下,大多数文件都将在文档根目录之外进行结帐(文档根目录可能是进一步向下的子目录),这很好.只需确保您的版本控制目录不在文档根目录中的Web服务器的可达文件夹中,您可以保留结帐,而不是出现任何问题.

猜你在找的PHP相关文章