4 users online. Create an account or sign in to join them.Users

Search

Hi guys! I'm having trouble with installing extensions in Symphony 2.2. Every time I put a new extension in the extensions folder and reload the admin, the page goes completely blank. When removing the extension from the extensions folder, it pops back again.

  • I'm using Symphony 2.2 and MAMP 1.9.4 (1.9.5 is the latest)
  • /symphony, /extensions, /manifest, /workspace, etc are set to chmod 775
  • Same issue both in Firefox and Safari.

Maybe it's a .htaccess issue? I attached it just in case:

### Symphony 2.2.x ###
Options +FollowSymlinks -Indexes

<IfModule mod_rewrite.c>

    RewriteEngine on
    RewriteBase /

    ### SECURITY - Protect crucial files
    RewriteRule ^manifest/(.*)$ - [F]
    RewriteRule ^workspace/utilities/(.*).xsl$ - [F]
    RewriteRule ^workspace/pages/(.*).xsl$ - [F]
    RewriteRule ^(.*).sql$ - [F]

    ### DO NOT APPLY RULES WHEN REQUESTING "favicon.ico"
    RewriteCond %{REQUEST_FILENAME} favicon.ico [NC]
    RewriteRule .* - [S=14]

    ### IMAGE RULES
    RewriteRule ^image/(.+.(jpg|gif|jpeg|png|bmp))$ extensions/jit_image_manipulation/lib/image.php?param=$1 [L,NC]

    ### CHECK FOR TRAILING SLASH - Will ignore files
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_URI} !/$
    RewriteCond %{REQUEST_URI} !(.*)/$
    RewriteRule ^(.*)$ $1/ [L,R=301]

    ### URL Correction
    RewriteRule ^(symphony/)?index.php(/.*/?) $1$2 [NC]

    ### ADMIN REWRITE
    RewriteRule ^symphony/?$ index.php?mode=administration&%{QUERY_STRING} [NC,L]

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^symphony(/(.*/?))?$ index.php?symphony-page=$1&mode=administration&%{QUERY_STRING}   [NC,L]

    ### FRONTEND REWRITE - Will ignore files and folders
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*/?)$ index.php?symphony-page=$1&%{QUERY_STRING}    [L]

</IfModule>
######

Check your Apache logs for more information (specifically the error_log) — chances are PHP is throwing a fatal error. I ran into the same thing this morning due to a misnamed extension directory — check the names of the extension directories are kept the same as when you downloaded them.

the page goes completely blank

Try this to enable errors.

Ok, renaming the downloaded extension's folder to the original name helped. Like this: symphonists-richtext_tinymce-2.0-0-g4e18a6c to richtext_tinymce

This probably needs an update as it doesn't mention the strict naming conventions:

Install an Extension

But it's working now! Thanks for helping me out!

Installation instructions in extension readme files usually specify the folder name, but don't explicitly say it won't work unless it matches exactly. Perhaps the extensions page in Symphony should show an alert if folders are found that aren't recognised as extensions? (Compare number of found extensions against number of folders). This would be an indication that a folder needs to be renamed.

Good idea! Or could it be done where Symphony only checks for the extension's "driver" in the folder, never the name of the folder and it doesn't need the full relative url-path? Could it be done with a dynamic path?

Probably not, because at present many extensions build URLs containing the name of the extension folder.

I like Nick's idea, and I've often wondered why it doesn't do this, or at least fail gracefully instead of crashing the entire site backend! I'm sure I've even mentioned it before...

What would be a really good idea, is for the extensions page to find badly named folders, look inside for a driver, and then ask the user if they want to rename the folder correctly. I would also think that a button to rename the folder would help (screenshot). This saves having to figure out what's wrong, by offering to do it for them (+1 usability points).

Thoughts?

Attachments:
Screen shot 2011-04-04 at 23.34.13.png

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.2 or above
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.0 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details