LAMP php-gd Libraries
Everything seemed complete after configuring my standalone MySQL instance to a LAMP installation, but last night I started playing with the image files. It turns out that I failed to install the php-gd
library.
There’s very little feedback when you try to troubleshoot why you can’t read an image. In fact, the error message for reading the BLOB
from MySQL was only available on the local Firefox browser:
The image "http://localhost/ConvertMySQLBlobToImage.php" cannot be displayed because it contains errors. |
The fix requires root
to install the php-gd
library with the yum
utility:
yum install php-gd |
You’ll need to answer y
to one question during the installation:
Loaded plugins: langpacks, refresh-packagekit mysql-connectors-community | 2.5 kB 00:00 mysql-tools-community | 2.5 kB 00:00 mysql56-community | 2.5 kB 00:00 pgdg93 | 3.6 kB 00:00 updates/20/x86_64/metalink | 16 kB 00:00 Resolving Dependencies --> Running transaction check ---> Package php-gd.x86_64 0:5.5.22-1.fc20 will be installed --> Processing Dependency: libt1.so.5()(64bit) for package: php-gd-5.5.22-1.fc20.x86_64 --> Running transaction check ---> Package t1lib.x86_64 0:5.1.2-14.fc20 will be installed --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: php-gd x86_64 5.5.22-1.fc20 updates 89 k Installing for dependencies: t1lib x86_64 5.1.2-14.fc20 updates 164 k Transaction Summary ================================================================================ Install 1 Package (+1 Dependent package) Total download size: 252 k Installed size: 629 k Is this ok [y/d/N]: y Downloading packages: (1/2): php-gd-5.5.22-1.fc20.x86_64.rpm | 89 kB 00:00 (2/2): t1lib-5.1.2-14.fc20.x86_64.rpm | 164 kB 00:01 -------------------------------------------------------------------------------- Total 157 kB/s | 252 kB 00:01 Running transaction check Running transaction test Transaction test succeeded Running transaction (shutdown inhibited) Installing : t1lib-5.1.2-14.fc20.x86_64 1/2 Installing : php-gd-5.5.22-1.fc20.x86_64 2/2 Verifying : php-gd-5.5.22-1.fc20.x86_64 1/2 Verifying : t1lib-5.1.2-14.fc20.x86_64 2/2 Installed: php-gd.x86_64 0:5.5.22-1.fc20 Dependency Installed: t1lib.x86_64 0:5.1.2-14.fc20 Complete! |
After the installation, you can run the info.php
program, which contains the following:
1 2 3 | <?php phpinfo(); ?> |
You’ll find the following gd
library display in the result from the info.php
program:
After retesting, we get both large text and blob files displayed in the web page:
As always, I hope this helps others. Especially, those who are working with your LAMP stack implementation of images.