Install BlogoText CMS on Ubuntu 20.04

Updated on December 15, 2021
Install BlogoText CMS on Ubuntu 20.04 header image


BlogoText is an open-source, lightweight blog engine for creating small blogs and websites. Some of its significant features are:

  • Blog with comments and RSS feeds.
  • Links sharing.
  • RSS Reader.
  • Images/Files uploading and sharing.
  • JSON/ZIP/HTML import-export.
  • Support for add-ons.

This article explains how to install BlogoText CMS on Ubuntu 20.04 server.


  • Deploy a fully updated Vultr Ubuntu 20.04 Server.
  • Create a non-root user with sudo access.
  • PHP > 5.5.
  • SQLite or MySQL with PDO support.

1. Install Required Packages

  1. SSH to your server as a non-root user with sudo access.

  2. Update the system package list to update all packages to the latest available versions.

     $ sudo apt update
  3. Install PHP 7.4 and more modules.

     $ sudo apt install apache2 mysql-server php7.4 libapache2-mod-php7.4 php7.4-json php7.4-common php7.4-gmp php7.4-curl php7.4-mysql php7.4-intl php7.4-sqlite3 php7.4-mbstring php7.4-xmlrpc php7.4-gd php7.4-cli php7.4-xml php7.4-zip php7.4-imap wget unzip -y
  4. List available time zones and choose your preference.

     $ sudo timedatectl list-timezones
  5. Edit the PHP configuration file.

     $ sudo nano /etc/php/7.4/apache2/php.ini

    Change the following values, and replace Africa/Nairobi with your timezone save and close the file. To search for a specific line, use Control+W, enter search phrase then press Enter.

     max_execution_time = 360
     memory_limit = 256M
     upload_max_filesize = 100M
     date.timezone = Africa/Nairobi
  6. Restart Apache2 service for all changes made to take effect.

     $ sudo systemctl restart apache2

2. Create BlogoText Database

  1. Log in to MySQL shell. At the password prompt, just press Enter to continue.

     $ sudo mysql -u root -p
  2. Create a database called blogotext.

     CREATE DATABASE blogotext;
  3. Create a database user called blogotextuser with a password StrongPassword.

     CREATE USER 'blogotextuser'@'localhost' IDENTIFIED BY 'StrongPassword';
  4. Grant the user full access to the database.

     GRANT ALL ON blogotext.* TO 'blogotextuser'@'localhost' WITH GRANT OPTION;
  5. Save the changes made to the database.

  6. Exit MySQL shell.


3. Install BlogoText

  1. Download the latest version of BlogoText. Get the latest version from the official releases page.

     $ wget
  2. Unzip the downloaded files.

     $ sudo unzip
  3. Crate the installation directory /var/www/html/blogotext.

     $ sudo mkdir /var/www/html/blogotext
  4. Move the extracted files into the installation directory.

     $ sudo mv blogotext-3.7.6/* /var/www/html/blogotext
  5. Change ownership of the installation directory.

     $ sudo chown -R www-data:www-data /var/www/html/blogotext
  6. Change access permissions for the directory.

     $ sudo chmod -R 755 /var/www/html/blogotext

4. Configure Apache2

  1. Create a new Apache configuration file called blogotext.conf.

     $ sudo nano /etc/apache2/sites-available/blogotext.conf

    Copy and paste the code below to the file. Then, save and exit the file.

     <VirtualHost *:80>
         DocumentRoot /var/www/html/blogotext
         <Directory /var/www/html/blogotext/>
             Options FollowSymlinks
             AllowOverride All
             Require all granted
         ErrorLog ${APACHE_LOG_DIR}/error.log
         CustomLog ${APACHE_LOG_DIR}/access.log combined
  2. Disable Apache default configuration file.

     $ sudo a2dissite 000-default.conf
  3. Enable BlogoText Apache configuration file.

     $ sudo a2ensite blogotext.conf
  4. Enable Apache rewrite mode.

     $ sudo a2enmod rewrite
  5. Restart Apache service.

     $ sudo systemctl restart apache2

5. Access BlogoText Web Interface

To access the BlogoText Web Interface, go to your browser and visit http://Server_IP/. For example:


You have installed BlogoText on your server. Access the installation page and complete the process by creating an administrator account and connecting your database.