亚马逊EC2 - PHP GD图像库

16

我刚刚安装了WordPress,并激活了自定义主题和许多插件。在文章中,我已经设置好用户可以创建文章、上传缩略图并且它会自动调整图像大小为我在functions.php文件中设置的自定义尺寸。

在我的本地环境(MAMP)中,所有这些都正常工作,但是当我尝试在我们的Amazon EC2服务器上使一切正常时,图像不会按照设定的尺寸调整大小。它们按照代码实际进行调整,但无法将图片保存为新的尺寸。

如果问题/主题完全没有意义,我感到抱歉,但我没有任何使用Amazon EC2服务器的经验,并且我被安排了一个负责EC2内所有工作的人离开项目后接替其位置的局面。

我认为这与GD库未安装有关... 我创建了一个包含phpinfo()的测试页面,结果页上没有看到GD区域。

我该如何在我的Amazon EC2服务器上安装库?我刚学会通过终端连接到服务器,现在只有这么多知识.. 这让你对我的知识水平有所了解。

5个回答

37

我猜你安装了某种Linux,可能是Ubuntu或CentOS。

Ubuntu: sudo apt-get install php5-gd CentOS: sudo yum install php-gd

之后您可能需要重新启动Apache:service httpd restartservice apache2 restart - 名称因发行版而异。

如果这个方法有效,请告诉我!


我来试一下... 我需要在特定的地方安装吗?是在包含我的WordPress安装的文件夹中还是在整个EC2设置的根目录中? - cqde
你需要使用SSH登录EC2实例,然后执行命令。可以使用发行版的软件包管理器安装带有GD的软件包。我忘记在最后两个命令前写sudo了,你也需要在那里使用它。 - Till
1
太好了!我通过SSH登录终端,并使用yum命令(因为我安装的是Yum而不是apt-get)在我的EC2服务器根目录中安装了该库。之后,我使用httpd方法重新启动。我创建了一个带有phpinfo和GD的测试页面,GD被显示为已启用! - cqde

28
在我的情况下,当我输入"yum install php-gd"时,出现了不同版本的php-common之间存在版本冲突的错误,因此我在shell中使用"php -v"检查了我的php版本,然后安装相应的gd,即"yum install php56-gd",因为我在我的机器上安装了php 5.6版本。
希望有人能从这里得到帮助。
祝好。

11

为避免兼容性问题,请首先执行:

php --version

了解你的php版本

答案通常是以“PHP X.Y.Z”的形式呈现的

因此,您需要获取X和Y值,并执行以下操作:

sudo yum install phpXY-gd

例如,如果php --version显示PHP 5.5.26,则您将执行以下操作:

sudo yum install php55-gd

1
这正是我一直在寻找的 - 谢谢!sudo yum install php56-gd,它完美地工作了。 - rog

10

对于我的情况,我正在运行 Amazon Linux 2 的 ec2 服务器,并且使用 php 版本 7.2.24,以下是序列:

sudo yum install php-gd

但即使重复重新启动服务器后

sudo systemctl restart httpd

除非我重新启动,否则它不起作用。

sudo reboot

非常感谢,兄弟。重启部分非常有用,而且很难找到。 - vimuth
3
不必重新启动计算机,你可以执行 sudo systemctl restart php-fpm 命令来加载新的模块。 - Frug

0
在Amazon Linux中,我们需要将以下行添加到etc/php.ini文件中。

extension=gd.so

步骤1:使用以下命令安装软件包

sudo yum install php-gd

步骤2:将以下行包含到etc/php.ini文件中

extension=gd.so

如果这行代码被注释了,那就把它取消注释。

步骤三:重启httpd服务

sudo service httpd restart


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接