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 Rcs 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.