In the last article, we set up a VPS account and used it to install the Hestia Control Panel. In this article, we will set up a new Hestia User. We will also point our domain name from Canhost to our VPS IP address and then install our domain name on the new user account. We will then use Midnight Commander to configure the PHP settings for our new server and then create a Joomla database and website.
Step 1 Add a New User
It is very important to create a new user for the admin as this will create a wall for hackers preventing them from reaching the Admin Control Panel should they ever manage to break into an individual user account or website. In short, all websites should be created by Hestia users and not by Hestia administrators. Click Add User.
Type in an easy to remember username and easy to remember password. Then type in the User Name and email address. Check Send Welcome Email to see what that looks like. Click Save and Back to return to the Users screen.
Step 2 Use your VPS Primary IP address to point your Domain Name to your VPS server.
Here we will assume that you have already set up your Hestia VPS using a different domain name and that your VPS server has the IP address 66.209.180.229. We will here add the new domain name, ourcommunitynetwork.org as a Hestia User.
First, log into your Canhost account and click on Domains. Then click on My DNS. This opens the Canhost DNS Manager. By default, the Zone records point to the Canhost IP address. Delete the first four IP addresses and replace them with the IP address of your own VPS. Then click Save. Then add two CAA records and click Save. When we are done, the first six DNS Zone Records will look like this:
Log out of Canhost and log back into your Hestia admin panel.
Step 3 Log in as a User
The Hestia User screen has fewer items that the Hestia Admin screen. The main areas we will use are Add Web Address, DB - to create databases for Joomla websites and Files - to add files for Joomla websites.
Step 4 Add your Web Domain to your Hestia User account
Click Add Web Domain to add a new web domain. We will add the domain name ourcommunitynetwork.org. Also check Create a DNS zone and Create Mail.
Type in your domain name and check Create DNS Zone and Enable mail. Then click Save and Back. Then edit the domain name again. Check Enable SSL for this domain. Then check Use Lets Encrypt.
Then click Save and wait for the Certificate to be installed. It will eventually say Changes have been saved. Then click Back.
Step 5 Get a secure domain based email account to use during Joomla installation
From the Hestia Admin panel, click on the arrow to the right of the user we created to go to the Hestia User panel. Then click Mail in the top menu. Then click on the Plus sign to the right of your domain name to add a new email account. Type your first name in the Account box. Then enter a password you will remember. Then scroll down and click on Advanced Options. In the Forward To box, enter your normal ProtonMail email address to have emails forwarded from this account to your ProtonMail account. Then click Save and Back. Then click Back again. To log into your new email account, click the up arrow to the right of your domain name. Then enter your accountname at yourdomainname dot com. Then type in your password. Send an email to your Proton Mail account to make sure your new email address is sending emails. Also go to your ProtonMail account and reply to the email to make sure your new email account is receiving emails.
Step 6 Create your website Database to use during Joomla Installation
We have a website, DNS and Mail. But we do not yet have a database. Click DB. Then click Add Database.
Note that the full name for your Database and User is your Hestia user name, then an underscore, then the name you typed into the box. Add a password with at least 8 characters. Hestia will add the user name as a prefix to the database name and database username. Therefore:
Database name db2 = user2_db2
Username un2 = user2_un2
Password user2_Pw2
Click Save & Back.
Step 7 View our new website files
In the User screen, click Files, web, yourwebsite.com, public_html
Click on index.html to open it. Scroll down to line 103 and change it from We’re working on it. To We’re working on creating a new Joomla website! Then scroll to the bottom of the page and click Save. Then click Exit to Control Panel. Then select and visit the site:
Exit the Hestia File Manager. Then Exit the Hestia User panel.
Step 8 Use Midnight Commander to Configure PHP Settings
The step only needs to be done once on your server. However, it should be done before you install your first Joomla website.
Start an SSH session as root using your server primary IP Address. Then type mc to open Midnight Commander. Then press Enter to go to your root folder. We need to edit the PHP ini file which is in the following path: /etc/php/7.4/fpm/php.ini
Click on etc to open your etc folder. Then click on the php folder to open it. Then click on the 7.4 folder to open it. Then click on the fpm folder to open it. Select the file called php.ini
After selecting php.ini, click File Edit to open the php.ini file. Note that there are 1947 lines in this file. To add line numbers to the Midnight Commander edit screen, press Alt plus c to show the line numbers. Scroll down to line 215 which does not have a semi-colon in front of it and is therefore active. Change output_buffering = 4096 to output_buffering = Off.
Fix other bad PHP INI default settings
The PHP INI file also has several other truly ridiculous default settings that should have been updated years ago. Thankfully, these only need to be fixed once – when you are first setting up your VPS. Here are three important settings to change:
#1 Scroll down to line 694 and increase post max size from 8M to 28M: post_max_size = 28M
#2 Scroll down to line 846. Increase upload max file size from 2M to 22M.
#3 At line 849. Increase max file uploads from 20 to 30. This will allow us to upload up to 30 images at a time instead of the current 20.
Then save the PHP INI file with Control plus o followed by Enter. Then close the file with Control plus x. Then type exit to close Midnight Commander. Then type exit to close ssh session without turning off server. Then close the terminal. Restart Several Hestia Services for changes to take effect. Back at the Hestia Admin screen, click on Server settings, Configuration and restart apache, mariah db, nginx and php7.4-fpm. You are now ready to add as many Joomla websites as you want!
Step 9 Download the most recent Joomla Installer Zip File
Go to Joomla.org and download Joomla 3.10. Here is the direct link:
https://downloads.joomla.org/cms
Click on Joomla 3. Then for the latest version of Joomla 3.10, click View Files. Then scroll down to the ZIP package and click Download Now. Then save the package in your Downloads folder.
Step 10 Upload the Joomla 3.10 Zipped File to public_html
Then in your Hestia user account, click on Files, web, yourdomain.com, public_html. We are now in the website root folder. Click Add Files and add the Joomla 3.10.3 zipped folder.
Select the zipped folder and it will load into your website folder.
Click on the three dots to the right of the Joomla zipped folder. Then click Unzip. When it is done, there will be lots of folders and files in the public_html folder. Find the Joomla zipped folder and click on the three dots. Then click Delete to delete the zipped folder. Then find the index.html folder and click on the three dots and click Rename to rename it old-index.html. Then scroll up and click Exit to Control Panel.
Step 11 Start the Joomla 3 Installer
Click on the arrow to the right of the domain name to open a new browser tab and go to the Joomla installation first screen:
Tip: If the prior default Hestia page comes up instead, rather than clearing the browser tab, which will log you out of the Hestia panel, just copy the website URL into a browser tab on a different browser:
Give your site a name and description. Enter your protonmail email address. Then type in a username and password (twice). Then click Next.
Enter your database username, password and database name. Then click Next.
Leave Install Sample Data at None. Scroll down the screen to make sure everything looks OK. Then click Install. Scroll down the page and click on the orange button to delete the installation folder. It will reply "Installation folder removed." Then click Administrator to go to the Joomla Administrator Log in screen.
Step 12 Log into your new Joomla website
Click on the blue Administrator button to go to the log in page:
Log in with your administrator username and password.
Click Never for the data mining. Read and close the Messages. Go to System, Global Configuration, System Tab and change Session Lifetime from 15 minutes to 99 minutes. To visit the front end of your website, click on the link in the upper right corner of your control panel:
To hide the default log in form from hackers, go to Extensions, Modules and unpublish it. Close log out of your Joomla control panel by clicking on the person icon in the upper right corner. Then log out of your Hestia user screen and admin screen.
What's Next?
Now that you know how to use Hestia to create a Joomla website, in the next article, we will look at how to add the JCE Editor and the Helix Ultimate Template to our new Joomla website.