ManagedCloud Servers

High performance handled and monitored by us 24/7/365. A complete solution to provide you with our in house expertise 24/7 tailored to your specific needs. We'll setup a bespoke server for your site using the latest tehnologies so you can get the most out of your hardware and get your website loading quickly and reliably. Find out more..

cPanelCloud Servers

Recommended - High performance cloud servers with no technical knowledge required. If you're hosting multiple websites already and you're looking to consolidate, or if you're looking to isolate yourself from the shared hosting environment but you don't have the time or knoweldge to manage a server, then the Managed cPanel Servers are for you. Find out more..

UnmanagedCloud Servers

Our unmanaged range gives you complete control at rock bottom prices and our cloud platform boasts super fast multipath 40Gb/s network, the latest Intel Xeon V3 CPUs and enterprise grade redundant SSDs. If you're a sysadmin look no further, we offer some of the best specification to price ratio servers available. Find out more..

Want your very own server? Get our 1GB memory, Xeon V4, 20GB SSD VPS for £10.00 / month.

View Plans

How to Install Oxwall on CentOS 7

Oxwall is free and open source community software distributed under the Common Public Attribution License. It is written in PHP and is used to build social networking and community sites. The default features includes uploading/sharing content, friend networking, profile and page layout customization, user and content management and built-in SEO. Oxwall comes with many default themes that can be customized through the admin dashboard.

Oxwall was added to Softaculous software collection on March 31, 2011. Oxwall software has a community of users and developers interacting on the Oxwall Market and forum. Oxwall users can get support assistance, report bugs and post feature suggestions on the forum moderated by the Oxwall staff.

Prerequisites

You'll only need a CentOS 7 server instance and a root privileges on the user. You can switch between sudo user and root user using sudo command.

Updating the System

It is recommended to update the system and required all packages before going through installation process so use following command to update.

yum -y update

Installing Apache Web Server

Once the system is updated, you can install the dependencies required. To install Oxwall you will need to install the Apache web server along with MaraiDB and PHP with a few extensions.

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

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

systemctl status httpd

You should see following output:

[root@ip-172-31-14-223 ~]# systemctl start httpd.service
[root@ip-172-31-14-223 ~]# systemctl enable httpd.service
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
[root@ip-172-31-14-223 ~]# systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2017-01-30 09:53:26 UTC; 23s ago
     Docs: man:httpd(8)
           man:apachectl(8)
 Main PID: 10541 (httpd)
   Status: "Total requests: 0; Current requests/sec: 0; Current traffic:   0 B/sec"
   CGroup: /system.slice/httpd.service
           ├─10541 /usr/sbin/httpd -DFOREGROUND
           ├─10542 /usr/sbin/httpd -DFOREGROUND
           ├─10543 /usr/sbin/httpd -DFOREGROUND
           ├─10544 /usr/sbin/httpd -DFOREGROUND
           ├─10545 /usr/sbin/httpd -DFOREGROUND
           └─10546 /usr/sbin/httpd -DFOREGROUND

Jan 30 09:53:26 ip-172-31-14-223 systemd[1]: Starting The Apache HTTP Server... Jan 30 09:53:26 ip-172-31-14-223 systemd[1]: Started The Apache HTTP Server.

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

yum install mariadb-server

Now you'll have to start the MariaDB service and enable it to start at the boot time, to do so please run following command.

systemctl start mariadb.service systemctl enable mariadb.service

You can check status of mariadb using this command and you should see following output.

systemctl status mariadb.service
[root@ip-172-31-14-223 ~]# systemctl status mariadb.service
● mariadb.service - MariaDB database server
   Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2017-01-30 09:54:59 UTC; 36s ago
 Main PID: 10691 (mysqld_safe)
   CGroup: /system.slice/mariadb.service
           ├─10691 /bin/sh /usr/bin/mysqld_safe --basedir=/usr
           └─10848 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr...

Jan 30 09:54:57 ip-172-31-14-223 mariadb-prepare-db-dir[10612]: The latest information about Ma.... Jan 30 09:54:57 ip-172-31-14-223 mariadb-prepare-db-dir[10612]: You can find additional informa...: Jan 30 09:54:57 ip-172-31-14-223 mariadb-prepare-db-dir[10612]: http://dev.mysql.com Jan 30 09:54:57 ip-172-31-14-223 mariadb-prepare-db-dir[10612]: Support MariaDB development by ...B Jan 30 09:54:57 ip-172-31-14-223 mariadb-prepare-db-dir[10612]: Corporation Ab. You can contact.... Jan 30 09:54:57 ip-172-31-14-223 mariadb-prepare-db-dir[10612]: Alternatively consider joining ...: Jan 30 09:54:57 ip-172-31-14-223 mariadb-prepare-db-dir[10612]: http://mariadb.com/kb/en/contri.../ Jan 30 09:54:57 ip-172-31-14-223 mysqld_safe[10691]: 170130 09:54:57 mysqld_safe Logging to '/...'. Jan 30 09:54:57 ip-172-31-14-223 mysqld_safe[10691]: 170130 09:54:57 mysqld_safe Starting mysq...ql Jan 30 09:54:59 ip-172-31-14-223 systemd[1]: Started MariaDB database server. Hint: Some lines were ellipsized, use -l to show in full.

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

mysql_secure_installation

You'll be asked to provide root password so enter appropriate password and answer yes to all questions.

Now you'll have to create a database for oxwall please follow the instructions.

mysql -u root -p

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

CREATE DATABASE oxwall;

The above query will create a database named oxwall. For the database you can use any name you prefer in the place of oxwall. 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 'oxwall_user'@'localhost' IDENTIFIED BY 'StrongPassword';

The above query will create a user with username oxwall_user. You can use any preferred username instead of oxwall_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 oxwall.* TO 'oxwall_user'@'localhost';

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

FLUSH PRIVILEGES;

Now you can exit from MySQL prompt using following command.

\q.

We will have to install PHP. To do so run following commands as shown below.

wget https://centos7.iuscommunity.org/ius-release.rpmrpm -Uvh ius-release.rpm

Now use this command to install PHP 5.6 and required extensions.

yum install php56u php56u-pdo php56u-xml php56u-mbstring php56u-common php56u-cli php56u-mysqlnd php56u-xmlrpc php56u-mcrypt php56u-gd curl libcurl-devel -y

Now you'll have to restart your apache web server to load new components that we just configured and use following command to restart apache web server.

systemctl restart httpd.service

Downloading Oxwall

Let's download a latest version of oxwall from its official website. If in case you don't have wget and unzip package already installed on your server then you can install them using yum -y install wget unzip.

wget --no-check-certificate https://developers.oxwall.com/dl/oxwall-1.8.4.1.zip

Now you'll have to unzip this file that we just downloaded so run following command.

unzip oxwall-1.8.4.1.zip -d oxwallmv oxwall /var/www/html && sudo chown apache:apache -R /var/www/html/*

Create a Virtual Host

We will need to create a virtual host and for creating this we need to create a virtual host configuration file for Oxwall using any text editor. Here we are using nano text editor, you can install nano text editor using this command.

yum -y install nano

Next run following command to create a virtual host configuration file.

nano /etc/httpd/conf.d/oxwall.conf

Add following content to the file.

<VirtualHost *:80>
ServerName oxwall.example.com
DocumentRoot /var/www/html/oxwall
<Directory /var/www/html/oxwall>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>

Save and exit from the text editor. You'll have to restart your apache web server to load new contents and to do so run following command.

systemctl restart httpd

Configure Firewall

If in case you don't have firewalld installed on your server then you can install it using yum -y install firewalld.

You can start this firewalld service using systemctl start firewalld.

Now run these commands to change firewalld service rules as shown.

firewall-cmd --zone=public --permanent --add-service=http firewall-cmd --reload

Now disable SELinux temporarily using this command as shown below.

setenforce o

Web Access

Open your favorite web browser and visit http://yourserverIP and you'll see a webpage site settings so please provide the details.

Title: Site Name Tagline: Site description URL: http://yourserverIP/ Root directory: /var/www/html/oxwall/

Site Administrator:

Email: admin@example.com Username: admin's username Password: admin's password

Next click on Continue button then you'll be asked the database details so please enter your database details.

Host: localhost User: oxwall_user Password: yourpassword Database Name: oxwall Table prefix: ow_.

Conclusion

In this tutorial we have learned how to install oxwall on CentOS 7. You can now deploy a social networking site for free using oxwall.

Want your very own server? Get our 1GB memory, Xeon V4, 20GB SSD VPS for £10.00 / month.

View Plans