Captcha image not showing

Permalink 3 users found helpful
For some reason, when I add a captcha requirement to a Concrete form, and also when I add captcha to a form on a single page, the image does not display. I either get the alt-text or a broken image icon (depending on browser). The image is supposed to be found at /index.php/tools/required/captcha but nothing displays.

Is this a permissions problem? Any ideas?

View Replies:
njbabs replied on at Permalink Reply
I have the same problem
would love any help.
ddkooij replied on at Permalink Reply
I have the same problem and I have run out of ideas. Tried everything I could but did not manage to find the problem. On your site it is working again, I see. You know how you did this?

darryloctober replied on at Permalink Reply
Yeah, same problem here. Captcha Images are not being served up, even on a fresh install downloaded a few days ago.
katz515 replied on at Permalink Reply
[Dashboard] - [Sitewide Setting] - [Debug]

Under debug level, check if your site is in development mode, switch it to production mode.

My server had the issue in development mode.
vp3 replied on at Permalink Reply
Didn't work for me. However, since my original I've made the decision to move away from Captcha anyway and use a different strategy for catching spam entries - thanks...
ScottC replied on at Permalink Reply
I am not that fond of the actual look of the captcha currently, I think a "human problem" is always nice combined with hidden input values to trick spammers into filling out a hidden field which obviously means it was machine read :)
vp3 replied on at Permalink Reply
Yeah - I'm using hidden fields as well - going to see if that keeps the spam traffic down by itself...
darryloctober replied on at Permalink Reply
Thanks Katz, that worked for me.
Really appreciate the help.
njbabs replied on at Permalink Reply
thanks katz, worked on my site.
dlacy replied on at Permalink Reply

That did not work for me. Has anyone come up with an alternate solution? (aside from using hidden elements)

clintre replied on at Permalink Reply
Anyone get this working? I am having this problem after moving my site from one host to another. GD is installed and working.
Tony replied on at Permalink Reply
I just ran into this same issue and it was a permissions problem. make sure that the file /concrete/libraries/3rdparty/secureimage/elephant.ttf has 775 permissions.
nickw replied on at Permalink Reply
I'm having the same issue on Dreamhost. Doesn't seem to be a permissions problem. I suspect it's a path issue - but I can't find a path to elephant.ttf that works.

I also don't see anything in the error log, and the access log shows a 200 for the image request.

Any ideas?
pinkboi replied on at Permalink Reply
Also make sure that your PHP install has not only GD, but also TrueType compiled in. I was baffled since GD was present, but then it occurred to me that something else must be making the text. Of course!
ryan replied on at Permalink Reply
Here's an override ValidationCaptchaHelper class that specifies the use of a gd font. Add this in: /helpers/validation/captcha.php

class SiteValidationCaptchaHelper extends ValidationCaptchaHelper {
   public $securimage;
   public function __construct() {
      $this->securimage = new Securimage();
      /* specify securimage to use gd fonts becuase freetype is not compiled into gd */
      $this->securimage->use_gd_font = true;
      $this->securimage->gd_font_file = DIR_LIBRARIES_3RDPARTY_CORE.'/securimage/gdfonts/caveman.gdf';
      $this->securimage->ttf_file = DIR_LIBRARIES_3RDPARTY_CORE . '/securimage/elephant.ttf';
hbartlett replied on at Permalink Reply
Thanks for pointing this out; I knew there wasn't a problem with the latest C5 because I've installed it many times on other servers, but on a new server I had this problem and did not want to resort to hacks every time.
facerX replied on at Permalink Reply
I'm having this problem with a site. It was working fine and then seemed to just stop working after I instealled c5touch with the instructions on Andrew Embler's site ( It may be unrelated, but I noticed the captcha's stopped working when I started working on the mobile theme.

The permissions on the elephant.ttf file are correct, and I tried Ryan's solution of adding a class to concrete/helpers/valiadation/captcha.php but that didn't work either.

I even undid all the changes I made installing c5touch with no luck.
PassionForCreative replied on at Permalink Reply
Hi everyone, wasn't having much success with this.

I tried Katz515's suggestion of changing to production mode and that didn't work.

I tried changing the permissions on elephant.ttf to 775 and that didn't work.

Then I tried changing lines 36 - 46 to the code that Ryan suggested & BINGO!!!!

Ryan, I've said it before & most likely I'll say i again.

senshidigital replied on at Permalink Reply
None of this has helped me. Is it because the C5 site has been updated to the latest version and its somehow lost the link to the appropriate files?

Really need to get this working.
ddkooij replied on at Permalink Reply
Is there by any change, somebody that solved the problem and could post it on this forum. I have run out of resources and tried everything that is mentioned over this problem.

I have
- updated concrete5 but image is still not showing. So I guess I can conclude that there is no file corrupted in the concrete directory.
- I disabled overrides of the specific blocks.
- [site]/concrete/libraries/3rdparty/securimage/securimage_show.php shows a captcha
- seems like my site doesn't interpretate the output of the captcha as image.

I anyone found a possible solution, it would make my day.

Thannks in advance
hbartlett replied on at Permalink Reply
It might have to do with your server. In my case, I had to recompile PHP with GD & Truetype (it was a new server so I categorize it under final tweaking).
ddkooij replied on at Permalink Reply
I tested a copy on a local server as well, and still it didn't show up. A similar site runs fine locally and online with the same hoster...

So I think this is not really the problem. But thanks for answering. I appreciate it.

rockface replied on at Permalink Reply
In my case it was that the server was not configured for true type fonts.

In WHM, look for "EasyApache (Apache Update)"
Step 1 (Profile): Click "Start Customizing based on profile"
Step 2 (Apache Version): Click "Next Step"
Step 3 (PHP Major version): Click "Next Step"
Step 4 (PHP Minor version): Click "Next Step"
Step 5 (Short Options List): Click "Exhaustive Options List"

On this page: CHECK the box for "TTF (FreeType)"

Click "Save and build"

NOTE: This only works if you have a dedicated server or a VPS, if you are hosting through another service, you may need need to send these steps to your hosting service.

NOTE2: This process will rebuild the Apache libraries (it takes about 5 minutes to recompile) and it all runs in as a background process. Once it is finished, it replaces the currently libraries so fast, my web page never stopped working.
PatrickCassidy replied on at Permalink Reply
Thanks Rockface, this was the answer for me after migrating to a new server.
paulharbison replied on at Permalink Reply
Just in the process of migrating concrete5 to our own VPS and this solved my problem with the CAPTCHA not displaying.

Thanks a million!
Saved me hours of head scratching!!