System Requirements

Revision as of 04:57, 9 March 2013 by Patricia Schmidt (Talk | contribs)

Basic System Requirements

JomSocial is an extension for Joomla. To be able to use JomSocial, you would first need to install Joomla on your web host. We recommend using the latest stable version of Joomla (currently 2.5) to enjoy its latest features and security improvements. JomSocial supports the minimum requirement of:

  • Joomla 2.5.6 or above

For the server, make sure it has:

  1. PHP 5.3 or above
  2. MySQL 4.1 or above

JomSocial also requires several PHP extensions, which are available in most webhosting providers:

  1. GD library, at least v1.8 with libjpeg
  2. cURL library
  3. zip
  4. fsockopen

That's almost all you need for most of JomSocial's basic functionality to work. For more advanced features, including faster photo uploading, video uploading, and Facebook Connect, follow the sections below.

How to Check for System Specifications

You can check most of the requirements below by accessing Joomla's backend via your Administrator Panel and going to Help > System Info > System Information and PHP Information tab. However, for the most complete overview of your server configuration, contact your webhosting provider.

Jsysinfo.png
Jphpinfo.png

Photo Upload Requirements

To process images, photo upload relies heavily on the GD Library, which uses a lot of memory. For better performance, use ImageMagick instead, if your server supports it.

Minimum: GD library

Recommended: ImageMagick. It will require exec/passthru/shell_exec/system access.

Video Upload Requirements

Video Linking

Linking from external websites, such as YouTube, Metacafe, and Vimeo only requires cURL to be installed, which is available on most servers today.

cURL library

Video Upload

Video upload uses FFMPEG to convert videos. Most shared webhosting providers disable this option because it consumes a lot of memory and processing power. Please consult your webhosting provider regarding the availability of FFMPEG on your server. It is advisable to at least have VPS before you consider allowing video uploading.

  • Minimum: FFMPEG; to get it running, it also requires exec/passthru/shell_exec/system access
  • Optional: FLVTool2, for adding metadata to your video

Unlike other extensions, the path to FFMPEG and FLVTool2 need to be specified on your JomSocial backend. Go to Site > Configuration and look for the "Videos" section. There you will find the fields to set both paths.

Ffmpegsettings.png

One last thing that JomSocial needs to process the video is a Cronjob (scheduled task). Make sure your Cronjob is configured properly by referring to this documentation.

Large Photo/Video Uploads

When it comes to large photo/video uploads, there are a few server configurations that you can tweak to the get the most out of JomSocial:

php.ini

max_execution_time = 9000; Maximum execution time of each script, in seconds.
max_input_time = 9000; Maximum amount of time each script may spend parsing request data.
memory_limit = 1024M; Maximum amount of memory a script may consume.
post_max_size = 1024M; Maximum size of POST data that PHP will accept.
upload_max_filesize = 1024M; Maximum allowed size for uploaded files.

my.cnf

wait_timeout = 120
connect_timeout = 120

Disable safe_mode and open_basedir Some webhosting providers have safe_mode and openbase_dir enabled. In order for the photo/video upload to work, you have to disable them. If your webhosting provier allows you to override the Apache's configuration, you need to override the vhost configuration.

php_admin_flag safe_mode off
php_admin_value open_basedir none

If your webhosting provider allows for .htaccess override, locate your .htaccess file in the Joomla root directory and add these lines into it:

php_admin_flag safe_mode off
php_admin_value open_basedir none

Temporary Tables

Your database user must be granted permission to create temporary database tables. Ideally, the database user should have full permissions, but some webhosting providers set limits on the database user privileges. If that is the case, it would be advisable to switch providers since even the cheapest shared hosting today offers what you see on the screen below:

CPanelmysqluser.png

Facebook Connect Requirements

Before you begin implementing the Facebook Connect feature on your website, make sure you have read the Facebook Connect Policy. All of the extensions needed for Facebook Connect shown below, are already included in the basic requirements:

GD library
cURL library
fsockopen

Please also ensure that there are no Javascript or jQuery conflicts on your site because it will lead to an error in executing Facebook Connect. We recommend that you use Firebug (a Firefox add-on) to identify and debug such issues.

A Note on PHP Memory Requirements

JomSocial is developed to run adequately on a system with just 32MB of memory allocated to PHP. However, please note that the development site uses the default template with no additional third-party modules or plugins enabled. Sites with third-party plugins and modules enabled will consume a lot more memory; thus, we recommend that you increase your memory limit.

That having been said, since all applications will run better with more memory, we recommend that you allocate at least 64MB of memory to PHP. The following tasks will consume a lot of memory:

resizing uploaded user avatar
resizing any photos uploaded by user
converting uploaded videos to Flash .swf