How to build and host a website for free - 1


- a multi-part series on creating your first website -

Part 1 - Your Website ... The Big Decisions

Decisions to make
Creating a site
Flat and dynamic sites
Domain names

Lots of people need to have a website now, but apart from "What will it cost?", there are two major hurdles to get over first:

- what's it all about and how do I do it?
- where do I find all the kit I need?

OK, well, we'll try and distill a ton of knowledge into a very short space here. It can't be that short, though, 'cause it took about 10 years to learn it!

Is it really free?

You can build, host and run a site entirely for free, no matter what type - even giant CMS (content management system) sites. Of course there is a catch - you most likely won't get hosting that is absolutely ideal in all respects, especially traffic bandwidth, or maybe with the right URLs (page addresses) due to restrictions, but that's all. Apart from that, it really can be done.

However, let's be honest here, the 100% free route is best for small sites without a commercial agenda. A business site needs paid hosting - but the free version is fine for many types of basic sites. And of course, you can try out your site building capabilities, and whether the host is any good, before paying up.

How it all works

1. Buy a domain name
2. Arrange hosting for site
3. Build a site on your PC, upload it to the server -OR- install website software on the server
4. Open champagne

Firstly - how to build your website (we look at how to buy a domain name further down the page).

You can create a website on your PC then upload it to an Internet server. Alternatively, you can install software on a server that does the whole lot for you. But you still have to write the content though :)

Servers are rented out by hosts, aka a web hosting provider. Although most people choose shared hosting, you can also find free hosting. There are always restrictions of some kind, so it's not optimal - but these vary between the different free hosts, so you may well be able to find one that suits.

Shared hosting is the normal type of deal, and it's where there are 50 other sites or more on the server. The less sites the better, as the server slows down with a lot of sites on there as you might expect. You can get paid hosting from $50 (£25) a year and up, but high quality hosting - which means servers limited to a maximum of 50 sites - starts around $150 (£100).

Otherwise, hosting at around $70 - $100 means maybe 200 - 300 sites per server, and free hosting and up to $60 a year may mean thousands of sites per server. For example I checked a server at GoPappy (or similar) and there appeared to be 3,400 sites on it. This is OK for many types of sites (especially HTML sites), but not ideal for business sites run off a database.

A new site doesn't need to worry too much about this, you can always move to better hosting later on. You don't lose anything in any respect by moving hosts.

Creating your website - the decisions

Firstly you need to make some decisions - 

  • is your site going to be easily classified as, for instance, a family home page, a club site, a blog, wiki, forum, or CMS (complicated stuff) type?
  • is it going to be 4 or 5 pages, or 50-plus?
  • are you going to do it all yourself or hire people?
  • is it going to be a temporary site, maybe for an event, at minimum cost?
  • do you want it to earn money in some way?
  • will it be a shopping cart / ecommerce site?

It's best to know exactly where you're headed for, otherwise things get messy later. If it's a simple site with a few pages and no complicated functions, then a standard HTML site is indicated - that's the usual type with ordinary web pages that exist on the server. You can also go this route with temporary sites for one-off events.

If it's anything else, you would probably be better off with a database-driven website like a blog or a CMS (content management system). This applies especially if you have any commercial intentions. Any site with over 50 pages should use a CMS of some kind unless there are very good reasons not to - and there are plenty of people who would take that number right down to 10 pages, including me. And maybe lower - a micro-cms is just fine for those jobs.

Flat sites

A flat site is an HTML page one, that you build on your PC with something like Kompozer or Dreamweaver. It's called 'flat' because it has static pages that don't change once they're built. You upload the pages to the server and it hands them out when requested.

Images such as photos and graphics come from the folders on the server that you uploaded them to. These folders are called directories, but they are the same thing.

The advantages of an HTML site are:

  • it's very simple
  • you can have precisely the page design you want
  • it only takes up a tiny amount of web space
  • it's fast on the server
  • badly-run servers will still be OK with a straight HTML page website

The disadvantages are:

  • someone has to hand-code it
  • to edit a page you must do it locally in a visual or code editor then upload the page
  • page code changes are not always easy
  • it has very limited functionality
  • nothing too adventurous is going to be attempted, unless you get a developer in (aka a coder or programmer)

Dynamic sites

These run on a database (DB) and the pages don't exist, they are built on demand by the web application on the server, which gets the info from a database. This is the type of site construction that many modern sites use now, and probably most websites with any kind of commercial or advanced functionality will use in the future. Even sites that look fairly simple on the surface use databases now, and some sites, like forums and ecommerce, can't really exist without database-driven functionality. Examples of this type of site are ecommerce, CMS (content management systems), and blogs.


  • no coding to do at all, even for the most complex sites, it all works out of the box
  • functions / features are added quickly with plugins
  • will handle the most complex tasks if someone did that before somewhere (a plugin will be available)
  • templates are used for page layout, and they can usually be changed
  • building a 1,000 page site is no harder than a 10-page site, the machinery generates the page structure
  • menus are created automatically
  • all links everywhere are adjusted every time you make a change, there are no dead links
  • page edits are done live online via your browser, and they go live immediately

Too many advantages to list, in fact.


  • needs more webspace than a flat site
  • needs a database, usually MySQL
  • often needs a better class of host, as servers with old and outdated software and/or poorly set up servers will work OK for HTML sites but not for dynamic ones
  • security becomes an issue because there are a lot of attack vectors for these webapps, as against HTML sites
  • there is a steep learning curve for newcomers
  • to make the templates unique to your site, you need to be able to do basic coding (HTML and CSS)

But in general you will probably know which of these two main classes of website you are going to use. A small and simple site is best created as an HTML site. Also, a site with a complex and different artwork-based layout on every page will need to be an HTML site (or one of its close variants such as PHP or ASP).

Anything else is probably better off as a dynamic site, ie a DB-driven one. This applies especially to a wiki, CMS, forum, shopping cart / ecommerce, membership, directory, or blog website as these can't really function properly without a database.

There is another class of webapps which is dynamic but doesn't use a 'real' database - the flat-file database apps. These are wikis or CMS etc that use a flat-file as the data source, this is a type of text file located among the normal web files. These apps do the job for smaller dynamic sites that don't have a big agenda, and do it very well. They have less functionality but often that isn't a problem. They are excellent for use on a poor server, or one without a database (same thing really), or one where the account management is restricted.
Examples: SkyBlueCanvas CMS, PMwiki.


Choosing a domain name

A domain is the title deed to run a website under that name. It's exactly the same situation as with a house, the title deed is the main thing - not the website, which like a house, is just something parked in that space, and that can be rebuilt if needed. But you can't do anything without the domain, and if you lost it, you'd be pretty well sunk - you'd have to start from scratch. In addition, your domain name can help or hinder you to a remarkable degree, especially for a commercial site.

For these reasons I advise you to think long and hard about your domain name. It will cost you $8 a year to rent but it's worth an inestimable amount more. Once you 'buy' it, it's yours to rent indefinitely, unless you let it lapse.

There are only two realistic choices for a commercial site - a .com domain, or the one specific to your country such as for the UK, .ca for Canada. Most sites need to buy both, but trade under the .com domain. There are other choices like .org for a non-profit, .edu for academic resources, but let's assume that this doesn't apply here.

Don't buy a cheap domain because it will cost you a lot of money (unless you're talking about a family site, then it doesn't matter). For example you should avoid a .info domain as these were sold for 60 cents at one time to dump them - and they're still cheap in places - so spammers bought millions of them to 'churn and burn', which means to put spam sites on that would probably be discovered and then banned by search engines, while the spammer built another dozen to replace it. So '.info' means 'cheap rubbish' to a search engine, unless and until proven otherwise. You don't want that, search engines are a site owner's best friend.

Domain name choices
There are two choices - a 'search term' domain or one that takes your fancy. The first type is created to score highly for searches in your chosen niche, so if you're blogging about techno-garage music you pick ''. Easy.

Trouble is, the best ones all went years ago, so you have to get a bit creative. Just choose a name that includes whatever people are searching for in your space, add something else if you have to, and break the words with hyphens. Don't get clever or people won't find you.

So for our music blogger, if the first-choice name has gone, we'd maybe pick '' or something. If you do this, then when someone searches for this material your site is placed higher in the results, as it's more likely to be relevant. And if their search is for *exactly* the words in your domain, this is called an exact-match domain, and you can get right to the top even if your site otherwise rates at #50. This is due to the search engine having to put you up there in case the searcher is looking for your specific site.

Or, you can just choose a name that sounds good to you. This can be a good branding exercise, in that you pick a name that has the vibe you want. Whatever you do, don't choose very long names, or names with tricky spelling. Keep it simple. The best marketing names are simple and easy, like Omo, the soap powder. is a mistake. Here's a good example of a successful working domain:
- because it's a search term, it's an exact match, it's easy to remember, and it sounds good for an enterprise.

Go to:
...and create a free account there. This is the best domain name registrar I know of. Their reputation and facilities are superb and you will find the best control panel in domain management there. Actually their prices are nowhere near cheap :) , but you get quality instead.

Login via the *secure* login, so that traffic between you and them is encrypted (in the browser address bar you should see https:/ and not http:/). Research the available domains and buy one or two. Set up the free WhoisGuard identity protection on them, it cuts out spam and other approaches. Do not use spoof names and addresses if you intend that your website has any value - Namecheap are to be trusted (unlike some domain registrars who unfortunately I can't name here), and they handle the business of many major concerns. Note that you should have the site operator's name and address on the website - domain ownership name protection is a different matter.

Otherwise, if you're just dipping a toe in the water, you can get a 'free domain name' at one of the free hosts. It looks like this:

It's not a real domain, it's a sub-domain, and you can't take it with you - it's just a folder on their site. But if this area isn't of much concern to you, if you are putting up a temporary site at minimum cost - it's just fine. Likewise the el cheapo domains like and so on. It's OK if you are happy that your business looks to be working out of the Cocos Keeling Islands :)

Part 2 -  website editors and building pages the easy way



Related Link



This tutorial is by volunteer editor Chris Price. In the computing area his interests include website software, web usability, and running his web business managers service.
Registered site visitors can contact Chris by clicking here.

Share this
Average: 4.2 (35 votes)
Your rating: None


by Andrius (not verified) on 5. April 2012 - 9:16  (91666)

HI guys,

I need to know how it works. I need to build a server in a small office that would hold the database of the website. In article there is just advice of choosing server somewhere else but can a small office have this all in one? that means a server, their website running on it??
thanks in advance

by chris.p on 6. April 2012 - 14:16  (91705)

If you are talking about hosting a website that is public to the web, maybe with a CMS (database-driven site), you need to use a web hosting service.

If you refer to a private CMS for use only in your office, then in that case you can use a server in the office, on the LAN. Do not try to host a website (public) yourself.

First you need to install something like XAMPP on the PC you are using as a server. Then create a database. Then install the CMS. You can use a simple one as a teamwork tool.

Normally, you will need some help if you have never used a CMS before, unless you have 50 - 100 hours spare to learn how to use it. It depends on exactly what you need it for.

by christian00 on 15. July 2010 - 14:58  (54326)

Hi, it is a nice, well-written article. Yes, it is really hard to make decisions about making a website, the domain name, the web hosting, and the whole website as well.
As I search the web for some web hosting, I came across to this site,, it is a site where people try to review and rank all web domain hoster in the web. They can help people decide on where they can put their site on with the help of their reviews. I think it can help people about the decision about the web hosting.

by Anonymous on 23. June 2010 - 11:43  (52840)

ok its alright i am on my way to building a new website immediately.

by Anonymous on 20. June 2009 - 19:52  (24184)

I have written an extensive 3 part article on creating a blog for free using The following is a link to the first article. I have added links to the other two articles at the end of the first.

Article About Blogs


by Anonymous on 18. June 2009 - 16:28  (24101)

For stuff almost free.

1. Learn Joomla - It's easy, very cool and free (and it's CMS)! And tons of free extensions!

2. Get a .com domain name - $7.50 for a year at GoDaddy (with a coupon code). Even less if you pick a different type (.net, etc.)

www DOT godaddy DOT com

3. Get hosting space at 3IX (40GB - 100GB monthly bandwidth)) for $1 a month!

www DOT (and their customer service is fast and responsive!)

Total cost for a year - about $20 bucks! Save an extra buck if you pay for your webspace 12 months up front!

by chris.p on 19. June 2009 - 1:23  (24114)

Joomla CMS is good but does not suit everyone. See comments on the Best Free CMS review. I recommend WordPress as your first 'mini' CMS site, Joomla is just too much for many people. It's also highly sensitive to server settings, whereas WP is fairly bombproof.

I cannot advise people to buy a domain name from the firm you quote as their ethics are known to be a little, um, flexible. Google for complaints about them and you'll find a cartload. I direct people to:

...because although they have a cr@p name, they are the highest-quality domain registrars around, to the best of my knowledge. Check out their control panel and APIs and you'll see what I mean. They're one of the few people I'm happy to link to.

'SoPappy' hosting is cheap but with 3,400 sites on one of the servers I checked, I think their quality level is probably not in the Rolls-Royce class.

I'm interested to see the host you link to as I didn't know them. Basically your post is just a plug for them, yes? - but that's OK, if they are a good resource. Their offer is very good - lots of webspace and bandwidth at very few $$. The big question though is how many sites per server, and what are their business ethics like. Let's assume that, for the sake of the argument, they're OK :)

In that case thanks for the tip, we'll check 'em out!


by Z (not verified) on 23. March 2011 - 14:19  (68417)


How can we figure out how many sites per server our potential hosting firm is running ?


by chris.p on 6. April 2012 - 14:27  (91707)

You do a reverse IP check to see how many domains there are on that IP - you can google for this type of web check tool.

In general, webhosting firms have one IP for each server, and everyone who does not request a 'dedicated IP' (aka 'unique IP') shares the IP of the server. So if you do a check on that IP, or on a domain name and see how many other sites are on their IP, it's fairly safe to reckon that they are all on the same server.

There could be others on there, who bought their own IP (you can rent one per year). So if there are 3,400 domains on an IP it is a reasonable assumption they are all on one server. This is not the ideal situation for SEO, you need to pay for a dedicated IP. Google assumes if you are on an IP with several thousand others then your site is not worth much to you, therefore it may not be worth much to anyone else either.

This is why you also pay for your domain name 5 years in advance, it's the same sort of logic. It just ticks more of the quality boxes with Google. You try to tick the boxes for quality, and avoid those that indicate a cheap approach and therefore possibly low quality (like a .info domain, or cheap shared hosting with x thousand others on the same box).

Google somehow have to work out who to put at the top of the search results. Number of backlinks is the main factor but there are hundreds of other contributory ones.

by Anonymous on 7. June 2009 - 16:49  (23258)

Thiw was extremely well written but left me hanging on a web host provider.
You didn't name any companys and Google didn't seem to find the best ones.
You said: "but high quality hosting - which means servers limited to a maximum of 50 sites - starts around $150 (£100)."
I can hardly afford that but can't find a single one that says that it has only
50 clients per server just to see. Did you have even one in mind? Thanks.

by chris.p on 7. June 2009 - 17:37  (23261)

OK, the trouble is, there's a huge amount of info to go into this series. It will run to at least 6 or 7 parts. Maybe I should have waited till it was finished - but that would be next year...

Hosting: the critical thing is where your site audience is. The hosting has to be in the right country, this is crucial. If your audience is in the UK it's no good being hosted in Germany, if you sell in the US, you can't host in Australia. I don't know where you are so here are some hosts for the US and UK that in theory have less than 50 sites per server:

has a plan with <50 sites per server
very cheap @ $60/year, not tested by me, will try them out though, now I know they're there.
"less sites per server"
- worth asking how many I guess.
some hosts have huge numbers, like 'SoPappy' - I saw 3,400 on one server there.

various plans, in my experience they have <50 sites / server although they don't state that - these are the fastest shared hosting servers in the UK that I know of.
also the #1 for ecommerce security.

But the majority of good hosts have 200 or 300 per server. Cheap hosts have a lot more. It can make a big difference if you have a database-driven site (CMS, ecommerce, forum) as they get bogged down.

Also we have a forum thread on free webhosts, and that info might well transfer to here, in time. Meanwhile it's at:


by Anonymous on 1. June 2009 - 4:46  (22767)

I think the title is confusing.. it was not really discussed how to build a website for free.

I feel the need to share. Basically all has been said however not the part wherein you could actually make a dynamic PHP site with mySQl database for free! It is possible!

All you need:

1. - This is a free webhosting. 300MB bandwidth that's pretty decent.
2. - Free CMS (content management system)
3. - Free Sub-domain (no domains are free! only subdomains)...

Although, I sponsor domains and hosting for good writers so you might want to send me some samples of your work at and hopefully I could sponsor you a lifetime domain. Provided that you meet the quality standads.

[ this post edited as apart from being factually incorrect, the link had nothing whatsoever to do with freeware or free web resources and was simply a spam link. I left the rest as it's amusing. See our forum topic on free web hosting, there's a lot more info there. And of course, I can't condense 10 years of website building into 1 page. I think around part 4 is where the micro-cms info comes in. chris.p ]

Gizmo's Freeware is Recruiting!

Gizmos Needs YouShare your knowledge of free software with millions of Gizmo's readers by joining our editing team.  Details here.