Извините, если мой вопрос тупой, но я не могу найти никакой помощи в этом. Я получил отчет о тестировании приложений Laravel 5 с рекомендацией удалить жестко закодированные учетные данные из app/config/database.php
, Но где еще я могу сохранить учетные данные БД и как?
Eсть .env
файл в корне проекта laravel. Вы должны добавить учетные данные там.
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 доктор.
Вы можете хранить информацию такого типа в файле вашей среды (.env).
Этот файл существует в корне вашего проекта, если он не существует, вы можете создать его вручную или сделать копию файла .env.example, если он существует.
Пример хранения данных:
//.env file
DB_NAME="project_db"
И использовать эту переменную в любом другом файле вашего проекта laravel:
ENV('DB_NAME') //returns "project_db"
Просто как тот.
Обратите внимание, что файлы .env зависят от среды, в которой сейчас используется проект, и могут потребоваться изменения в разных средах. Обычно файлы .env не хранятся в репозиториях и не развертываются в новой среде со всем проектом.