Иногда мой домен (example.test.org) показывает мне ошибку при вызове любого API.
"{"error":{"code":500,"message":"Undefined index: DB_HOST","file":"\/var\/www\/app\/config\/production\/database.php","line":7}}".
Но с публичным IP-адресом моей локальной машины он работает. По какой-либо причине он возвратит ошибку из одного домена, но не другой? API работает на Laravel 4.2.
Вывод базы данных .php
<?php
return array(
'default' => 'pgsql',
'connections' => array(
'pgsql' => array(
'host' => $_ENV['DB_HOST'],
'port' => $_ENV['DB_PORT'],
'database' => $_ENV['DB_NAME'],
'username' => $_ENV['DB_USER'],
'password' => $_ENV['DB_PASS'],
),
),
);
Эти значения взяты из /var/www/.env.php, который выглядит как
return array(
'DB_HOST' => 'my-app.cvrrctfasmvk.us-east-1.rds.amazonaws.com',
'DB_PORT' => '*****',
'DB_NAME' => '**************',
'DB_USER' => '**********',
'DB_PASS' => '***********',
'SMTP_HOST' => '*******************',
'SMTP_USER' => '***********************',
'SMTP_PASS' => '********************************',
'AWS_KEY' => '****************************',
'AWS_SECRET' => '*******************',
'AWS_QUEUE' => '*****************************************',
'FB_APP_ID' => '*****************',
'FB_APP_SECRET' => '*********************'
);
Файл хоста DB выглядит, кстати, так. причем, конечно, идентифицируемые значения изменяются на x
<?php
return array(
'DB_HOST' => 'my-app-.xxxxxx.us-east-1.xxx.amazonaws.com',
'DB_PORT' => 'xxxx',
'DB_NAME' => 'xxxx_app_xxx_db',
'DB_USER' => 'xxxx',
'DB_PASS' => 'xxxx',
'SMTP_HOST' => 'email-xxx.xxxx.amazonaws.com',
'SMTP_USER' => 'xxxxxxx',
'SMTP_PASS' => 'xxxx',
'AWS_KEY' => 'xxx',
'AWS_SECRET' => 'xxxx',
'AWS_QUEUE' => 'https://sqs.xxxxx.amazonaws.com/xxxx',
'FB_APP_ID' => 'xxxxx',
'FB_APP_SECRET' => 'xxxx'
);
Похоже, у него проблемы с чтением файла /var/www/.env.php. Поскольку первый элемент массива возвращает ошибку.