Websites or domains are set up on computers called hosts. A host will usually contain many domains on many high-speed computers connected to the Internet.
A domain is like a home. The home must have an address, the domain has a digital address. A private company in the U.S. called ICANN or "Internet Corporation for Assigned Names and Numbers" translate domain names from xxxx.com to (0-255).(0-255).(0-255).(0-255), a digital address.
A domain host interfaces with ICANN to set the connection to a specific domain. A sub-domain is a domain attached to a (main) domain example: www.subdomain.maindomain.com.
ALL Internet traffic passes through ICANN. There is a nominal charge for this service. It is collected from the main domain owner every 1 to 5 years. ICANN serves the entire world. Several countries have been trying unsuccessfully to gain control of ICANN through the UN.
Some home Internet providers have a hosting setup to allow subscribers to setup a personal website as a sub-domain on its primary domain free of charge.
There are free blog sites that provide space for personal web pages as a sub-domain.
There are many commercial domain-hosting services at varying costs with different services.
I started using a hosting service called Doteasy about 12 years ago because of their low cost. I currently have 3 no-cost sites and one paid site. The no-cost is for the hosting only, the domain cost is still there. Doteasy always has a first year promotion if you register a domain with them, check their site. They will auto-build you a site in minutes to get you started.
Web browsers such as IE & Firefox translate program code to a displayable page. The program code must be standardized so a page will display the same on all browsers. IE has always been a problem browser, it is getting better but still not standard. There are groups such as W3C developing and teaching the latest standards.
You can view the program code for a page by clicking "Page Source" or "Display Source" on your browser pull-down menu.
You can save most current web pages and all integral files using "Save Page As" on your browser File pull-down menu.
You must create a new sub directory to save them in.
There are many web programming languages to choose from. The most common is Hyper Text Markup Language (HTML). The latest is XHMTL 1.0 although HTML5 is being developed and is in beta test. It will combine some of the best features of some other languages. The main delay seems to be browser support.
I use a free, easy to use web programmer called HTML KIT. It in includes FTP communication and a lot of free add-ons. There is also a premium version. For miscellaneous file transferring I use the free home version of WS_FTP LE.
Web pages are programmed and tested on your local computer then up loaded using File Transfer Protocol (FTP) to your Host. Sub-domains are programmed the same as domains, they are just sent to a different directory on your host.
W3Schools Online is one of the best tutorial sites and they are part of the standards group. They train and test for most of the commonly used languages. They issue certificates at a cost.
Open Source Web Design contains hundreds of free downloadable site designs. You use one as a starting point then build your site around it.
Your hardware setup at a minimim should be a Windows computer with 4 or 8Gb of RAM memory with at least a 250Gb hard drive with a UPS power supply powering your computer, cable modem, router and any switches in the signal path.
Your cable upload speed should be at least 1mbs for a small use website. My upload speed is 5mbs.
My home webserver is a Dell980, Intel(R) QuadCore(TM), i5 CPU 3.20 GHz, 8Gb RAM and a 1Tb hard drive running Windows 7 Pro.
The most popular web hosting software is Apache. It too is completely free. I use a free bundled version of WampServer64.
WampServer includes Apache, PHP & MySQL for Windows in both 32 and 64 bit versions.
There is one fly in the ointment to be solved. All internet connections require an internet digital address.
Your Internet Service Provider assigns your modem a dynamic or static address, the address is usually dynamically assigned.
Your ISP could change it at any time, you may never notice it but that causes a real problem for anyone wanting to find your webpage.