The most basic thing that you need to know about when it comes to programming web sites is how a user on a computer somewhere in the world even accesses your web page. When a computer is connected to the internet, wherever it connects tells it the location of a few places where it can look up addresses. The complicated name for this is DNS, but think of it like this: You are looking for a business and someone hands you a phone book (if you even know what that is). You now have a list of addresses and you can find the location of the business you are looking for.
On your computer, even though you are connected to the internet, when you want to find a website, like teechmi.com, your computer or device does not know how to get to the correct location. In this case instead of a business, you are looking for a computer somewhere on the internet that has the data for teechmi.com. This is called a web server. However, your internet connection usually provides you a few “name servers” (aka phone books that tell your computer how to get the web site you are looking for. Once your computer knows the address, it sends the request and the various pipes that your request travels down is up to the “internet” and not your computer.
That’s how a web site is retrieved, but what does it take to hold the data for a website? First off, you need a web server. This not only has all of the web pages that you have created, but some sort of software that provides those web pages when a request is made for them.
The two most popular web server software found in use today are:
Internet Information Services (IIS) which is part of certain versions of Windows software
Apache which is a free open source web server
Once you have one of these software packages running and some web pages your computer can be called a web server (well, as long as it’s connected to the web!). We will get into more details of how to make it so your web server can be found on the internet in the future. That is about all you need to start for this lesson, helping you understand how a computer gets to a web page.