How to host website from home PC
There are two ways to host your website from home
1. Using static IP (Require your own DSN Servers)
2. Using Dynamic DNS Solutions such as NO-IP.
Using Static IP:
If you go this way then you obviously you need to buy static IP's from your Internet Service Providers (ISP).
ISP's will cost you for this. Next you need 24x7 active internet connection as well as power supply so that your servers can remain online always. Further you have to buy a domain name from Domain Name Registrars. After that you need to assign the domain name to the system which you want to make your Web Server. Next you need two more static IPs to create your own DNS servers so that other DNS servers on Internet can know that your particular IP address (i.e., your Web Servers IP) points to your domain name.
Actually whenever some client types your domain address in his or her browser then they sends request to the DNS servers on Internet which then communicates with each other and maps the domain name to IP address and which then send back to requesting client, after that communication begins from the client PC to your server. That's how the communication works on Internet.
2. Using Dynamic DNS Solutions:
Every PC connected to Internet has its own unique IP address called as public IP address. When you get access to Internet from some ISP then you get access to Internet through a shared connection i.e., your systems IP address is different than your public IP address. In such a situation your system IP address is called as local IP address. Local IP to public IP data flow and mapping is the responsibility of the routers at your ISP. But there is one more thing that is your public IP address never remains same for long time its gets changed at each time you reset yours connection or your ISP resets your connection.
Now in such a situation if some clients PC on the internet wanted to connect to your PC ( WebServer ) then his/her PC must need know your public IP address. As I told earlier that this address is changing i.e. it is dynamic, so to handle this situation and to point some domain to your servers IP a Dynamic DNS service is the solution. Its working is so simple, it usually uses a client software which you need to install on the PC you are going to make as web server. This software establishes communication to some third party servers and those servers makes your DNS settings (Domain name and IP), even if your IP changes, with the help this software change is reflected in DNS settings. Note that in this case the DNS service you are using is provided by some third party.
There are so many problems you may face with this solution. First thing is that in certain situation you may need to allow port forwarding from you router’s settings. Second thing is that it usually can’t flow high traffic, next is it’s not secure.
Dynamic DNS Solutions are provided by following websites: