In the first part of this guide we covered configuring our XAMPP installation and setting up WordPress. Now that we have those two setup and working as we want them to, we now need to ensure that our website is accessible by the rest of the world. Which unless you’re going to be using your newly created webserver for testing or development purposes, this probably going to be our primary concern.

Now the first thing we’re going to need to do is ensure that if a computer connects to our external IP requesting access to the webserver our router knows how to handle it. We achieve this using port forwarding.

Now unfortunately there are that many variations in the different methods used to enable and configure port forwarding that we’re not going to be able to cover a step by step guide on how to do this. However – there is a website out there dedicated to this, the website PortForward.com has a list of guides based on router manufacturer and models, you can find those guides here.

When you configure the port forward you are going to need to know the IP address of the webserver, to do this simply follow the steps below.

Press the Windows key and R to open the Run window.
In the Run window type CMD and press return.
This will open up a command prompt, in the command prompt type ipconfig and press return.
The information displayed contains the IP address of the webserver; this is outlined in red in the image below.

When you forward port 80 on your router you’re going to have to ensure that it’s forwarding to the IP address you got in the steps above.

Once you have configured the port forward you need to know what your external IP address is, the best way to discover this is to type what is my IP into Google and hit search. Google should show you what your external IP address is currently, alternatively you can go to http://www.whatismyip.com/ and their website will display your external IP address.

Once you have your external IP address type this into your web browser and it should direct you to your newly configured WordPress blog. If for any reason it redirects you to your routers admin page your router doesn’t support NAT Loopback which means that you can’t connect externally simply to come back internally. It’s a complex subject and one that I fear will take us way off of the topic at hand – but it does mean accessing your own website from the same connection will be difficult (Although not impossible).

However, for now if you find yourself suffering from such a problem, if you have a mobile phone with a data plan or a friend who can try to connect from their home you can test the connection that way.

Assuming that typing your IP address into a web browser does indeed direct you to your website as planned. The next thing we then need to do is get a domain name that we will use to connect to the website, instead of using our IP address (which is likely to change unless you pay extra for a static IP) and for this, we have two options.

The Free Option:

There are DynamicDNS providers out there offer a free subdomain option to allow home users and non-commercial entities to have a web address that they can use which is dynamically kept up to date with your latest IP address. The down side to these services is that you are forced to use a subdomain provided by them.

The easiest way to explain what a subdomain is would be to say it is the third level in a domain names topology. For example, you have the top-level domain (TLD) which is a .com, .co.uk and .net. Then you have your second level domain, which is the part we type in before the top level, if we use google.com as an example we have Google that is the second level domain and then .com, which is the top level. Any part of a domain that comes after those parts (working from right to left) is classed as a subdomain, so for example mail.google.com is a subdomain of google.com.

Therefore, with a free subdomain service you will generally get yourchoiceofnamehere.theirdomain.com as your web address.

Free Dynamic DNS providers are becoming rarer and rarer, however one that I have used in the past is www.no-ip.com who still offer a free Dynamic DNS service for the home users that comes with a free subdomain.

To get started with No-IP.com simply sign up here and create your desired subdomain, once you’ve registered with them you can download their application and follow the instructions to run it on your webserver. Their application constantly monitors your external IP address and if it changes, it will update your subdomain to ensure that you and others can still get to your website without having to worry about IP changes.

The Not-So-Free Option:

If you have your own domain name and you want to point it to your new website you could just forward it to your current IP via your domain registrars control panel.

However, it can take 24 hours for this change to update and for your website to be accessible. If you take into consideration that your IP address will generally change within 7 days if it’s dynamic this means that your website will be down for at least 24 hours every time your IP changes (which is unacceptable from a webmasters perspective).

So the only real option would be to sign up to use your own domain through a Dynamic DNS provider, this generally costs about £20 a year per domain name that you wish to use. This enables you to point your domain name to the Dynamic DNS providers name servers, which you then keep up-to-date with your webservers IP address via a piece of software that you run on your webserver.

This is a very valid option and providing you only have one domain name it’s generally an inexpensive option, but if like myself you have many domain names it can be quite expensive if you’re paying £20 a year per domain name.

Whichever option you choose you should now have your very own personal website, hosted from home and I hope that this guide has unlocked an endless set of options for all you would-be webmasters out there.