2

所以我正在编写代码并将其推送到 github 并将其推送到 github 等......

问题是当我这样做时,我也在推送 Facebook API 密钥和 config.php 加密密钥之类的东西——有人知道如何在不这样做的情况下推送代码吗?

4

2 回答 2

3

只是不要将它们包含在您的代码中并使用环境变量:

$my_very_secret_key = getenv("MY_VERY_SECRET_KEY");

您将在您的网络服务器允许的任何地方定义此密钥。以 nginx 为例:

env MY_VERY_SECRET_KEY='OhThatsAVerySecretKey'

Heroku 建议使用此过程来存储 s3 凭据,恕我直言,这是最好的方法。

如果您使用包管理器(例如 composer),您可以安装Dotenv包,它允许您使用.env项目根目录中的文件。但请确保此文件无法从 Web 读取,否则您的安全密钥将被暴露。

于 2012-06-25T21:46:08.163 回答
1

将您的密钥存储在您使用项目级.gitignore排除的外部文件配置文件中。如果您已经提交了密钥,则应该使用 git-filter-branch(1) 从存储库中删除它们。

也可以看看

于 2012-06-25T21:47:57.603 回答