How to configure ClassicPress using VestaCP

ClassicPress is a fork of WordPress (without Gutenberg) that serves as a business and a professional focused CMS. What sets ClassicPress apart is the preservation of the classic TinyMCE editor as the default option. Moreover, it is strictly a community-based project and decisions are been made democratically (Suggestion and Features can be made via the petition system).

Following this tutorial you can learn how to set up, install and configure a ClassicPress website on Ubuntu 18.04. To make this easy and fast, we are first installing Vesta Control Panel that can be used to manage multiple websites, email accounts, MySQL Databases, DNS records and more. VestaCP also provides a built-in Analytics, Server Statistics, Backups & Restore, Free SSL from Lets Encrypt, Great CLI & API, and many more.

Prerequisites

First, you will need to deploy a new cloud server that fulfils the minimum system requirements of 512MB RAM, 20GB of storage, and 1 CPU core. As such, the $5 Simple plan is more than enough.

VestaCP supports a wide variety of operating systems, but for this example, we are using Ubuntu 18.04.

Additionally, for a fully-fledged website, you will need to have registered a domain name. We’ll be setting up the following records once the new cloud server has been deployed. Naturally, replace the domain names shown as an example with your own.

An A records pointing your domain e.g. classic.example.com to your cloud server’s public IP Address for the ClassicPress site

An A records pointing e.g. vestacp.example.com to your cloud server’s Public IP Address for the VestaCP Dashboard

A CNAME record pointing www. to your domain e.g. www.classic.example.com to classic.example.com

Step 1. Setting domain name records

In addition to pointing a domain name to your UpCloud web server, you should change the reverse DNS name to your websites’ name. You can change the reverse DNS name by visiting your UpCloud control panel.

Navigate To The Network Section under your cloud server settings.

Click the pencil icon to edit the Reverse DNS Name of your public IP address:

Note: This should be your registered domain name, for example, classic.example.com.

Then copy the public IPv4 address as you’ll need it to configure the A record.

The next thing you would need to do is to point an “A record” to your server’s public IP address, this should be done via your domain registrar dashboard. You can find general instructions here but refer to your domain registrars for more information.

Once you have done that, create an additional A records pointing dashboard.yourwebsite.com to your public IP address, this would be solely for accessing the VestaCP dashboard. This way, we can keep the backend separate.

Lastly, create a CNAME record pointing www.classic.example.com to classic.example.com. This will be created at your domain registrar similarly to the A record.

Step 2. Creating new user with sudo privileges

It is highly recommended to create a non-root user account. If you have a non-root user account, you can skip this step!

Here are some reasons as to why you should:

Security: Intruders/Bots knows there is a root account, that means you are opening a known entry point which is very likely to be a target

Logs: root doesn’t log entry of commands but with a sudo account, every command run is logged, which helps in diagnosing a problem with the system.

Minimize Disaster: root is really powerful and a little mistake when running commands can destroy the whole system, consider you mistakenly run the following command: sudo rm -r / home/user, you see that space between the / and the home is your system directory, if you run that command, your whole system is down, which is why sudo is recommended, if you use sudo, at least, you will be prompted the password, so, luckily, you can see the mistake before you enter the password.

Let’s create a non-root user account with sudo privileges.

Log in as root over SSH and add a new user with the following command while replacing the newuser with your desired username:

adduser newuser

You will be prompted to create a new password for your new user, enter and confirm the password.

Having done that, you will be prompted to fill in your info, skip by hitting the enter key and input to verify your details.

Once your new user is created, the next task is to give the new user a sudo privilege, this way we can perform administrative tasks with the sudo command.

Give it a superuser privilege by running the following command:

usermod -aG sudo newuser

Remember to replace newuser with your own username.

That’s it about creating a non-root user with sudo privileges. Continue in the next step on how to install VestaCP itself.

Step 3. Installing Vesta Control Panel

First, switch to the non-root account using the command below where the newuser would be the non-root account you just created.

su newuser

Then download bash install script using the following command:

sudo curl -O http://vestacp.com/pub/vst-install.sh

You might be prompted for a password to confirm you are the new user, enter the password for the non-root user account and proceed by removing group admin using:

sudo groupdel admin

Note: If you receive “groupdel: group ‘admin’ does not exist”, kindly ignore as VestaCP will create it during the install.

Finally, install VestaCP:

sudo bash vst-install.sh

You will be asked to confirm the software you want to install on your Ubuntu server, enter y & hit enter to continue, input your email and enter your FQDN (Fully Qualified Domain Name), this should be the dashboard URL: e.g vestacp.example.com:

Step 4. Setting up VestaCP

Note: If you aren’t able to access your dashboard URL, it probably has to do with the DNS propagation, it might take anywhere between 30 minutes — 48 hours, use your cloud server’s IP address to login instead, e.g 94.237.120.45:8083. You can also check the URL using whatsmydns.net to see if your name record has propagated.

You will get an SSL warning has shown below, kindly click on Advance and Proceed. The warning is normal on the first time accessing a site that is using a self-signed certificate:

Log in with the username and password Vesta generated for you at the end of the installation output.

Next, you should change your Vestacp password. Hover over the admin user and click Edit:

You can either let Vesta generates the password for you or set it yourself.

You can also change other settings, for example, the user’s first and last name.

You can leave the Nameserver as is or you can change it to use your own Nameserver if you have one.

Click Save when you are done with the settings, take your time!

When you are done updating the admin user details, navigate to the Web section and click the Add Web Domain button revealed by mousing over the plus icon:

Add your domain name and change the IP address to your cloud server’s public IP address. Then make the following selections:

DNS Support — check

Mail Support — check

Click Advanced Options, and use the following setting:
Aliases should be e.g. www.vestacp.example.com, this way your user can access your website using www

Proxy Support — check

(Optional) SSL Support — check

Let’s Encrypt Support — check

(Optional) Web statistics — choose Awstats

Statistics authorization — check, and add a unique user & pass

(Optional) Additional FTP — If you feel you need one for uploading files to your server, check and create the user and pass, leave the path as is

Once done, click the Add button to confirm.

Access your website URL (e.g classic.example.com) and you should see the default page:

You can also enable email configuration by going to the mail section and mouse over the domain you want to add the email support.

Use the following settings:

Account – your username

Password – Add a unique one and click “Advanced Options“

Quota – It allows you to set a mailbox size limit. Also, You can press the infinity icon to give it an unlimited storage

Aliases – It allows you to add other email addresses that forward to that main account, you don’t need this in most cases. The only case you might need one is when you
have an email account on another service, and you want to keep your emails on that service

Forward To – If you want to forward mails to other email services, you would want to check “Do not store forwarded mail” to save server resources.

Send login credentials to the email address – Send login credentials to an available email of yours and click Add.

Step 5. Option 1. Installing ClassicPress via Softaculous

Softaculous is included in VestaCP and installed by default. It is useful for installing scripts among others are ClassicPress, Presta, Joomla, Abantecart, and WordPress.

However, ClassicPress isn’t available in the free version of Softaculous. You can either use the Softaculous one-month free trial to one-time install ClassicPress or download it manually as shown in the option 2. below.

This might take a few minutes to process. If you want to speed it up, go to VestaCP App section and click the Admin Panel for Softaculous at /softaculous/index.php?ap=1& on your Vesta Control Panel domain.

Remove the old port by hovering over the rule for port 8083 and clicking Delete:

And that’s it about creating a new port.

Installing security updates

To begin installing security updates, the first thing is to update your repository index, which would instruct the server to check all lists of packages that are new or out-dated.

Run the following command to update your repo:

sudo apt update

Once, you’ve done that, you will need to upgrade them if any new packages are available.

You can either run

sudo apt upgrade

or

sudo apt dist-upgrade

The difference here is that apt upgrade will automatically install an update without removing any packages while the apt dist-upgrade will update new packages, install new packages as a dependency of the upgraded packages and remove packages that are broken by upgraded packages.

Troubleshooting the most common installation problems

Getting an Error connecting to the database

The error establishing a database connection error simply means that ClassicPress was unable to connect to your MySQL database which is likely due to incorrect database information.

To fix this, Open the wp-config file again just like we did before and carefully reenter the database login information.

Being asked for FTP credentials:

ClassicPress would prompt you for FTP credentials if it does not have the proper file permission.

I can’t access to Vesta CP. This site can’t be reached.I’m using upcluoud server with install Ubuntu18 . I received ip address https://52.xx.xxx.xxx:8083/ . and account information when I enter into admin login page Vesta CP. it show This site can’t be reached
why i can’t access Vesta CP following https://52.xx.xxx.xxx:8083/ .
why it is showing that This site can’t be reached.

Hi there, thanks for the question. While the Vesta CP admin panel should be reachable if the installation was successful, I would suggest double-checking your cloud server’s IP address as I don’t believe we currently have IP addresses in the 52.0.0.0/ range.

Phone

Email

London

London was our second office to open, and a important step in introducing UpCloud to the world. Here our amazing staff can help you with both sales and support, in addition to host tons of interesting meetups.