我有一个受源代码控制(Git)控制的网站,并为两个不同的服务器使用两个分支。master
分支反映了生产网站,分支develop
是部署到我们的测试服务器的内容。
但是,测试服务器是可公开访问的,但到目前为止,它一直受到.htaccess和.htpasswd的保护。
.htaccess文件中有很多RewriteRule
指令,想知道:让两台服务器使用相同的.htaccess规则但测试站点也有.htpassw规则的最佳方法是什么?
通常,代码存储库中根本不应该有任何与密码相关的信息。
也就是说,假设您从开发合并到主控,您实际上不能只有一个文件位于开发分支和主控中。您也许可以在签出 master 时使用 git 挂钩(可能是接收后,具体取决于您的机器的设置方式)来删除文件,但这非常脆弱。
更好的方法是根本不将文件放在 git 中,而是手动维护它。你可以在测试服务器上有一个 git 钩子,它从其他地方复制 .htpasswd 文件。或者,您甚至可以将该文件保存在单独的存储库中,并将其符号链接到测试服务器的目录中。