在 Laravel 框架中删除硬编码的 Mysql 凭据
Remove hardcoded Mysql Credentials in Laravel Framework
抱歉,如果我的问题很愚蠢,但我找不到任何帮助。我收到一份 Laravel 5 应用程序测试报告,建议从 app/config/database.php
中删除硬编码凭据。但是我还能在哪里保存数据库凭据以及如何保存?
laravel 项目根目录中有一个 .env
文件。您应该在那里添加凭据。
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=
DB_USERNAME=
DB_PASSWORD=
并在 database.php
-
'driver' => 'mysql',
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
为了更好地理解,请阅读 Laravel 官方 doc。
您可以将这些类型的信息存储在您的环境 (.env) 文件中。
此文件存在于您的项目根目录中,如果不存在,您可以手动创建它或复制 .env.example 文件(如果存在)。
数据存储示例:
//.env file
DB_NAME="project_db"
并在您的 laravel 项目的任何其他文件中使用此变量:
ENV('DB_NAME') //returns "project_db"
就这么简单。
注意 .env 文件取决于项目当前使用的环境,并且可能必须在不同的环境中更改。通常 .env 文件不会存储在存储库中,也不会将整个项目部署到新环境中。
抱歉,如果我的问题很愚蠢,但我找不到任何帮助。我收到一份 Laravel 5 应用程序测试报告,建议从 app/config/database.php
中删除硬编码凭据。但是我还能在哪里保存数据库凭据以及如何保存?
laravel 项目根目录中有一个 .env
文件。您应该在那里添加凭据。
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=
DB_USERNAME=
DB_PASSWORD=
并在 database.php
-
'driver' => 'mysql',
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
为了更好地理解,请阅读 Laravel 官方 doc。
您可以将这些类型的信息存储在您的环境 (.env) 文件中。
此文件存在于您的项目根目录中,如果不存在,您可以手动创建它或复制 .env.example 文件(如果存在)。
数据存储示例:
//.env file
DB_NAME="project_db"
并在您的 laravel 项目的任何其他文件中使用此变量:
ENV('DB_NAME') //returns "project_db"
就这么简单。 注意 .env 文件取决于项目当前使用的环境,并且可能必须在不同的环境中更改。通常 .env 文件不会存储在存储库中,也不会将整个项目部署到新环境中。