【问题标题】:php Drupal 7.54 settings aws elasticbeanstalkphp Drupal 7.54 设置 aws elasticbeanstalk
【发布时间】:2017-08-17 02:25:20
【问题描述】:

我正在尝试将 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' => '',
    ),
  ),
);

但是它似乎没有获取值,如果值是静态输入的,它确实可以工作。

非常感谢您对此提供的任何帮助。

【问题讨论】:

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


    【解决方案1】:

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

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

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

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

    【讨论】:

      猜你喜欢
      • 2018-03-28
      • 2020-12-09
      • 1970-01-01
      • 2023-04-02
      • 2019-04-11
      • 2020-12-13
      • 2014-10-20
      • 2017-01-31
      • 2017-09-13
      相关资源
      最近更新 更多