Using Joomla!
- 12/03/2012 1:22 PM
Applicable Plans - All Cloud Hosting Plans
Using Joomla!
Overview
Joomla! is an open source content management system that is used for everything from personal websites and blogs to large enterprise applications. Joomla! can also be used as the development platform for web based applications. There are thousands of modules available for Joomla! that can be used as building blocks to enhance the functionality of your Joomla!-based website or web application.
Installing Joomla!
Installing Joomla! using the Control Panel
Installing Joomla! from joomla.org (command line method)
Using Joomla!
Adding Joomla! Templates and Extensions
Updating and Migrating Joomla!
Joomla! Updates
Joomla! Migration
Installing Joomla!
Joomla! can be installed from the Control Panel or the command line of your Virtual Server. Before installing Joomla!, make sure your Virtual Server meets the basic system requirements. The official Joomla! system requirements can be found here: Joomla! System Requirements.
If you built your Virtual Server with a LAMP (Linux, Apache, MySQL/MariaDB, and PHP) template you should have the necessary software for Joomla! already installed. The available LAMP templates are CentOS 7 64bit LAMP w/ MariaDB (ISPmanager), CentOS 6 64bit LAMP (ISPmanager), and CentOS 6 32bit LAMP (ISPmanager). eApps recommends that you use a LAMP template if you are going to install Drupal.
If you did not create your Virtual Server with a LAMP template, you will need to make sure that you have PHP and either MySQL (CentOS 6) or MariaDB (CentOS 7) installed. Depending on the template you used you may also have to install the Apache web server (httpd).
PHP can be installed from the Control Panel or the command line of your Virtual Server. More information about installing PHP can be found here: PHP User Guide - Installing PHP.
MySQL can be installed from the Control Panel or the command line of a CentOS 6 server or from the command line of a CentOS 7 server. More information about installing MySQL can be found here: MySQL User Guide - Installing MySQL.
MariaDB can be installed from the Control Panel or the command line of a CentOS 7 server. More information on installing MariaDB can be found here: MariaDB User Guide - Installing MariaDB.
Installing Joomla! using the Control Panel
Joomla! can be installed using the Control Panel of your Virtual Server (if available).
Installing Joomla! using the ISPmanager Control Panel
If you are using the ISPmanager Control Panel, you can install Joomla! using Web-scripts. Both ISPmanager 4 and ISPmanager 5 have Web-scripts available. More information about installing applications using Web-scripts can be found here: Installing Applications Using ISPmanager Web-scripts.
Installing Joomla! from joomla.org (command line method)
Joomla! can be downloaded and installed from the main Joomla! website. This is a command line or FTP based installation method. Full instructions for the Joomla! installation are available here: Joomla! Installation Guide. This method will always have the latest version of Joomla! available, as well as the most up-to-date instructions.
This method is generally for advanced users who are familiar with working from the command line of the Virtual Server.
Using Joomla!
Joomla! can be used for anything from a personal blog to an enterprise website or web application. Examples of the different ways that Joomla! can be used can be found on the Joomla! Community Showcase.
There is extensive online and printed documentation on how to use Joomla!. The Getting Started section of the Joomla! website has a list of modules, documentation, and resources for training and support. There are also a large number of Joomla! books available.
Adding Joomla! Templates and Extensions
Templates and Extensions Overview
Joomla! has a large number of templates and extensions available. A template allows you to change the appearance of Joomla!, such as the color scheme or page layout. An extension adds some sort of functionality to Joomla!, such as security features or ways to add and manage content. Some templates and extensions are free, and some require a paid license to use. You can also create your own templates and extensions for Joomla!.
NOTE - please see Installing Templates and Extensions section below before trying to install a template or extension.
The official Joomla! documentation for Templates is here: Joomla! Templates. This page links to the official Template Management guide which in turn links to installing and managing Templates.
An Extension in Joomla! can be several things depending on the type of component being used. More information on Joomla! extensions can be found here: Joomla! Extensions, as well as at the Joomla Extension Directory.
Templates and Extensions System Configuration
Before you can install templates and extensions in Joomla!, you will need to make several changes to the file system and users on your Virtual Server. Several of these changes have to be done as the root user from the command line, and several other changes can be done from either the command line of the Virtual Server or from the Control Panel. You will need to do the following:
- Add the website owner group to the apache user group
- Change the permissions on a file in the Joomla install directory
- Restart the web server
The first item has to be done from the command line of the Virtual Server as the root user. The next two items can be done from either the Control Panel or the command line, as the root user.
Adding the website owner group to the apache user
You will need to add the website owner group (SITE_OWNER_GROUP) as an additional group to the apache user. The website owner is the user that owns the WWW-domain (in ISPmanager) or the user that owns the files and directories where Joomla! is installed. This will allow the web server to write (make changes) to some Joomla! directories as needed.
This can only be done from the command line of the Virtual Server. To do this, you will need to connect to the Virtual Server using SSH and be able to work as the root user. If you need assistance with this, please contact eApps Support.
To add the website owner group to the apache user, use the usermod -a -G
command. Note the capital G.
[root@eapps-example ~]# usermod -a -G SITE_OWNER_GROUP apache
Change the permissions on a file in the Joomla install directory
You will need to change the permissions on one file in your Joomla! install directory (JOOMLA_INSTALL_DIR). Depending on how you installed Joomla!, this will either be the DocumentRoot of your website, or a subdirectory of the DocumentRoot.
The file that you need to change permissions on is:
JOOMLA_INSTALL_DIR/configuration.php
This file will need to be set to 775
permissions.
This can be done from either the command line of the Virtual Server or the File Manager in your Control Panel.
Changing file permissions using the Control Panel
Your Control Panel will have a file manager that you can use to manage the permissions of files and directories.
Using the File Manager in the ISPmanager Control Panel
You can make changes to files and directories from the ISPmanager Control Panel using the File Manager. The location of the File Manager will differ depending on which version of ISPmanager you are using. How to tell which version of ISPmanager you have can be found here: ISPmanager versions.
-
ISPmanager 4 - information about using the File Manager in ISPmanager 4, including links to the official vendor documentation, can be found here - ISPmanager 4 File Manager.
-
ISPmanager 5 - information about using the File Manager in ISPmanager 5, including links to the official vendor documentation, can be found here - ISPmanager 5 File Manager.
Changing file permissions using the command line
The file permissions can also be changed from the command line of the Virtual Server. To do this, you will need to connect to the Virtual Server using SSH and be able to work as the root user.
To change the permissions for the JOOMLA_INSTALL_DIR/configuration.php file, use the chmod 775
command.
[root@eapps-example ~]# chmod 775 JOOMLA_INSTALL_DIR/configuration.php
Restart the web server
After you have added the website owner group to the apache user and changed the permissions on the file, you will need to restart the web server. This can be done from the command line or from the Control Panel.
Restarting the Apache Web Server Using the Control Panel
Restarting the Apache Web Server from the ISPmanager Control Panel
You can restart services in the ISPmanager Control Panel from the Services screen. The location of Services will differ depending on which version of ISPmanager you are using. How to tell which version of ISPmanager you have can be found here: ISPmanager versions.
-
ISPmanager 4 - information about using Services in ISPmanager 4, including links to the official vendor documentation, can be found here - ISPmanager 4 Services.
-
ISPmanager 5 - information about using Services in ISPmanager 5, including links to the official vendor documentation, can be found here - ISPmanager 5 Services.
Restarting the Apache Web Server from the command line
To restart the Apache web server from the command line, you will need to connect to the Virtual Server using SSH and be able to work as the root user.
-
For CentOS 6, use the
service httpd restart
command:[root@eapps-example ~]# service httpd restart
-
For CentOS 7, use the
systemctl restart httpd
command:[root@eapps-example ~]# systemctl restart httpd
Installing Templates and Extensions
In order to install Templates and Extensions, you will need to enable FTP in the Joomla! Server Configuration, as the Joomla! admin user. Log in to Joomla!, and then log in as the Site Adminstrator from the Joomla! main screen. This will take you to the Control Panel.
At the top of the Control Panel screen, click on System, and then select Global Configuration from the drop down menu. On the Global Configuration screen, select Server. This takes you to the Server Settings screen.
In Server Settings, go to FTP Settings and click Yes to Enable FTP. This will open several options below the FTP Settings menu.
- FTP Host - leave at default of 127.0.0.1
- FTP Port - leave at default of 21
- FTP Username - this is the FTP user associated with the WWW-domain or who owns the files and directories where Joomla! is installed
- FTP Password - this is the password for the FTP user
- FTP Root - this is the directory where Joomla! is installed - either the DocumentRoot (www/domain.com) or a subdirectory (www/domain.com/dir) of the DocumentRoot
Once you have made the changes for FTP, click Save & Close at the top of the screen.
Next, go to Extensions > Extensions Manager, and click Add "Install from web tab". This will give you the ability to install Extensions and Themes directly from the Joomla! Control Panel.
Increasing PHP memory settings
If you are installing Extensions or Themes and get a blank screen during the install process, and the process never completes, you will need to increase the memory allocated to PHP. More information on increasing the memory limit for PHP and other PHP configuration options can be found in the PHP 5 User Guide.
Updating and Migrating Joomla!
For Joomla!, an update and a migration are two different things. An update goes from minor version to minor version, such as going from Joomla! 3.3.5 to Joomla! 3.3.6. A migration goes from major version to major version, such as going from Joomla! 2.5 to Joomla! 3.1.
Joomla! Updates
Updates to Joomla! are usually from one minor or maintenance version to another minor or maintenance version. The instructions for updating Joomla! are here: Updating from an existing version. Make sure to read the instructions carefully, and make sure to ALWAYS have a current backup of your website and database. If you do not have a current backup and something goes wrong during the update process, you may have data loss.
If you have set up the FTP Settings as shown above, you can do the update via FTP. Log in to Joomla!, then log in as the Site Administrator from the Joomla! main screen. This will take you to the Control Panel. From the Control Panel, go to Components > Joomla! Update, and for Installation method select Write files using FTP.
For security reasons you will need to enter in the FTP info again:
- FTP Host - leave at default of 127.0.0.1
- FTP Port - leave at default of 21
- FTP Username - this is the FTP user associated with the WWW-domain where Joomla! is installed
- FTP Password - this is the password for the FTP user
- FTP Root - this is the directory where Joomla! is installed - either the DocumentRoot (www/domain.com) or a subdirectory (www/domain.com/dir) of the DocumentRoot
Once you have entered the FTP info, click Install the update, and the Joomla! update should install.
NOTE - there have been some reported issues with the FTP update not working. Please see the official Joomla! documentation for more information: FTP Update Not Working.
Joomla! Migration
A Joomla! migration is moving from one major release to another major release. Joomla! migrations are non-trivial, and require planning and testing on your part in order for them to be successful. You may find, for example, that some extensions and templates are not compatible with the new major version, and you will have to decide to either wait until they are compatible before migrating or continue on using different extensions and templates.
The migration documentation starts here: Why Migrate and continues with links at the bottom of each page to walk you through the migration process.