Building a Website Step-by-Step

Content  |  Physical Structure  |  Logical structure  | Design  |  Maintenance

    Here are a few things to think of. It is the experience from real cases back in 1997, but still valid. It is meant as advice for any website constructed from scratch.


I assume that you already have some (hopefully) interesting material to present on the web. With no content, nobody will read even the most elegant website.

Physical structure and filenames

I assume that you intend to produce static webpages. If you intend to produce dynamic webpages generated by a database, you need to get that system working before you proceed.

Now you need to decide the directory and file names. This is called the physical structure.

File and directory names should be self-explanatory, but not too long. The directory tree should not be too deep, usually max three levels below the root level.

If you restructure an existing site, existing directories can be renamed using Microsoft Front Page, which automatically reindexes existing relative links. But changing filenames causes trouble for those users who already have links to individual pages, so avoid it if possible. 

You must understand the difference between relative ( ../doc.htm ) and absolute ( ) links in a web structure. Which kind you use, is a matter of taste and needs. I use relative links. 

Unix servers treat filenames with uppercase and lowercase letters as different files. NT servers treat them as same file name. If you are not sure, I recommend using lowercase letters for all file names. 

The Netscape browser distinguishes between uppercase and lowercase URL names. The Internet Explorer browser is more tolerant, and treats uppercase and lowercase as the same. 

Start file 

It is necessary to have a start file in the root directory. It is also recommended to have a start file serving as menu text in the major directories, thus shortening the URL. If you want to prevent file browsing by the users, you can place a start file (which can be blank) in every other directory. 

If the server runs Unix, the start file must be named index.html. On Unix, index.htm and default.htm do not work. 

If the server runs NT, the start file can be named either index.html or default.htm. If a directory contains both files, an NT system usually gives priority to default.htm. This setting can be changed in the Internet Information Server (IIS). I recommend sticking to index.html also on NT. But there is no need for both start files unless you think that users have made links or bookmarks to both filenames. 

Logical structure

The logical structure is what you often see in sitemaps, that some sites have. It has nothing to do with the physical structure. You must have a menu system that is easy to read, logical and easy to navigate. 

Design and readability

The layout is important. It must look good. Not too much graphics or distracting elements. Text should never be allowed to spread across the whole screen. I achieve this by using tables, but an easy alternative is using the code <BLOCKQUOTE>. Avoid long texts without illustrations. Make sure that the documents conform to any corporate and copyright rules and standards. Consider using CSS style sheets to standardise your layout.

Test internal and external links. Make users try it and see if they find what they are looking for. Then you are ready to present your work to the world. 


It is assumed that you so far have developed your webpages on a local hard disk or network unit. If you are replacing an old structure, make a back up copy of the old one. Then copy the new structure to the live directory on the web server. Notify users about possible changed or new URLs so that links and bookmarks may be changed. 


A website must be regularly maintained by somebody inside the organisation. It's a deadly sin to hire a consultant to make a nice website that is never updated and maybe not even offers email addresses, phone or fax numbers to contact persons. 

After the buildup of the site, it's important to decide who is responsible for updating the information. It can be several people, that are responsible for different sections. A documentation of what is done and why is important for the maintenance. 

    A good website must have: 
    • Content 
    • Logical structure 
    • Good design 
    • Maintenance 
Per Åkesson, October 1997
revised 1999