如何在用于 PHP 的弹性 beantalk EC2 实例上替换 php.ini?

Ruc*_*ami 3 amazon-s3 amazon-ec2 amazon-beanstalk

我一直在探索 Elastic Beanstalk 以便轻松部署我的 PHP 5.4 应用程序。对于我的应用程序,我需要在 php.ini 文件中进行更改。

在互联网上进行了一些搜索后,我尝试使用 git 目录中的配置文件。以下是我.elasticbeanstalk在 git 目录下的目录中的文件(.config)的内容:

    files:
  "/etc/php.ini":
    mode: "000644"
    owner: root
    group: root
    source: https://bucketname.s3.amazonaws.com/php.ini
Run Code Online (Sandbox Code Playgroud)

我已经将我的自定义 php.ini 上传到了 s3 上我自己的存储桶中,并已将所有权利授予每个人。但是在多次部署后,我仍然看不到部署的新文件。

我正在使用以下代码来检查 php.ini 文件中的更改。

    <html>
 <head>
  <title>PHP Test</title>
 </head>
 <body>
 <?php echo '<p>Hello World2<br/></p>'; 
 echo 'display_errors = ' . ini_get('display_errors') . "\n";
 echo 'register_globals = ' . ini_get('register_globals') . "\n";
echo 'post_max_size = ' . ini_get('post_max_size') . "\n";
echo 'include_path = ' . ini_get('include_path') . "\n";
 ?> 
 </body>
</html> 
Run Code Online (Sandbox Code Playgroud)

在我的自定义 php.inipost_max_size中,值 8M,在 beanstalk 应用程序上显示为 32M。

编辑:我已经从运行我的应用程序的 EC2 实例下载了我的 php.ini 文件。它与我的自定义 php.ini 不同。此外,我正在使用<?php phpinfo(); ?>从我的 php 页面检查更改。

jam*_*ieb 6

你不想这样做。它可能会打破亚马逊 AMI 的升级路径,因为它是一个滚动版本。

不要批量替换整个文件,而是在自定义 .ini 文件中指定您需要的更改并将其放入 .ini 文件中/etc/php.d/。如果自定义 .ini 中的设置与 中指定的设置冲突php.ini,则自定义设置优先。