How to Install BlogoText CMS on Debian 11

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 CTRL+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 [email protected]
    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.

Leave a Comment