如何用 PHP 替换 Elastic beanstalk EC2 实例上的 php.ini?

如何用 PHP 替换 Elastic beanstalk EC2 实例上的 php.ini?

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

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

    files:
  "/etc/php.ini":
    mode: "000644"
    owner: root
    group: root
    source: https://bucketname.s3.amazonaws.com/php.ini

我已将自定义 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> 

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

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

答案1

你不会想这么做的。由于这是滚动发布,因此它可能会破坏 Amazon AMI 的升级路径。

无需全部替换整个文件,只需在自定义 .ini 文件中指定所需的更改并将其放入 中即可/etc/php.d/。如果自定义 .ini 中的设置与 中指定的设置冲突php.ini,则自定义设置将优先。

相关内容