How to Install BlogoText CMS on Debian 11

Updated on January 19, 2022
How to Install BlogoText CMS on Debian 11 header image

Introduction

BlogoText Content Management System (CMS) is an open-source and lightweight website and blog publishing platform. It is simple and allows you to build a small site with just a few clicks. Moreover, it offers a simple management portal with addons support, RSS reader, JSON/ZIP/HTML import & export, image and file uploading, and sharing.

This article explains how to install BlogoText CMS on Debian 11 server.

Prerequisites

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

1. Setup LAMP Stack

Update system package list.

$ sudo apt update

Install PHP 7.4, Apache2, MariaDB server, and more modules.

$ sudo apt install apache2 mariadb-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

List available time zones and choose your preference.

$ sudo timedatectl list-timezones

Edit the PHP configuration file.

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

Change the following values, replace Africa/Nairobi with your timezone to manage your timezone appropriately, then 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

Restart Apache2 service for all changes made to take effect.

$ sudo systemctl restart apache2

2. Setup BlogoText Database

Enable the database server to start automatically on a reboot.

$ sudo systemctl enable mysql

Verify the status of the database server.

$ sudo systemctl status mysql

Run mysql_secure installation script to set up MySQL security. This step helps you prevent remote logins to your database server.

$ sudo mysql_secure_installation

When prompted, answer the questions as shown below:

  • Enter current password for root (enter for none): Press Enter.
  • Switch to unix_socket authentication? Press N, then Enter.
  • Change the root password? Press Y, then Enter.
  • Remove anonymous users? Press Y, then Enter.
  • Disallow root login remotely? Press Y, then Enter.
  • Remove test database and access to it? Press Y, then Enter.
  • Reload privilege tables now? Press Y, then Enter.

Log in to MySQL shell. At the password prompt, enter your password to continue.

$ sudo mysql -u root -p

Create a database called blogotext. You can change the name to a preferred one.

CREATE DATABASE blogotext;

Create a database user called blogotextuser with a strong password.

CREATE USER 'blogotextuser'@'localhost' IDENTIFIED BY 'ReplaceThisWithAStrongPassword';

Grant the user full access to the database.

GRANT ALL ON blogotext.* TO 'blogotextuser'@'localhost' WITH GRANT OPTION;

Save the changes made to the database.

FLUSH PRIVILEGES;

Exit MySQL shell.

exit;

3. Install BlogoText CMS

To get the latest version of BlogoText CMS, visit the official releases page.

Download the latest version of BlogoText CMS.

$ wget https://github.com/BlogoText/blogotext/archive/3.7.6.zip

Unzip the downloaded files.

$ sudo unzip 3.7.6.zip

Crate the installation directory /var/www/html/blogotext.

$ sudo mkdir /var/www/html/blogotext

Move the extracted files into the installation directory.

$ sudo mv blogotext-3.7.6/* /var/www/html/blogotext

Change ownership of the installation directory.

$ sudo chown -R www-data:www-data /var/www/html/blogotext

Change access permissions for the directory.

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

4. Configure Apache2

Enable the Apache service to start automatically on a reboot.

$ sudo systemctl enable apache2

Verify the status of the Apache service.

$ sudo systemctl status apache2

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>
    ServerAdmin admin@example.com
    DocumentRoot /var/www/html/blogotext
    ServerName example.com

    <Directory /var/www/html/blogotext/>
        Options FollowSymlinks
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Disable Apache default configuration file.

$ sudo a2dissite 000-default.conf

Enable BlogoText Apache configuration file.

$ sudo a2ensite blogotext.conf

Enable Apache rewrite mode.

$ sudo a2enmod rewrite

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:

http://192.0.2.10/

Conclusion

You have installed BlogoText CMS on Debian 11 server. Continue the installation process by creating an administrator account and connecting to your database through the web interface.