This guide is intended to help act as a useful, quick guide for installing and configuring more than one WordPress server on a single server without using the WordPress MultiSite feature.

Step 1:

Copy the WordPress install into two separate directories under the /var/www/html directory.

Step 2:

Follow the 5 minute install instructions for each WordPress single site you wish to install.
Note: Be sure to set up two differently named databases and to reference those databases within the wp-config.php

Step 3:

After completing the 5 minute installs, pointing to separate databases, test that the WordPress pages load appropriately.
eg: http://(your domain or IP)/site1, and http://(your domain or IP)/site2, etc

Step 4:

Next you’ll want to run the following commands:

cd /etc/apache2/sites-available

This will put you into the sites-available directory.
There should already be some default templates.
000-default.conf is the default template for websites and applies to port 80 http only.
default-ssl.conf is the default template for websites that use https on port 443.

We’ll need to create our own conf files to use for the two sites in order for them to behave properly with separate domains and SSLs.

Step 5: (Repeat per WordPress site)

Note: You should already be within the /etc/apache2/sites-available directory at this point.
Also Note: This example is using the site as a reference with /var/www/html/ being the directory that contains the WordPress install.

Copy the default-ssl.conf file by running the command:

sudo cp default-ssl.conf

Then you’ll want to open the 000-default.conf file and copy the text off to the side:

nano 000-default.conf

Copy the text including and within the tags:

<VirtualHost *:80>

Next, we’ll need to edit the file:
The first thing we’ll want to do is paste in the text from the 000-default.conf file at the very top.
This is BEFORE the text within the file that looks something like below:

<IfModule mod_ssl.c>
  <VirtualHost _default_:443>

Next, modify the text within this file.
You’ll need to configure the following variables within the portion of the file first.
Note: ServerAlias wasn’t there when I was testing this, but simply add it if it isn’t within the text.
Also Note: the ServerName uses if you want to set up, etc then you’ll want to use test. instead of www.

DocumentRoot /var/www/html/

Next, modify the text within the area.
First we’ll want to change:

<VirtualHost _default_:443>


<VirtualHost *>

I’m not totally sure if this step is really necessary but it doesn’t hurt anything for sure.

Then, we’ll want to modify again under the now: section.

DocumentRoot /var/www/html/

Save the file.
Run the command:

sudo a2ensite

Step 6:

Once you’ve set up the conf files for all of your sites.
Run the commands:

sudo service apache2 reload
sudo service apache2 restart

There should hopefully be no errors, but if you notice any try to fix them and try again.

Step 7:

Your DNS server should have the records already pointing at this server.
If not, you can simply modify your own computer’s HOSTS file and have it point to the IP address of the server.
Test the domain such as and it should connect to the server with apache, and apache will point it to the correct virtual host entry and directory and load.

You’ll want to test each of the domains you’ve set up.

Step 8:

You’ll next want to log into your WordPress admin panels for each site.
Make sure you go into Settings and change the URL for the site to use the domain name for it.
This step WILL require a DNS server actually pointing to the domain if you wish to use this anywhere without a modified HOSTS file pointing to this server.

Step 9:

Setting up SSL
You should be able to follow the guide I wrote here:
for setting up a Self Signed SSL Certificate for the server.

Using a purchased SSL Certificate isn’t really much of a different process. The only difference is that you already have your public, private and optional chain files.

However, when using this guide, note that you will not be editing the default-ssl.conf file, instead you’ll be editing the file and you’ll want to modify the portion within the … area.