How To Create A Secure Blog With Serendipity CMS

Learn how to create a reliable, secure & extensible blog with Serendipity, a flexible & easy-to-use application for bloggers, developers & website owners.

What is Serendipity?

Serendipity CMS

Serendipity CMS is a web application that you can use to create a web blog, a photoblog, a complete homepage for your online project and a host of other use cases.

While Serendipity was primarily designed for bloggers, it offers a flexible, expandable and easy-to-use framework that developers can use to build almost any kind of website.

With a very sophisticated plugin architecture & themes, Serendipity allows you to modify both the appearance of your blog/website to enhance its functionalities.

How To Install Serendipity Blog

Before we start, let’s look at the basic requirements needed to successfully install Serendipity.

  • a cPanel hosting account
  • Apache webserver
  • Latest PHP version with gd2 support (recommended) or ImageMagick’s convert binary
  • MySQL or PostgreSQL or SQLite

How To Install Serendipity CMS In 5 Minutes

The easiest way to install Serendipity CMS is to use the popular, time-tested Softaculous installer which every customer on our hosting platform has access to.

Softaculous is a 1-click script that helps you focus on using web applications rather than spending time on installing them.

With Softaculous, you can install, update, backup, restore, clone applications without the need to touch a codebase, create a database or deal with all those pesky technical things that often confront anyone seeking to build a website.

To start:

Log in to your cPanel with your username and password.


Once you have successfully logged in, scroll down to the Software section of your cPanel interface.


Click on the Softaculous icon. The page and bring you to the 1-click application installer page.


To find Serendipity, either type to search or click on the Blogs menu.


Select and click Serendipity. This is where you can either choose to check out the demo, install, see reviews/ratings or import an existing Serendipity installation into your cPanel.

Now click on the Install Now button.

  • Choose the Installation URL where you want to install the software.
  • Type in your Site Name
  • Describe the purpose of the website or blog with Site Description.
  • Type in your Admin Username
  • Type in your Admin Password
  • Type your name on the Real Name
  • Type in your Admin Email. Make sure that this has been created afore-hand before you start.
  • Choose Language that you want to administer your blog or website with.
  • Click on the Advanced Options.

Here you can make changes to:

  • Database Name … that is the name of the database to be created for the installation.
  • DB Table Prefix
  • Select Auto Upgrade which automatically upgrades your Serendipity to the latest version when available.
  • Select Backup Location. Softaculous allows you to back up your website data using various methods including Google Drive, Dropbox, local machine or on a local folder.
  • Select the Backup Rotation. If the backup rotation limit is reached Softaculous will delete the oldest backup for this installation and create a new backup. The backups will utilize your space so choose the backup rotation as per the space available on your server.

If you want to send the installation details to your developer, fill in the details on the “Email installation details to” field.

How To Install Serendipity Manually

The process of installing Serendipity manually and getting up and running in about 2 minutes involves:

  • downloading the .tar.gz to your server,
  • unpacking it inside your document root; make sure the created directory is writeable
  • opening up the website URL in your favorite web browser.

There you will see the installation screen that lets you set up Serendipity.

Create A MySQL or PostgreSQL Database

Serendipity requires that you have already set up the Database in your favorite database system.

On cPanel, you can do this very easily using the MySQL Database Wizard feature.

Create a database and database user with a strong password via cPanel >> Home >> Databases >> MySQL Database Wizard.

To set up a database, perform the following steps:

In the New Database text box, enter a name for the database and click Next Step.


In the Username text box, enter a name for the user who you wish to allow to manage the database.


Enter and confirm the new password in the appropriate text boxes.


Click Create User.


Select the check-boxes that correspond to the privileges that you want to grant the user, or select ALL PRIVILEGES.


Click Next Step.

The system will display a message indicating that you have successfully set up the database and user account.

If you want to create the database via a command-line, you can also do so:

For MySQL you can create a database with:

CREATE DATABASE serendipity;

On PostgreSQL, you can do that via:

createdb serendipity

The username you enter in the Serendipity Installations also requires that this username already exists.

The normal flow is for you as a database administrator to first use CREATE USER to create an account, define its nonprivileged characteristics such as its password, whether it uses secure connections, and limits on access to server resources then use GRANT to define its privileges.

So on MySQL, create a user:

CREATE USER 'serendipity'@'localhost' IDENTIFIED BY '$password';

The CREATE USER statement creates new MySQL accounts.

It enables authentication, role, SSL/TLS, resource-limit, and password-management properties to be established for new accounts.

On PostgreSQL you can create a user with:

createuser serendipity

Make sure that you have assigned CREATE, INSERT, UPDATE, DELETE, ALTER and INDEX privileges for the SQL user account.

Download the newest version of serendipity and unpack the archive:

wget -O s9y.zip http://www.s9y.org/latest
unzip s9y.zip -d /var/www/

It is time to visit the URL of your server to start the installation.

serendipity CMS installation 1

The first page of the installer checks if the server has all the capabilities needed and if the rights are correct.

Follow its hints, then click on Simple Installation.

The second page will ask for various configuration options.

Important is the database settings at the top.

The next step is your username and password.

The other options can be ignored.

Your blog will now be installed.

Published by Trax Armstrong

A figment of someone's imagination that doesn't really exist. He lives inside a sci-fi simulation, reads philosophical and metaphysical books when he is not fighting aliens that want to steal his soul & always quote Star Trek to make his points.

Leave a comment

%d bloggers like this: