Monday, February 16, 2009

A Primer on Web Sites and Finding Web Hosting Providers

My thanks to contributing author Chris Jones for this latest article in the internet marketing series:

What is a Web Site?

In our last article we briefly discussed the differences between web sites and e-commerce sites and how having either one allows you to have a web presence. I want to get mildly technical for a moment so that you can better understand how a web site works, which will in turn set the stage for the remainder of this article. If you just can't bear the technicalities, feel free to skip to the next section. Everyone ready? Deep breath...here we go.

Fundamentally a web or e-commerce site is nothing more than a collection of electronic files. These files contain instructions for web servers, the software that runs your web site. Different kinds of files contain different instructions. One of the most common files is an HTML file. HTML files don't contain information for the web server, but rather for the web browser. No matter how complicated or sophisticated the web site, it always comes down to an HTML file. The trick is being able to identify the specific HTML file that you want. This is where URLs come in.

URL stands for Uniform Resource Locator and is the basis for all web-based interactions. The web was originally designed so that individual users could publish basic documents that could be requested by other users. These documents became known as "resources." A URL is constructed in such a way as to unambiguously identify any given resource on the web. It does this by providing a computer name and a path to the target resource. The computer name, also called a host name, identifies the physical computer on the Internet that contains the resource. The path tells the host computer which resource you think you want. As both an example and a shameless bit of self-promotion, consider the following URL:

http://www.blackhoundjewelry.com/store

The "http" part of the URL is called the protocol and you don't need to know much about it. Next comes the host name, "www.blackhoundjewelry.com". This allows the web browser to locate my particular computer on the Internet. The resource being requested is a document called "store." The web server on the host computer will look for a file with that name. If it finds it, it returns it to the browser, which can then interpret the HTML inside that file. If the web server can't find the requested resource, then it will return one of several different error codes back to the browser, which will then display one of its often cryptic error pages.

No matter how simple or complex the web or e-commerce site, this same basic exchange of information occurs every time you request any kind of resource on the Internet.

Now that you've got a basic understanding of the underpinnings of the web, we're ready to start talking about how you can avoid having to deal with a lot of its complexities. One key way of keeping your life simple is by hosting your web site rather than running it yourself.


What is Hosting?

Because the care-and-feeding of a web server and its hardware is a non-trivial task, at least if it's done well, most of us let someone experienced handle it. When we talk about "hosting" a website, what we're really saying is that we want some outside group to manage the hardware and software needed to keep our site available on the Web. Individuals or companies that provider this service are called "web hosting providers."

The process of locating and contracting with a web host provider doesn't need to be long or arduous, but it does require that you maintain a careful balance between two factors: current need and future growth. You may find that these two factors come into conflict from time to time, but it's essential that you live in the now while you plan for the future.



How to Find a Web Host Provider

When you first start researching web host providers, there will be a lot of information and you probably won't understand it all. Fortunately, once you learn some basic questions and how to evaluate the answers, you'll find that you can compare all of your candidate providers against a common set of criteria. We're going to get into the nuts and bolts of some web-related technologies in later articles, but here are a few critical questions that you should ask the sales department of each provider you're considering.

1. Does the vendor provide you with any service-level agreements (SLAs)? SLAs are essentially contractual agreements that the vendor makes with you regarding things like their up-time (the amount of time in a given period of time that one of their hosted sites is guaranteed to be available on the web). In all honesty, at the lower price points of hosting you probably won't find such SLAs, but most vendors will at least advertise their up times in an attempt to convince you to choose them as your web host. One way to verify their claims is by visiting the support forums and seeing the feedback from their existing customers. If you see that they voice complaints about site downtime, then you might want to look elsewhere.

2. Is technical support available 7x24? One of the reasons for a web site is so that your business can be "open" all of the time. If your web hosting provider can't commit to being available to help you when you need it, then they might not be a good choice for you. Keep in mind that customer support and technical service is usually only for troubleshooting host-related problems like hardware failures or slow performance. They typically won't help with things like website design or troubleshooting software that you install on your site yourself. In those cases you're looking at subcontracting to a web site designer, which is the topic of another article.

3. Is a domain name included in your costs? A domain name is the name by which your web site will be identified by a customer's browser. We'll save the pointers for choosing domain names for a different article, but for now you should know that domain names can often be purchased separately from the actual web hosting service. As a matter of fact you can purchase a domain name from one organization and transfer it to your own web hosting provider later. Even so, many web hosts will allow you to purchase domain names for somewhere between $9-$12 per name. If you purchase the name with your web hosting package you may be able to save some money. Since this is probably one of cheapest expenses you have, at least for a new domain name, I tend to look at this as an "all else being equal" kind of consideration.

4. Are there any limits on the amount of traffic that your web site can receive? Some providers put limits on the amount of data that can be downloaded from their sites. This is done partly for self-preservation since they don't want their sites to be used as video download sites or some such. It's also a way for them to regulate the use of their limited computer hardware. If you're running a static website with limited imagery, such as a corporate logo, then these restrictions may not be a problem for you. However, if you have a hgh-traffic site, or an e-commerce site that has lots of product imagery, then these limitations should be considered. If a site does limit your monthly traffic, they often have a tiered purchasing plan where you can buy more bandwidth for a greater monthly cost.

5. Does the provider give you email addresses? Most providers throw in some number of email addresses as part of any package. For some sites the initial number of email addresses is relatively low, but you can buy more for a higher monthly cost. Other groups give you a ridiculously large number of email addresses that you'll never use. Be sure that you're not paying a premium for a feature that you don't need. My own provider falls in that "ridiculously large" category, but the overall hosting cost is reasonable so I don't feel like I'm throwing money away. One advantage of extra email addresses is that you can create separate accounts for different aspects of your organization if you wish, even if you're the sole owner. For example, I have a dedicated email address for me as the owner of Black Hound Jewelry, but another email address to deal with things like error messages from my web site. You might want to check and see how many email auto-responders (automated replies to incoming emails) you can have. You might also want the ability to forward your email to another account.

6. What other software does the provider offer? We'll do a more thorough treatment of the typical hosting technologies in a different article, but most providers will offer you the option to install a dizzying array of software at no additional charge. You may not currently need this kind of software, particularly if all you're planning is a static web site, but this is one area where planning for future growth is a good idea. If nothing else you should keep in mind that if your provider doesn't offer additional software, then if the time comes to upgrade from a static site to an e-commerce site, you will need to do another search for another provider, but with a different set of criteria. This will take additional time so you can plan for that in your schedule.

7. Do you have any kind of resource limitations? Most providers limit the amount of disk space that you can use. This is done because you are often sharing the physical hardware for your website with other paying customers and the provider doesn't want one customer to monopolize all of the disk. There are often limitation on your use of the machine's CPU for the same reason. Customers who find that they routinely exceed these limits may be asked to move to a higher price tier. If your site has significant resource requirements, like a heavily-trafficked e-commerce cite, you should plan on speaking with your provider about getting a dedicated server.

8. What kind of access do you have to your website? You need the ability to get content to and from your website. There are a variety of software tools that allow you to do this including: FTP and SSH. If you are subcontracting your site design and development to a third party, you'll also need the ability to give them access to your site so that they can update it for you.

9. What kinds of management utilities do you have access to? Some of these management utilities are more important than others. For example, .htaccess is a file that allows you to control which visitors can see which parts of your site. Crontabs enable you to have programs run periodically against your site in order to perform useful work. For example, Black Hound Jewelry has a crontab that runs every so often to automatically update information on the site that is then used by Google to improve its search results.


Remember that the choice of web host provider can seem complex, but after you look at a few different providers you'll start seeing similarities. In many cases the decision may come down to things like reputation and cost rather than for any specific technical benefits that one provider has that another does not.

In the next "Getting on the Web" article, we'll look at the process of choosing a domain name and what it can mean for your business.

About Chris Jones
Chris Jones has over 15 years of IT experience developing web-based software for both the public and private sectors. He is the owner and artist of Black Hound Jewelry, an online retailer of custom chain maille jewelry. He has a Masters degree in Software Engineering from DePaul University in Chicago, Illinois where he is also an adjunct faculty member teaching software development at the undergraduate, graduate and professional levels. He is active in Greyhound rescue in the Chicagoland area.