Install BigTree CMS on CentOS 7

By Sajid Qureshi, Alibaba Cloud Tech Share Author. Tech Share is Alibaba Cloud’s incentive program to encourage the sharing of technical knowledge and best practices within the cloud community.

BigTree CMS is a free and open source content management system written in PHP. It is lightweight and comes with extensive and extensible content management capabilities.

BigTree CMS is very fast and capable of powering multiple sites and millions of hits per day. BigTree can help you build a powerful platform to manage your content. It can find missing files or pages, and automatically create redirects for them within the module.

In this guide, we will show you how to install BigTree CMS on your Alibaba Cloud Elastic Compute Service (ECS) CentOS 7 server.


1. You must have Alibaba Cloud Elastic Compute Service (ECS) activated and verified your valid payment method. If you are a new user, you can get a free account in your Alibaba Cloud account. If you don’t know about how to set up your ECS instance, you can refer to this tutorial or quick-start guide. Your ECS instance must have at least 1GB RAM and 1 Core processor.
2. A domain name registered from Alibaba Cloud. If you have already registered a domain from Alibaba Cloud or any other host, you can update its domain nameserver records.
3. Root user

Update the System

We recommend you to update the system before installing any new packages on your CentOS server. Execute the below command and all the available packages will be upgraded.

yum -y update

Install Apache Web Server

You will need to install Apache web server before downloading BigTree CMS. Run the following command to install the Apache web server.

yum -y install httpd

Now, you can start Apache and enable it to start at boot time, using the following commands.

systemctl start httpd.service && systemctl enable httpd.service

To install BigTree CMS, it is required that mod_rewrite Apache module is loaded. You can check this from the base module configuration file using any text editor.

nano /etc/httpd/conf.modules.d/00-base.conf

If the mod_rewrite Apache module is already loaded then you should find a configuration line looking like this:

LoadModule rewrite_module modules/

If the above line starts with a semi-colon then it is not loaded so, you will have to remove the semi-colon to uncomment the line to load the module then save the file and exit from the text editor.

Finally, restart your Apache web server using the following command.

systemctl restart httpd

You can check the status of Apache web server using the following command.

systemctl status httpd

You should see the following output:

● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2018-11-07 04:05:26 UTC; 2min 8s ago
Docs: man:httpd(8)
Main PID: 387 (httpd)
Status: "Total requests: 0; Current requests/sec: 0; Current traffic: 0 B/sec"
CGroup: /system.slice/httpd.service
├─387 /usr/sbin/httpd -DFOREGROUND
├─388 /usr/sbin/httpd -DFOREGROUND
├─389 /usr/sbin/httpd -DFOREGROUND
├─390 /usr/sbin/httpd -DFOREGROUND
├─391 /usr/sbin/httpd -DFOREGROUND
└─392 /usr/sbin/httpd -DFOREGROUNDNov 07 04:05:26 ip-172-31-23-61 systemd[1]: Starting The Apache HTTP Server...
Nov 07 04:05:26 ip-172-31-23-61 systemd[1]: Started The Apache HTTP Server.
[root@Sajid ~]#

Install PHP

Once the Apache web server is installed, you can proceed further to install PHP with all of the necessary PHP modules required by Big Tree CMS. Run the following command to do so.

yum -y install php php-mbstring php-gd php-common php-pdo php-mysqlnd

Next, you will need to change some default settings of PHP in ‘php.ini’ file using the following command.

nano /etc/php.ini

Change the following lines as shown below:

short_open_tag = On
upload_max_filesize = 32MB

Save the file and exit from the editor.

Install MariaDB Server

We will need to install MariaDB for database purposes for BigTree CMS. MariaDB 5.5 is shipped in the default CentOS 7 repository, so just run this command to install MariaDB.

yum -y install mariadb-server

Now you’ll have to start the MariaDB service and enable it to start at the boot time like we have done before for apache server, to do so please run following command.

systemctl start mariadb.service && systemctl enable mariadb.service

You can check the status of MariaDB using this below-given command and you should see the following output.

systemctl status mariadb.service

We recommend you to make sure that this installation is secure and to do so run following command.


You’ll be asked to provide a root password, so enter an appropriate password and answer yes to all questions by pressing Y.

Now, you’ll have to create a database for BigTree CMS so, please follow the instructions.

mysql -u root -p

You’ll be asked to enter a password so simply enter a password and now execute the following queries to create a new database.

CREATE DATABASE bigtree_data;

The above query will create a database named bigtree_data. For the database, you can use any name you prefer in the place of bigtree_data. Make sure that you use semicolon at the end of each query as a query always ends with a semicolon. Once the database is created you can create a new user and grant the required permissions to the user for the database.

CREATE USER 'bigtree_user'@'localhost' IDENTIFIED BY 'StrongPassword';

The above query will create a user with username bigtree_user. You can use any preferred username instead of bigtree_user. Replace StrongPassword with a strong password.

Now provide the appropriate privileges to your database user over the database you have created. Run the following query to do so.

GRANT ALL PRIVILEGES ON bigtree_data.* TO 'bigtree_user'@'localhost';

Now run the following query to immediately apply the changes to the database privileges.


Now you can exit from MariaDB prompt using the following command.


Download BigTree CMS

All the dependencies required to install BigTree CMS are installed now. You can proceed further and download BigTree CMS and install it. First of all, change your current directory to default web root directory using the following command.

cd /var/www/html/

Next, download the latest stable release of BigTree CMS using the following command.


You can always check for the most recent version of BigTree CMS here.

Now, unzip the downloaded file using the following command.


Next, we will move all of the BigTree installation files to the web root directory and change the ownership rules. Execute the following commands and they will do the job for you.

mv BigTree-CMS/* /var/www/html

Finally, restart your Apache web server using the following command.

systemctl restart httpd

Modify Firewall Rules

You will need to modify firewall rules because default web ports will be blocked by firewalld by default. Execute the following commands one by one and they will do the job for you.

firewall-cmd --permanent --add-port=80/tcp

Finally, you will need to disable SELinux services to access BigtTree CMS through the web. Execute the following command to temporarily disable the SELinux services.

setenforce 0

Web Interface

Open up your favorite web browser and visit http://YourServerIP/install.php you will be redirected to BigTree CMS installation webpage. You will have to complete this BigTree CMS installation from here. You will be asked to provide some general information like database details, administrative details, and others. For example, enter the following details in the database details:

Hostname:       localhost
Database: bigtree_data
Username: bigtree_user
Password: StrongPassword

Similarly, enter all the details asked and finally click on Install Now button to finish this installation wizard.

Now, you can access the administration area by visiting http://YourServerIP/admin/

You will be asked for login credentials simply enter them and login to the administrator dashboard.


In this guide, you have downloaded and installed BigTree CMS on your CentOS 7 server. You can start adding your content and configuring the look of your site. We hope now you have enough knowledge to work with BigTree CMS and you can manage your content.


Written by

Follow me to keep abreast with the latest technology news, industry insights, and developer trends.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store