有谁知道如何使用配置文件 (.ebextensions) 在 AWS Elastic Beanstalk 上安装和启用 PHP IMAP 扩展?
我正在使用运行 PHP 7.0.16 的 64 位 Amazon Linux 2017.03 v2.4.0
我尝试了以下几种方法:
第一种方法
我尝试files
在配置文件中使用但它不起作用,配置文件名位于以下设置phpini.config
的目录中:.ebextensions
files:
"/etc/php.d/phpimap.ini":
mode: "000755"
owner: root
group: root
content: |
extension=imap.so
通过显示.ini
解析的附加文件,但不会安装 IMAP。phpinfo()
/etc/php-7.0.d/phpimap.ini
第二种方式用于安装 php-
imapcontainer_command
但我收到错误。
container_commands:
install_php_imap:
command: yum install php55-imap
第三种方式
使用组合commands
& files
,仅成功安装IMAP和依赖项(php common),但不会激活IMAP
一个。通过添加以下脚本在我的 .ebextensions 中创建 installdependencies.config:
commands:
install_phpcommon:
test: '[ ! -f /etc/php.d/curl.ini ] && echo "php common not installed"'
command:
yum -y install https://archipelagointernational.s3.amazonaws.com/libs/php70w-common-7.0.16-1.w6.x86_64.rpm
湾。通过添加以下脚本在我的 .ebextensions 中创建 phpini.config:
commands:
install_phpimap:
test: '[ ! -f /etc/php.d/imap.ini ] && echo "php imap not installed"'
command:
yum -y install https://archipelagointernational.s3.amazonaws.com/libs/php70w-imap-7.0.16-1.w6.x86_64.rpm
files:
"/etc/php.d/imap.ini":
mode: "000755"
owner: root
group: root
content: |
extension=imap.so
第四种方法我通过添加upload_max_filesize
,post_max_size
和extension=imap.so
to进行测试,zzzphp.ini
并且只包含两个值,即upload_max_filesize
and post_max_size
。未extension=imap.so
包含在zzzphp.ini
文件中。
以下是中的phpini.config
脚本.ebextensions
:
commands:
install_phpimap:
test: '[ ! -f /etc/php.d/imap.ini ] && echo "php imap not installed"'
command:
yum -y install https://archipelagointernational.s3.amazonaws.com/libs/php70w-imap-7.0.16-1.w6.x86_64.rpm
files:
"/etc/php.d/zzzphp.ini":
mode: "644"
content: |
upload_max_filesize = 50M
post_max_size = 58M
extension=imap.so
有什么建议么?
提前致谢。