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.
Table of Contents
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:
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:
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.