'Yii 2 giving an exception when clicking on the default contact tab
I am getting this error when I run on my mac with localhost.
Either GD PHP extension with FreeType support or ImageMagick PHP extension with PNG support is required.
I think the problem comes with the PNG picture that is being rendered by default on the contact page. All of the code is the basic code that is given by the Yii framework: here Only happens when I click the Contact tab on the navigation bar.
Solution 1:[1]
For solve problem, first install php-gd module on your system. After that open php.ini on your editor and search for ;extension=gd.so and remove the heading ; sign. Then restart your apache service ;).
For Arch Linux you can do followings (Lines that begins with # are command of terminal):
# pacman -S php-gd# vim /etc/php/php.ini- Press
/and typegdthen pressEnter - Find
;extension=gd.soand convert it intoextension=gd.soby moving cursor on;sign and pressx - Press
Escand type:wqand pressEnter # systemctl restart httpd.service
Solution 2:[2]
With this two lines it is okeyokay:
sudo apt install php-gd
sudo service apache2 restart
Solution 3:[3]
As suggested in the comments.
The contact form contains a .png picture in the form of a captcha image. The captcha image is used there to prevent spam being send via the contact form.
- You can edit the view page and remove the captcha
- You can install php-gd or php-imagick extension
Solution 4:[4]
Instead of using the latest version I tried downloading ImageMagick-6.7.7-5-Q16-windows-dll from here. That one actually worked with the php_imagick.dll (Imagick for PHP 5.5.x) from http://www.peewit.fr/imagick/.
This is not the latest version but it worked. (even without restarting the computer)
Solution 5:[5]
Infact in Windows 10 environment, installed with WAMP Server, it was a matter of copying php.ini file to C:\wamp64\bin\apache\apache2.4.27\bin\
It was missing at that location.
Solution 6:[6]
Try un-commenting extension=gd2 in php.ini. Then restart apache.
Solution 7:[7]
On windows, if you already install php > 7.0, then Check php_gd2.dll is in your extension directory and uncomment ;extension=gd2 of your php.ini.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | meysam |
| Solution 2 | |
| Solution 3 | ThomasVdBerge |
| Solution 4 | Vadim Kotov |
| Solution 5 | Frank R Tilugulilwa |
| Solution 6 | RyanT |
| Solution 7 | Mr C |


