Today we will show you how to Install ProcessWire on an Ubuntu 16.04 VPS using Apache web-server and MySQL database.
ProcessWire is free and open source content management framework and content management system written in PHP built to save you time and work the way you do. It is a friendly and powerful open source CMS with an exceptionally strong API. ProcessWire’s open source jQuery-inspired API is the best, making content management easy and enjoyable. It is fairly easy to install ProcessWire on an Ubuntu 16.04 VPS. The installation process should take about 5-10 minutes if you follow the very easy steps described below.
Related Articles
The latest stable version of ProcessWire requires:
- Apache web server;
- PHP (version 5.3.8 or higher) along with the mbstring, curl, zip, gd and mcrypt extensions. They are most generally active by default on a standard php installation.
- MySQL(version 5.0.15 or higher) installed on your Linux Virtual Server;
INSTRUCTIONS:
Log in to your VPS via SSH
ssh user@vps
Update the system
[user]$ sudo apt-get update && sudo apt-get -y upgrade
Install MariaDB 10.0
To install MariaDB, run the following command:
[user]$ sudo apt-get install -y mariadb-server
Next, we need to create a database for our ProcessWire installation.
[user]$ mysql -u root -p MariaDB [(none)]> CREATE DATABASE processwire; MariaDB [(none)]> GRANT ALL PRIVILEGES ON processwire.* TO 'pwuser'@'localhost' IDENTIFIED BY 'your-password'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> \q
Do not forget to replace ‘your-password’ with a strong password.
Install Apache2 web server
[user]$ sudo apt-get install apache2
Install PHP and required PHP modules
To install the latest stable version of PHP version 7 and all necessary modules, run:
[user]$ sudo apt-get install php7.0 libapache2-mod-php7.0 php7.0-mbstring php7.0-curl php7.0-zip php7.0-gd php7.0-mysql php7.0-mcrypt
Enable the Apache2 rewrite module if it is not already enabled:
[user]$ sudo a2enmod rewrite
In order to activate the new configuration, restart the Apache Web Server using the following command:
[user]$ sudo service apache2 restart
Download and extract the latest version of ProcessWire on your server:
[user]$ sudo cd /opt && wget https://github.com/ryancramerdesign/ProcessWire/archive/master.zip [user]$ sudo unzip master.zip [user]$ sudo mv ProcessWire-master/ /var/www/html/processwire
All files have to be readable by the web server, so we need to set a proper ownership
[user]$ sudo chown www-data:www-data -R /var/www/html/processwire/
Create a new virtual host directive in Apache. For example, create a new Apache configuration file named ‘processwire.conf’ on your virtual server:
[user]$ sudo touch /etc/apache2/sites-available/processwire.conf [user]$ sudo ln -s /etc/apache2/sites-available/processwire.conf /etc/apache2/sites-enabled/processwire.conf [user]$ sudo nano /etc/apache2/sites-available/processwire.conf
Then, add the following lines:
ServerAdmin [email protected] DocumentRoot /var/www/html/processwire/ ServerName your-domain.com ServerAlias www.your-domain.com Options FollowSymLinks AllowOverride All Order allow,deny allow from all ErrorLog /var/log/apache2/your-domain.com-error_log CustomLog /var/log/apache2/your-domain.com-access_log common
Restart the Apache web server for the changes to take effect:
[user]$ sudo service apache2 restart
Open your favorite web browser, navigate to http://your-domain.com/ and if you configured everything correctly the ProcessWire installer should be starting. You should follow the easy instructions on the install screen inserting the necessary information as requested.
That is it. The ProcessWire installation is now complete.
PS. If you liked this post please share it with your friends on the social networks using the buttons on the left or simply leave a reply below. Thanks.