php Drupal 7.54设置aws elasticbeanstalk

时间:2017-03-24 08:21:19

标签: php amazon-web-services drupal drupal-7 settings

我正在尝试将AWS环境变量插入drupal 7.54中settings.php的数据库部分。我已经按照弹性beanstalk指南获取变量名称,并将它们复制到具有环境变量的docker中。

$dbhost = $_SERVER['RDS_HOSTNAME'];
$dbname = $_SERVER['RDS_DB_NAME'];
$dbuser = $_SERVER['RDS_USERNAME'];
$dbpasswd = $_SERVER['RDS_PASSWORD'];
$dbport = $_SERVER['RDS_PORT'];
$memcache1 = $_SERVER['MEMCACHED_ENDPOINT_1'];
$memcache2 = $_SERVER['MEMCACHED_ENDPOINT_2'];
$memcache3 = $_SERVER['MEMCACHED_ENDPOINT_3'];
$memcache4 = $_SERVER['MEMCACHED_ENDPOINT_4'];

我想将这些变量值传递给数组。

$databases = array (
  'default' =>
  array (
    'default' =>
    array (
      'database' => " $dbname ",
      'username' => " $dbuser ",
      'password' => " $dbpasswd ",
      'host' => " $dbhost ",
      'port' => " $dbport ",
      'driver' => 'mysql',
      'prefix' => '',
    ),
  ),
);

然而,它似乎没有获取值,如果静态输入值,它确实有效。

非常感谢有关此方面的任何帮助。

1 个答案:

答案 0 :(得分:0)

转储所有变量以检查其中是否包含数据!

我引起你的注意,你的代码被打开,以sql注入 我认为这是一个非常糟糕的方式..

你可以这样写的更多,双引号是没用的:

 $databases = array (
      'default' =>
      array (
        'default' =>
        array (
          'database' =>  $dbname ,
          'username' =>  $dbuser ,
          'password' =>  $dbpasswd ,
          'host' =>  $dbhost ,
          'port' =>  $dbport ,
          'driver' => 'mysql',
          'prefix' => '',
        ),
      ),
    );