Install BoltWire on Ubuntu 18

BoltWire CMS is an open-source content management system that is easy-to-install and offers many features. Written in PHP, BoltWire CMS offers features that may not be available with other PHP-based CMSes, like WordPress, Joomla, or Drupal – instead, it helps you create personal or business websites in minutes by just uploading the content of these sites to your server. This doesn’t require a database, making the entire process that much smoother.

The installation is quite simple. If you follow our instructions carefully, you can finish the Boltwire CMS installation in less than 10 minutes. Let’s get started.

Requirements:

  • For the purposes of this tutorial, we will be using an Ubuntu 18.04 VPS.
  • Full SSH root access (or a user with sudo privileges)
  • A domain name registered and pointing to your server’s IP address. In this tutorial, we will use your_domain.com as a placeholder.

1. Log in via SSH and Update the System

Log in to your Ubuntu 18.04 VPS with SSH as the root user (Replace ‘root’ with the name of your user with root privileges if you wish to log in that way):

ssh root@IP_Address -p Port_number

You can check whether you have the proper Ubuntu version installed on your server with the following command:

$ lsb_release -a

You should get this output:

Distributor ID: Ubuntu
Description:    Ubuntu 18.04.1 LTS
Release:        18.04
Codename:       bionic

Once you are logged in, run the following command to update all installed packages to their latest available versions:

$ apt-get update && apt-get upgrade

2. Install Nginx

To install Nginx on your Ubuntu 18.04 server, you need to execute the following command:

$ apt-get install nginx

After the installation is completed, start Nginx and enable it to start automatically after a reboot with these two commands:

$ systemctl start nginx
$ systemctl enable nginx

To check and verify whether Nginx is currently running on your server, execute the following command:

$ systemctl status nginx

The output should look something like this:

● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running)
     Docs: man:nginx(8)
 Main PID: 21112 (nginx)
    Tasks: 3 (limit: 2320)
   CGroup: /system.slice/nginx.service
           ├─21112 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
           ├─21113 nginx: worker process
           └─21114 nginx: worker process

3: Install PHP 7.2

Since PHP version 7.2 is not available through Ubuntu’s default software repositories, we will need to install it through a third-party repository instead.

PHP 7.2 can be installed using Ondřej Surý’s PPA, so install the software-properties-common and python-software-properties packages:

$ apt-get install software-properties-common python-software-properties

Once that is done, add the Ondřej PPA and update your sources:

$ add-apt-repository -y ppa:ondrej/php
$ apt-get update

Install PHP 7.2 using the following command:

$ apt-get install php7.2 php7.2-cli php7.2-common

To install PHP 7.2-FPM and its related modules (these are necessary for BoltWire to run properly) you can run the following command:

$ apt install php7.2-fpm php7.2-common php7.2-mbstring php7.2-xmlrpc php7.2-gd php7.2-xml php7.2-cli php7.2-tidy php7.2-intl php7.2-curl php7.2-zip

Use the next command to check the PHP version currently installed on your server:

$ php -v

You should receive the following text as the output:

PHP 7.2.15-0ubuntu0.18.04.1 (cli) (built: Feb  8 2019 14:54:22) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.15-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies

After installing PHP 7.2, run the commands below to open the PHP default configuration file for Nginx. We are using ‘nano’ as our text editor – you can use your preferred text editor instead.

$ nano /etc/php/7.2/fpm/php.ini

Then make the changes on the following lines below in the file and save. The values below are our recommended settings to apply to your environments. (Change the time zone to the zone closest to your server’s location):

file_uploads = On
allow_url_fopen = On
memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = America/St. Louis

4. Download the Latest Release of BoltWire

Next, go to https://www.boltwire.com/downloads, right-click the “Download” button and copy the direct download link, then download it to your server by using wget. Once the download has finished, unzip the downloaded zip file.

The commands below already have the download link for BoltWire pre-inserted. The latest version at the time of writing is 6.02:

$ cd /var/www/html
$ wget https://www.boltwire.com/files/6/boltwire6.02.zip 
$ unzip boltwire6.02.zip

Then run the following commands to set the correct permissions for BoltWire to function properly.

$ chown -R www-data:www-data /var/www/html/boltwire/
$ chmod -R 755 /var/www/html/boltwire/

5. Set Up Nginx Configuration for BoltWire

Now we will configure an Nginx configuration file for BoltWire. This file will control how users access BoltWire content. Run the following commands to create a new configuration file called boltwire.conf.

$ nano /etc/nginx/sites-available/boltwire.conf

Then copy and paste the content below into the file and save it. Replace your_domain.com with your own domain name. If necessary, change the value of where your BoltWire root directory is located.

server {
    listen 80;
    listen [::]:80;
    root /var/www/html/boltwire;
    index  index.php index.html index.htm;
    server_name  your_domain.com www.your_domain.com;

     client_max_body_size 100M;

     autoindex off;

     location / {
        try_files $uri $uri/ /index.php?$query_string;
          }

    location ~ \.php$ {
         include snippets/fastcgi-php.conf;
         fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
         fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
         include fastcgi_params;
    }
}

Save the changes and test the Nginx configuration by executing the following command:

$ nginx -t

The output should look like this:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

To enable the server block we have just created, run this command:

ln -s /etc/nginx/sites-available/your_domain.com.conf /etc/nginx/sites-enabled/your_domain.com.conf

Finally, restart Nginx for the changes to take effect:

systemctl restart nginx

6. Access BoltWire

Now, open your web browser and type the URL of your server. In our case, the URL is http://your_domain.com/start.php. You will be redirected to the following page:

How to Install BoltWire CMS on Ubuntu 18.04

How to Install BoltWire CMS on Ubuntu 18.04

Now, provide a new password that will be used to access your site administration, then click on the SUBMIT button. You should see the following page:

How to Install BoltWire CMS on Ubuntu 18.04

How to Install BoltWire CMS on Ubuntu 18.04

Now, provide your site password and site ID – the site ID is the name of the folder where the new site is added to, which will be visible in the site’s URL. When done, click on the Create Site button.

Your first BoltWire site is now live. You can access it at http://your_domain.com/site_name/index.php. Replace site_name with the site name you chose earlier.

Congratulations. You have successfully installed BoltWire CMS on your Ubuntu 18.04 VPS. You can now check the BoltWire CMS documentation for more information.


Of course, you don’t have to do any of this if you use one of our Linux VPS Hosting services, in which case you can simply ask our expert Linux admins to install BoltWire CMS for you. They are available 24×7 and will take care of your request immediately.

PS. If you liked this post, please share it with your friends on the social networks using the buttons below, or simply leave a comment in the comment section. Thank you.