我们在EC2实例上使用aws弹性beanstalk作为我们的PHP应用程序.由于我们选择了负载平衡,因此它会不断更改实例.
我想知道我们是否安装了一个PHP插件,是否会受到实例更改的影响,或者它也可以在新实例中使用?
提出这个问题是因为我们观察到每次实例都是由弹性beanstalk改变的,我们的应用程序被重新部署.
我们需要安装Geoip插件.如何安装它而不影响实例更改?
解决方法:
如果保存env设置,则在执行应用程序时始终具有相同的EC2设置.
我更喜欢使用代码进行这种自定义(您也可以使用AWS控制台执行此操作).因此,使用以下路径在源根目录中创建文件:
带有这些内容的.ebextensions / PHP-modules.config(ps:我在生产中使用它没有问题):
commands:
01_redis_install:
# run this command from /tmp directory
cwd: /tmp
# don't run the command if PHPredis is already installed (file /etc/PHP.d/redis.ini exists)
test: '[ ! -f /etc/PHP.d/redis.ini ] && echo "redis not installed"'
# executed only if test command succeeds
command: |
wget https://github.com/nicolasff/PHPredis/zipball/master -O PHPredis.zip \
&& unzip -o PHPredis.zip \
&& cd PHPredis-PHPredis-* \
&& PHPize \
&& ./configure \
&& make \
&& make install \
&& echo extension=redis.so > /etc/PHP.d/redis.ini
这是用于安装PHP-redis,但您也可以使用相同的方法进行geoip.
示例来源:http://qpleple.com/install-phpredis-on-amazon-beanstalk/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。