Setting up a personal home web server
More and more people are making their online presence felt by blogging. Many people have made article writing as a extra source of income. If you are an expert on certain domain you can share your knowledge by writing useful guides on your personal website. In this article I am going to show show you how to setup a webserver on the home PC and access it using a name (e.g http://joe.webhop.com).
In order to start blogging you no longer have to be an expert on HTML or other web programming technologies. With the freely available open source software you can easily create beautiful websites, and host them on a personal web server running on your home PC. You can also share your site with the world over the Internet. In this article I am going to show you how to host a web server at home.
While hosting a website from home can not be a permanent solution but it will get you started. It will also let you test the waters first before you dive into creating a niche website. Once you have a good website you can transfer it to a domain hosting server.
Why Do I need a Personal Web Server
In addition to creating niche blog, there are many uses of hosting a personal home web server at home which renders web pages across machines in the connected home.
- Hosting a mini site with image galleries. Useful to see your pictures on any device with a web browser.
- Privately share pictures with friends without having to upload pictures on the Internet.
- Create family , personal web pages or blogs and share privately with friends.
How to setup personal web server
A web server can be hosted on a windows or Linux machine. There several software packages for web server. Some of them are free. Most popular among them is Apache webserver which is open source. It’s also a good idea to add MySQL and PHP for for a fairly complete web hosting package.
Apache,MySQL and PHP packages can be downloaded and individuality. But it’s best to download and install a package which bundles all three in a matching bundle. One of such packages is wamp server for windows. Wamp stands for Windows Apache, MySQL and PHP. There’s a package for Linux known as lamp server.
Download wamp server here. Install using downloaded exe file. Choose c:\wamp as the installation directory. Installtion process will create C\wamp\www directory which is the root directory for your website. Test your web server by entering “http://localhost” on the browser. You will see the default webpage created by wamp. Delete contents of www directory,create a file index.html and copy paste the following html code. Refresh your browser to see your new page.
<html>
<head>
<title>My first html page</title>
</head>
<body>
<p>My first html page is hosted on my personal web server.
</body>
</html>
How to access home web server from the Internet
Now you have your personal Apache,PHP and MySQL webserver, you may want to access it from anywhere over the net. You need to know IP address of the machine running the web server. Within your home network you can access your webserver using host machine IP address (e.g. http://192.168.1.109). In order to access your website from Internet you have to use the public IP address assigned by the ISP.
If you have a router connected to cable or dsl modem, you can obtain the public IP address from it. If you try access you web server using this IP address you may be presented with nothing or your router admin page (if outside access is permitted in the router configuration).
To access the webserver from Internet public IP address the router needs to forward the http request to your web server machine. This can be done forwarding the port 80 on the router to the web-server machine IP address. Most routers support port forwarding but you have to configure it.
First assign a private static address to the webserver. Assuming that router IP address is 192.168.1.1, then assign webserver something like 192.168.1.10,mask 255.255.255.0,gateway 192.168.1.1,dns 192.168.1.1 to the webserver machine. This is done from Control Panel->Network Connections->Local Area Connection->Properties->Internet Protocol->Properties.

internet-protocol-properties-assign-static-ip-address
Configure the router to forward port 80 to IP address 192.168.1.10. Can can now access your website using routers public side IP address.

How to access home web server using name instead of an IP address.
Most people do not get static IP address for ISP. It’s assigned dynamically through DHCP. So this IP address changes from time. It’s also difficult to remember the IP address.
Its possible to give home webserver a name access it using this name. Dynamic DNS is a free service and is supported by many home routers. Dynamic DNS maps your IP address to a named address. For example you can access your webserver using name like http://joe.webhop.com instead of using http://10.45.x.y. Dynamic DNS maps the name “joe.webhop.com” to IP adress 10.45.x.y.

In order to maintain mapping of name to the current router IP address, router notifies the Dynamic DNS host whenever there is a change in the IP address.
To setup Dynamic DNS check the Dynamic DNS service that is supported by your router. You need to sign up for free dynamic dns account. http://DynDNS.com is a popular free Dynamic DNS provider and is widely supported by home routers. You will be offered to select name and domain. For example you can select joe.webhop.com.Enter Dynamic DNS service user name ,password and host name joe in your router Setup->DDNS page. Save the settings and enjoy your web address http://joe.webhop.com.









