ste*_*tep 2 git gitignore laravel
Laravel的官方网站建议我们将.env放入gitignore等等.
为什么?一旦忘记了如何设置配置,我觉得将来使用起来非常方便.
mil*_*526 15
您的.env文件包含非常敏感的信息(至少是您的应用密钥).您不希望在版本控制中使用此功能,每个人都可以看到此信息,并可能使用它来攻击您的网站.
考虑可能存储在那里的数据库信息或电子邮件密钥或密码.此外,您在.env文件中使用的信息可能也需要在不同环境之间进行更改,因此您无论如何都需要更改值.
你应该怎么做?在此文件中创建
一个文件.env.example,放置您的所有密钥.env.
恩.
APP_ENV=local
APP_DEBUG=true
APP_KEY=SomeRandomString
APP_URL=http://localhost
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
Run Code Online (Sandbox Code Playgroud)
在这里,您可以看到一个文件,其中所有想要使用您的代码的人的所有必要信息都可用,但没有敏感信息.然后有人可以把它复制.env.example到.env并更改值.
这里的答案和许多文章都说 .env 包含敏感信息,因此不应将其放入源代码管理中。但问题是 .env 不仅仅包含敏感信息,它还可能包含典型的设置配置。您可以只保留敏感信息并将所有其他设置保留在 git 中。
\n\n有人建议将 .env.example 放入 git 中,我实际上遵循了一段时间,但发现它非常 \xe2\x80\x9cin方便\xe2\x80\x9d,尤其是对于新加入团队的人。当他们检查代码时,发现代码无法运行,然后他们只是从其他老家伙那里复制.env(而不是从.env.example复制并进行必要的更改。)b/c用于开发环境,甚至包括API等敏感信息密钥/数据库密码是共享的。
\n\n通常,整个开发团队都会拥有一个 API 密钥和一个数据库设置。我经常看到这种情况发生,这让我怀疑 .env.example 的使用。
\n\n所以现在我采用的做法是将.env放入git中,并将敏感信息放入.env.local中,这是gitignored的。
\n\nRuby dotenv gem 建议这样做https://github.com/bkeepers/dotenv#what-other-env-files-can-i-use
\nSymfony 4 也更改为这种行为
\n当我做 Nodejs 项目时,我也使用 npm名为dotenv-flow 的软件包可以做到这一点。
| 归档时间: |
|
| 查看次数: |
8425 次 |
| 最近记录: |