Я принимаю проект PHP на серверах AWS EC2 с использованием эластичного бобового стебля. Я настроил свой ENV Vars используя php dotenv
, которые, кажется, становится все мои ВАР просто отлично от моего корня .env
файла:AWS ElasticBeanstalk ENV Vars не работает
DbConnect.php:
require '../vendor/autoload.php';
$dotenv = new Dotenv($_SERVER['DOCUMENT_ROOT']);
$dotenv->load();
$DB_HOST = getenv('DB_HOST');
$DB_USERNAME = getenv('DB_USERNAME');
$DB_PASSWORD = getenv('DB_PASSWORD');
$DB_DATABASE = getenv('DB_DATABASE');
$mysqli = new mysqli($DB_HOST, $DB_USERNAME, $DB_PASSWORD, $DB_DATABASE);
Таким образом, в консоли управления AWS, Я настроил те же самые имена ENV vars в конфигурации программного обеспечения, git push и re eb-deployed. Я получаю 500 ошибок, потому что EC2 ENV vars, похоже, не собираются.
Есть ли что-то еще мне нужно сделать?
Update:
eb printenv
отображаются правильные значения VAR ENV.
Не знаю, кто вниз голосовать без каких-либо комментариев. Вопрос выглядит нормально для меня с деталями. Если вы проиграли, вы должны указать некоторые причины. – BMW
Вы всегда можете использовать 'eb printenv', чтобы убедиться, что env vars - это то, что вы ожидаете от них. –
Вы пытались использовать синтаксис '$ _SERVER ['DB_HOST']' для всех envvars вместо getenv? –