Despite having tried the tips from Image transforms returning cpresources url, I am still having issues with image-transforms.

I am running Craft Pro 2.5.2754

asset-source details as follows:

Handle: paragraphPictures
Type: Local folder
Path: ./uploads/images/paragraphPictures/
URL: /uploads/images/paragraphPictures/

image-transform details as follows:

Handle: frontpageNewsPicture
Mode: Crop
Crop Position: Center Center
Width: 492
Height: 348
Quality: Auto
Format: png

'generateTransformsBeforePageLoad' => true is set in craft/config/general.php

folder-permissions as follows:

public/images including all sub-folders and files are owned by apache:apache (the user that runs the apache service) with 777 rights


{% if entries|length %}
    <ul class="entry-list clear">
        {% for entry in entries %}
            {% set entryUrl = entry.url %}
            {% set picture = entry.pictures.first() %}
                <div class="entry-container">
                        {% if picture %}
                        {% set picData = craft.norsok.getPicData(picture) %}
                        {% set maxWidth = picture.getWidth('frontpageNewsPicture') %}
                        <a class="entry-image" href="{{ entryUrl }}">
                            <img class="entry-picture"
                                     src="{{ picture.getUrl('frontpageNewsPicture') }}"
                                     style="max-width: {{ maxWidth }}px;"
                                     title="{{ picData['title'] }}"
                                     alt="{{ picData['altText'] }}" />
                    {% endif %}
                    <h3 class="entry-name">
                        <a href="{{ entryUrl }}">{{ entry.title }}</a>
                    <h4 class="entry-ingress">
                        <a href="{{ entryUrl }}">{{ entry.ingress }}</a>
        {% endfor %}
{% endif %}

this is what the page-source looks like

<img class="entry-picture" src="http://norsok.tibe.no/cpresources/transforms/1?x=bptVEjjgx" style="max-width: 492px;" title="Stengelnematode G  Taksdal" alt="En Stengelnematode (Foto: G. Taksdal)">

and this is what my console tells me

GET http://norsok.tibe.no/cpresources/transforms/2?x=bptVEjjgx 500 (Internal Server Error)
GET http://norsok.tibe.no/cpresources/transforms/1?x=bptVEjjgx 500 (Internal Server Error)

the actual images are located here:

http://norsok.tibe.no/uploads/images/paragraphPictures/img-9889-kraftfor-1-foto-anita-land.jpg http://norsok.tibe.no/uploads/images/paragraphPictures/StengelnematodeG.Taksdal.jpg

At this point I am completely baffled and pray to the Stack Exchange-gods for assistance :)

  • If you cd into your /uploads/ folder, can you do a ls -adl */ to get a listing of the sub directories and their permissions? I would bet the transforms folder (_ frontpageNewsPicture) underneath the asset source isn't writable... Dec 12, 2015 at 19:44
  • [user@server uploads]$ ls -adl */ drwxrwxrwx 2 apache apache 4096 Dec 11 16:12 employeeAttachments/ drwxrwxrwx 5 apache apache 4096 Dec 11 13:34 images/ [user@server uploads]$ apache is the user that runs the webserver :) Dec 13, 2015 at 20:35
  • So there's nothing under images? According to your setup, there should be at least a couple folders underneath that folder, including paragraphPictures and a transforms folder, after Craft creates the transforms. If you do chmod -R 755 . && chown -R apache:apache . on your uploads folder that should give permissions all the way down. If you're not already running as a superuser, add sudo to both commands. Dec 13, 2015 at 21:25
  • Who says there's nothing under images - ls - adl in uploads like you asked for won't show you nested sub-folders ? As stated in the original question, public/images including all sub-folders and files are owned by apache:apache (the user that runs the apache service) with 777 rights Dec 14, 2015 at 7:44
  • Oops prob should have ls -arl */ but regardless, just wanted to confirm you had set them properly. It's pretty common in troubleshooting to never assume someone actually did something properly until proven otherwise. Dec 14, 2015 at 15:54

2 Answers 2


Turns out this had to do with imagemagick (or one of its subpackages) not being compiled in a way that Craft 2.5 thinks fondly of, which we discovered after editing the bootstrap to turn off all custom error-logging.


If I load http://norsok.tibe.no/cpresources/transforms/1?x=bptVEjjgx, then I got a 404 instead of a 500, but maybe you've changed something with the transforms so that URL is no longer valid.

The 500 ISE is either coming from Craft (in which case the underlying error message will be in your craft/storage/runtime/logs files or it's coming from your web server (in which case it will be in your web server's error logs).

Once you find that message, that should help you debug why the transform is failing.

  • Hi Brad, and thanks for the reply. I temporarily disabled the reforms yesterday (although I don't understand why that would give a 404 instead of a 500) - but they're re-enabled now. Been thrawling my Apache-log, and there's absolutely nothing regarding this Craft-installation in it. Will post output from my Craft.log in a separate comment Dec 11, 2015 at 7:46
  • 2015/12/11 07:45:06 [info] [application] [Forced] Starting task GeneratePendingTransforms that has a total of 0 steps. 2015/12/11 07:45:06 [info] [application] [Forced] Finished task 289 (GeneratePendingTransforms). 2015/12/11 07:48:17 [info] [application] [Forced] Starting task GeneratePendingTransforms that has a total of 0 steps. 2015/12/11 07:48:17 [info] [application] [Forced] Finished task 290 (GeneratePendingTransforms). Dec 11, 2015 at 7:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.