HOW TO PUBLISH A WEBSITE
Generally there are two things you would want when you set up your own website:
1. A unique web address (domain name) - optional
In order to get a custom domain name, most hosting companies can also lease you a site name (e.g. http://www.EZGenerator.com). Here is just one company from 1000's who do this - https://core.hostdime.com/purchasedomain/index domain leases are around $15/yr at the moment the $10-20 range is typical don't pay more than that. You can lease a domain from any company you like and then use it with any website host company you like. Mix and match is fine.
Once you have the domain name, or at the time of purchase, you will need to tell you host company what it is and they or you will make it visible to the Internet by adding it to their name server/s. What happens is that the host company tells the Internet web-address indexing sites, that if you are looking for http://www.ezgenerator.com (for example), to get it from their servers. This means that you will need a website host (see below) since their name-servers are what you use at this step.
2. A host to upload your website site to - must have
There are many free web hosting companies but most do not allow you to have a completely customized name. You will end up with something like http://www.freehost.com/Ezgenerator rather than http://www.ezgenerator.com. This may or may not matter to you. The free hosts can be a great way to put your toe in the water and see if you want to get into this website malarkey properly Once you get serious you will want to secure your own server space and for that you can browse this thread for host companies. These services generally offer more disk space on their servers for you to upload your content to, faster download speeds for your visitors, and more advanced back-office options (web shops, PHP stuff etc).
I have been using Hasweb for about 8 years for my personal site/s.
The cheapest plan is:
500 GB of Disk Space
Host 1 domain
They are located in the USA and the 'no-frills' arm of http://www.hostdime.com.
The on-line/email based service has been excellent, uptime and speed likewise very good and certainly good enough for most personal website activities.
Feel free to add your favorite hosting companies to this list