In the time where I should have been coding, my creative procrastination has led me yet again to something perhaps more useful than what I learn at uni. In my previous article I went through how to setup access to a homeserver through a dynamic dns service. This is all well and good but you are using one of their subdomains for access. What if you want to use your own top level domain name (i.e. mydomain.com) to host your website?
It’s quite easy to do. Here is one way I found to achieve it (of course there may be better ways):
1. Setup a port 80 redirect using No-IP
Most home ISP plans block incoming port 80 which is the default port for viewing web pages. To workaround this, you can setup a port 80 redirect. This means that when someone accesses your domain name, it redirects to another port such as 8080 which isn’t blocked. To do this you can use No-IP (refer to my previous article on how to install this). Simply add a host, add a domain name (in the example below myhost.hopto.org) and the port to redirect to (most likely 8080 as this is the alternate HTTP port).
2. Forward your top level domain name to the No-IP domain name
Now how this is done will depend on your domain registry management tools. I use GoDaddy so i simply open the domain name and forward it to my No-IP domain name. For example:
3. Enable masking on your top level domain name
Your domain provider should enable you to apply masking. Masking allows you to customise the title of the page and the metadata and it is important if you want your site’s address to remain in the title bar (instead of the no-ip address showing after the redirect).
4. Forward port 8080 on your router
We need to forward port 8080 so that people can access your website. To forward port 8080 on your router, have a read of the guide for your router at portforward . If you’re using Windows Firewall, you will need to make an exception as well. Read Microsoft’s guide here. You will need to allow port 8080.
5. Setup your website on IIS
Finally, to run your website you need to use something like Internet Information Services (IIS) to act as a webserver. Read this article to learn how to setup IIS and get your website up and running. And we’re done.