- Written by Constantin Oesterling
Joomla! Hosting in the Cloud
Content Management System abbreviated as CMS, holds a major share among the current popular website building software. A CMS is nothing but a software which helps build a website online - create, edit and remove web pages and images, make changes real time via a web-based admin interface and makes a fully functional website within minutes.
There are plenty of CMS available these days, each differing in its own unique way, and competing with each other by providing a lot of features to customers. The use of a CMS helps make website customizations easier by many folds. There are many popular CMS available, among which Joomla ranks a top position in the list.
What is Joomla?
Joomla is a popular CMS built on open source technology. Joomla uses the OOP (Object Oriented Programming) concepts in its design. It is written in PHP and uses MySQL, MSSql or Postgresql for the database part. Joomla is extremely rich in features - both design wise and performance wise. Joomla is considered to be the second most popular CMS, with first place going to WordPress.
Joomla was founded in 2005, initially by the Mambo. However, the Joomla developers later claimed that the open source values and many other promises as agreed by the Mambo committee were not met and hence they went forward and started a new website called Opensourcematters.org. As of now, Joomla project is funded and supported by the community called Open Source Matters. Joomla's logo itself says "because open source matters", to stress the name of the community as well as to stress that the Joomla project is purely open source.
Joomla project has won many awards through these years and is gaining more popularity day by day. The initial version, Joomla 1.0 was released in 2005. After 3 years, Joomla 1.5 was released which was the most popular version of Joomla. Joomla 1.5 was the first version to attain long term support as well. The latest version of Joomla is Joomla 3.6.
Joomla has crossed many millions of downloads so far. Joomla is most commonly used by:
- Bloggers for pouring their mind out into an online presence
- Small business owners for their company websites
- Online magazines, news portals, online publications etc
- Personal or family websites
- Photographers or artists for creating their portfolio
- Though not a full-fledged ecommerce software, Joomla is widely used by many ecommerce websites
- Many companies including web hosting companies use Joomla to create their corporate websites
- Non-profit organizations, such as churches use Joomla to build their website
Advantages of choosing Joomla as your CMS
- Open Source - Joomla is an open source product which means it can be downloaded and used at zero cost. Being open source, you are allowed to make changes to the source and contribute back to the community which attracts developers also to it.
- User-Friendly Interface - Joomla is a very user-friendly software, bundled with amazing features. It has an admin interface which makes dynamic website management and customizations easier. Changes can be made, previewed and then finally applied to be visible on the main site.
- Numerous Extensions - A lot of extensions are available - both from Joomla and from third party websites which help customers to add any functionality that they require. Though not as vast as Wordpress, Joomla extensions are also available for any requirement you think of.
- Huge Community - Joomla is also backed by an extensive community with lots of knowledgeable people and Joomla developers, ready to extend any help and assistance to those in need. Joomla itself has got wonderful tutorials section and forums which help newbies start with the software with ease. Help is available for various profiles like Beginner, Developer, Administrator and Designer.
- Updates - Joomla releases new versions and security patches frequently and it is recommended that customers always keep their installation up-to-date. The updates can be done easily from the admin interface itself.
- Templates - Thousands of Joomla templates are available, both free and paid, with beautiful designs which customers can use to make a stunning website.
- MultiLingual Support - Joomla also has multi-lingual support and provides almost 50+ languages by default. There are also provisions to add additional language packs as required by the users.
- Easy Migration - Joomla is extremely easy to migrate from one server to another. All you need to do is modify the configuration file accordingly.
Differences Between Joomla.com & Joomla.org
Joomla.com provides you with a subdomain, such as javapipe.joomla.com. You can simply visit joomla.com, register the required subdomain and start using it in a minute. Joomla comes pre-installed with the setup. It lets you create and manage your own website and provides almost all features, though with certain limitations. The main advantage of joomla.com is that you can create a website at almost zero cost.
The hosting is provided free of cost by Joomla community and you do not need to register a domain name as well. You can use the subdomain provided by Joomla. There is no headache of installation, security or maintenance as it will be automatically taken care of by the Joomla hosting team. However, there are certain limitations like the number of extensions, templates and plugins that can be used. No code changes are allowed as well. The fact that you don't have to be technically knowledgeable to use this Joomla setup attracts more and more people to this.
Joomla.org, on the other hand, allows everything without restrictions. Joomla.org lets you download the complete software from their official website, install it and customize it any way you wish. The core files can be modified with the help of an expert developer and any number of extensions and templates can be installed and tried without any limits.
Along with the 50+ pre-installed languages, customers can also download any language pack and use it according to their wish. The only concern here is that the customer has to be a little knowledgeable technically, as this requires the customer himself to install, configure and setup Joomla. Security and updates also need to be taken care of by the customer.
Managed Joomla! Hosting at JavaPipe
Any hosting setup which is specifically designed for the working of Joomla is termed as Joomla Hosting. Many hosting providers these days release specific hosting plans for Joomla Hosting. They claim their servers to be fully configured for hosting Joomla sites.
If you opt for managed Joomla Hosting, you would get Joomla pre-installed with your account and you can straight away start creating the site. Joomla will normally work fine on any decent LAMP (Linux, Apache, MySQL, PHP) platform.
We at JavaPipe also concentrate on providing the best environment for Joomla Hosting. While we do not claim ourselves to be a Joomla host, our PHP Cloud Hosting servers are all well tailored to run any Joomla website. Setup, configuration, security and performance factors of PHP Cloud Hosting servers are at par with any Joomla specific host.
JavaPipe's PHP Cloud Hosting plans host all websites on a redundant CloudStack environment. They are backed by superior SSD drives which enhance performance. The presence of CloudStack along with SSD makes JavaPipe's PHP CloudHosting setup a perfect and reliable choice for any Joomla website - big or small.
JavaPipe provides Siteworx as the control panel, as against the most common cPanel. Siteworx is equally feature-rich and user-friendly as cPanel. The wonder software Softaculous, which bags almost 350+ software, are also provided along with all PHP Cloud Hosting plans.
The software installation can be completed at a click with this tool, and users do not have to undergo any tough installation steps. JavaPipe provides multiple PHP versions along with Cloud Hosting plans so that customers with any code - old or new, can easily migrate to our server and get the website working, without compatibility issues.
On the performance side, apart from SSD and cloud environment, JavaPipe also provides CDN support for websites. A CDN or Content Delivery Network, if enabled, boosts your website's loading time by providing cached data from a server which is geographically nearer to the visitor's location.
A well trained and knowledgeable support team is on board and is available 24X7. Customers can contact the support team anytime for assistance and a response is guaranteed in less than 15 minutes.
Server security is of supreme importance and is taken care of strictly. Servers are monitored 24 X 7 and any issues noticed are patched on time. Uptime is a major factor and we always strive to provide the best uptime ever.
Installing Joomla on JavaPipe's PHP Cloud Hosting Using Softaculous
Let us now see how Joomla can be installed on JavaPipe's PHP Cloud Hosting account using Softaculous. Let us assume the domain name is javapipe.demo.
Step 1 - First, log in to your Siteworx control panel using your email address, password and domain name. If you are unsure, check the email from JavaPipe with subject "Hosting Package Information at JavaPipe".
Step 2 - Once inside, search for Softaculous in the left search box. It will list Softaculous as you type in, just click on it to be taken to the magic software. Alternatively, you can also find it under the 'Hosting Features' section.
Step 3 - Within the Softaculous interface, you again need to search for Joomla on the left side search bar. You can also find it under Portals/CMS. It will take you to the Joomla page. There you will find a small description about Joomla and also the space requirements for the installation. Click the 'Install Now' button to start with the installation.
Step 4 - This step asks for a few details from the customer. Enter the details asked and you are done. We will just summarize what each question means.
- Choose the version you want to install - It lists two versions. JavaPipe provides the latest PHP and hence the latest version is well suited for our environment. Hence I chose 3.6
- Choose Protocol - It lists http and https. If you require your website to be accessible over a secure channel and you have already installed the SSL Certificate, then choose https. Otherwise, choose http. Every PHP Cloud hosting plan has a free SSL Certificate available, hence you can choose https. It is mainly required when your website does any financial transactions online. Since this is a demo and I have not installed an SSL cert, I choose http
- Choose domain - It lists all domains, subdomains, addon and parked domains available. Choose the domain name under which you are planning to install Joomla. I chose it as javapipe.demo
- In Directory - If you want your Joomla installation to be available at the root of the site, ie. while accessing http://javapipe.demo if you wish the installation to be visible, then you should leave this text box blank. I am planning to install it under the folder Joomla, hence I enter 'joomla' in the text box.
- Site Name - Any name you wish to display when you access the site
- Site Description - A short description for your website. It is fine to leave it blank as well
- Import Sample Data - Joomla provides sample data to be filled during the installation so that you quickly understand how to edit your website and which features go where. You can either choose not to import any sample data or use any of the templates already available. I chose Blog from the list
- Admin Username - We mentioned above that Joomla has an admin interface which controls the website management. It requires authentication and here you enter the admin username you wish to have. I enter it as 'admin'
- Admin Password - The password required for the admin username. It is recommended that you choose a strong password by clicking the key icon to the right. This will generate a random strong password for you
- Real Name - Actual name of the administrator
- Admin Email - Email address of the administrator. Any emails related to this installation will be sent to the email address given here, hence it is mandatory to provide a working email address
- Select Language - Joomla has support for multiple languages by default and you can choose your preferred language at this step. Click on the + sign near 'Advanced Options' and it will list further more details
- Database Name - Name of the database used by Joomla. You can either enter a name of your wish or leave it as default
- Table Prefix - The prefix to be attached to database table names. Change it or leave it as default
- Disable Update Notifications - Joomla releases major and minor updates as well as security patches intermittently. It is strongly recommended that you DO NOT check the box here. You need to be notified of the updates available, and updates should be performed on time. This will make sure that your installation is more secure and stable.
- Automated Backups - Backups are an integral part of any hosting. You can choose the backup frequency here - whether daily, weekly, monthly or not to be backed up at all
- Backup Rotation - This describes how long the backups should be retained. I set it as 2 so that at any time, I will have 2 different copies of backups.
- Email Installation Details to - If you want the installation details to be emailed to you, enter your email address in the box there
Once all details are entered, double check all have been entered correctly. When you are ready, click the 'Install' button.
Step 5 - This step marks the completion of the installation. A few checks will be performed and the installation will be carried out based on the details you provided. If everything goes well, a confirmation message will be diplayed as follows. If anything goes wrong, the error message will be shown.
Step 6 - Now, I can access my Joomla installation as http://javapipe.demo/joomla. I used a blog's sample data, hence my site will be automatically populated with sample data and will look like a blog as follows.
Working with the Joomla CMS
My installation's admin interface is at http://javapipe.demo/joomla/administrator. I will log in using the admin username and password I provided at the time of installation.
This will take you to the admin interface of Joomla which will present you with lots of features and options to build your website. We will go through a couple of basic items that you can do with Joomla for example.
Creating New Articles
We will first see how new articles can be added to the existing website. Go to your admin dashboard, at the top choose Content -> Articles -> Add New Article. You can also choose New Article from the left side menu.
Each article belongs to a category. If you plan to add too many articles, it is better to create a new category from Content -> Categories -> Add New Category and then add this article to that category. Here we will just show how to create an article. Clicking on 'Add New Article' will take you to a page as follows.
Enter the name of the article in the 'Title' section. Below you will see a big text box with a lot of formatting options. Here is where you need to add the content of the article. You can beautify the article any way you like using the formatting tools. On the right side, select the status of the article.
If you want to see the article immediately as it is created, then select 'Published'. There are other statuses like 'Unpublished', 'Archived', 'Trashed' etc. Choose the one suitable.
Next is the 'Category' section. If you create a new category, choose that category from the drop down. I will just use the default 'Uncategorized' category for my example. Next option 'Featured' determines whether the article is featured or not. If you want to highlight this article click 'Yes', else 'No'.
'Access' determines whether the article is viewable to all or held private to the author. 'Language' lets you choose the language in which the article is to be shown.
Once the required data is entered, click Save and the article will be created.
Creating a New Menu and Linking Articles
We will now see how to link the article created above to the website. Let us start by adding a new menu item. You might have noticed in the screenshot of my website, that I have three menu items at the top - Home, About, Author Login. In the admin dashboard, you will see a lot of options at the top. Click on Menus -> Main Menu -> Add New Item. You can also choose 'Menus' from the left side under 'Structure'.
I chose 'Main Menu' from the available menus because it had the home page icon in it. Now I create a new Menu. I enter the menu name as 'Test Menu'.
Next is 'Menu Item Type'. It defines what content will be linked to this menu. I am planning to display a single article under this menu. First, click on 'Select' button and choose 'Articles'.
Next, we need to select the article that is to be linked. I am planning to display only a single article, so choose that option.
The 'Menu Item Type' option will now be filled with 'Single Article'. Next, we need to select the article to be listed. Click on the select button to the right of 'Select Article' which will list the articles available. Choose the one we created now. I am choosing 'About' article.
Now, the article name will appear in 'Select Article' section. The link to the article will be automatically populated.
- Target Window - I set it as Parent as I want the article to be displayed in the same window.
- Template Style - I choose default, any style listed can be chosen
- Menu - Name of the menu in which the new item is to be added
- Parent Item - The item under which the new menu should be created. If I select 'Main Menu' then a new menu item will be added just like Home, About etc. If I select 'Home', the new menu will appear aa sub-menu under 'Home'.
- Status - Should be Public to view it in your website
Once all required data is filled, click on 'Save'. Refresh your website and you would be able to see the newly added menu and the related article listed on the site. In the image below, you can see the new 'Test Menu' along with others which were already present. The article 'About' which we linked is also seen.
Features of a Good Joomla Hosting Company
Probably any decent shared hosting company can easily host Joomla websites. They do not need to advertise themselves as a Joomla host. However, there are certain factors that they need to implement or consider while getting ready for Joomla hosting. We will list a few such features below.
- Performance - Performance is a major factor which any host should consider. The hosting companies should employ superior hardware and network for running the websites. At JavaPipe, our Cloud setup along with SSD disks provides great performance enhancement to websites.
- Speed - Website loading speed has great importance in hosting industry. As far as Joomla hosting is considered, the host should make sure that their servers have efficient caching mechanisms available which will render cached pages to visitors. This will greatly increase the website speed. The location is another major factor which affects speed. JavaPipe allows CDN through our control panel to overcome this. We provide CloudFlare CDN which will render pages fast based on the visitor's location.
- Uptime - Uptime is a major factor affecting any hosting because no user would like to see their site inaccessible. Most often the hosts advertise 100% uptime and are not able to meet it. 100% uptime is often not practical, but the hosting company should strive towards attaining at least 99% uptime.
- Resource Allocation - Resource allocation should be done correctly. Each plan should have enough disk space and bandwidth allotted. Overselling should be a strict NO to the host. Overselling creates issues in servers as more websites will be hosted than it can hold, resulting in overuse of resources. Some hosts also offer unlimited disk space and unlimited bandwidth to customers. People will jump at such offers, but unlimited is normally a marketing trick. It is advertised, considering that no account will ever require unlimited disk space or bandwidth. JavaPipe knows the fact here and advertises only what we provide. We have also implemented LVEs (Lightweight Virtual Environment) to isolate accounts from one another along with CageFS for security.
- Security - Security is a major concern. The servers should have the best security practices in place. JavaPipe gives utmost importance to security and conducts periodic security audits and server hardening. Patches are done on time and also performs scheduled scanning of accounts hosted on the server to detect any malicious files injected into websites.
- Support Team - A good support team is the backbone of any hosting company. The support team should be knowledgeable and customer focussed. JavaPipe has a strong support team of very efficient techs who are available 24 X 7. All support requests are responded promptly in less than 15 minutes. Servers are thoroughly monitored and any issues noticed are corrected without delay. As far as managed Joomla hosting is considered, users will get support for Joomla installation, configuration, updates, security and any technical issues noticed which is an added advantage for non-technical users.
- Firewalls - The presence of a good firewall will fight attacks to a great extent. A good host should always have a good firewall installed. Brute force detection kits are also recommended to prevent attacks. Hardware firewalls can do much better in the case of DDOS attacks, but not every host can afford it. JavaPipe has special DDOS protection plans available for our VPS and Dedicated Servers.
Security Tips to Protect Your Joomla Website
We will wind up this post by explaining a few security tips that would help anyone using Joomla. There is nothing like a 'one click fix' when it comes to security. It is a continuous process involving multiple factors. We will check a few which any Joomla site owner can do.
- Strong Passwords - Make sure you always generate very strong passwords with alpha numeric characters and special symbols. The passwords should be kept strictly confidential and should never be stored in browsers or FTP clients.
- Strict Permissions - Never set loose permissions on files. World-writable files are open doors to hackers. The safe permissions to be used are 644 for files and 755 for folders. Never set 777 for any files or folders unless it is required by Joomla
- Safe Extensions & Joomla Templates - Numerous extensions are available for use with Joomla. You should make sure that the extensions you use are safe and are not malicious codes. Extensions which require loose permissions should never be used. They should be downloaded from reliable sources. Poorly coded extensions can also cause resource hogs in the server, hence they should be used with extreme caution. Make sure to disable and remove any unused extensions. Same is the case for Joomla templates. It is also good to have security extensions enabled.
- Password Protect Admin Area - Whichever CMS we use, the admin backend is the main target of attacks as it manages the entire website functionalities. Admin area is always password protected by the software itself, however, it will be a wise idea to provide two-factor authentication to the admin backend by password protecting it. This way, the hackers will require to crack two logins to gain access to the admin area. It is also good to use a different username than the very common 'admin'
- IP Restrict Admin Area - Admin backend is accessed by selected users with admin privileges only. Hence, it is a good idea to restrict access to the admin area based on IP Addresses. Deny access to the admin area for all IP Addresses except those of admin users. This way a hacker cannot gain access.
- Proper Updates - Always make it a point to update your Joomla version and all associated extensions to the latest stable version. Old versions will have back doors through which hackers can gain access
- Registration / Contact Forms - Registration or Contact Forms are extensively used for spamming. Always secure such forms by using captchas or any other secure means available. If not required, it is better to disallow user registrations.
- Ensure Backups - The host may or may not guarantee website backups, but the users should always take your own local or remote backups of your website periodically. In the case of a mishap, if the host is found to be helpless, you should always have a good backup in place to restore the site.
- Do not expose version - You should never expose the version number of your Joomla installation to the public. There will be known and unknown vulnerabilities in almost all versions, and if your version is exposed a hacker would be easily able to attack the site using the vulnerabilities.
- Use SSL - It is always a good idea to secure your website using SSL. Having an SSL certificate ensures that all transactions are carried through a secure channel. JavaPipe provides free SSL certificates for all PHP Cloud Hosting customers.
Joomla is undoubtedly one of the best CMS available these days. Hence Joomla hosting is gaining lots of popularity as well. JavaPipe's PHP Cloud Hosting is not officially a Joomla Hosting. PHP Cloud Hosting accounts reside in a superior shared hosting server, and our servers are well equipped for hosting Joomla websites of any size. We are also planning to deploy VPS and dedicated servers specialized in hosting Joomla sites soon.