Friday, October 16, 2009

How to Choose a Web Host

by Christopher Heng,



What are some of the things you should look for when choosing a web host? The criteria for choosing a free web host and a commercial web hosting solution are slightly different although they do overlap. Since thesitewizard.com caters to people who might be looking for either of these types of hosting, I will deal with each of these in turn. If you are only interested in one of these types, you can simply skip to the appropriate section. I have written these sections to be as independant of the other as possible.


Choosing a Free Web Host




  1. Advertising


    Most free web hosts impose advertising on your website. This is done to cover the costs of providing your site the free web space and associated services. Some hosts require you to place a banner on your pages, others display a window that pops up everytime a page on your site loads, while still others impose an advertising frame on your site. There is really no hard and fast rule which is to be preferred: some people hate a pop-up window, other webmasters dislike having to stuff banner codes onto their pages, and many people cannot stand an advertising frame (which may cause problems when you submit your website to search engines). Whichever method is used, check that you're comfortable with the method.


    Note that free web hosts without forced advertisements aren't necessarily good news. Without a viable means to recover the costs of running their server, many of them close with alarming frequency. Amount of web space




  2. Does it have enough space for your needs? If you envisage that you will expand your site eventually, you might want to cater for future expansion. Most sites use less than 5MB of web space. Indeed, at one time, one of my other web sites, thefreecountry.com, used less than 5MB of space although it had about 150 pages on the site. Your needs will vary, depending on how many pictures your pages use, whether you need sound files, video clips, etc.




  3. FTP access


    (In case you're wondering: What is FTP?)


    Some free hosting providers only allow you to design your page with their online builder. While this is useful for beginners, do you have the option to expand later when you become experienced and their online page builder does not have the facility you need? FTP access, or at the very least, the ability to upload your pages by email or browser, is needed. Personally, I feel FTP access is mandatory, except for the most trivial site.




  4. File type and size limitations


    Watch out for these. Some free hosts impose a maximum size on each of the files you upload (including one with a low of 200KB). Other sites restrict the file types you can upload to HTML and GIF/JPG files. If your needs are different, eg, if you want to distribute your own programs on your pages, you will have to look elsewhere.




  5. Reliability and speed of access


    This is extremely important. A site that is frequently down will lose a lot of visitors. If someone finds your site on the search engine, and he tries to access it but find that it is down, he'll simply go down the list to find another site. Slow access is also very frustrating for visitors (and for you too, when you upload your site). How do you know if a host is reliable or fast? If you can't get feedback from anyone, one way is to try it out yourself over a period of time, both during peak as well as non-peak hours. After all, it is free, so you can always experiment with it.




  6. Perl and PHP


    (In case you're wondering: What is PHP and Perl?)


    This is not particularly crucial nowadays for a free web host, since there are so many free script hosting services available that provide counters, search engines, forms, polls, mailing lists, etc, without requiring you to dabble with Perl or PHP scripts.


    However if you really want to do it yourself, with the minimum of advertising banners from these free providers, you will need either PHP or Perl access. Note that it is not enough to know they provide PHP or Perl access: you need to know the kind of environment your scripts run under: is it so restrictive that they are of no earthly use? For PHP scripts, does your web host allow you to use the mail() function? For Perl scripts, do you have access to sendmail or its workalike?




  7. Bandwidth allotment


    Nowadays, many free web hosts impose a limit on the amount of traffic your website can use per day and per month. This means that if the pages (and graphic images) on your site is loaded by visitors beyond a certain number of times per day (or per month), the web host will disable your web site (or perhaps send you a bill). It is difficult to recommend a specific minimum amount of bandwidth, since it depends on how you design your site, your target audience, and the number of visitors you're able to attract to your site. In general, 100MB traffic per month is too little for anything other than your personal home page and 1-3GB traffic per month is usually adequate for a simple site just starting out. Your mileage, however, will vary.




Choosing a Commercial Web Host




  1. Reliability and speed of access


    Not only should the web host be reliable and fast, it should guarantee its uptime (the time when it is functional). Look for a minimum uptime of 99%. In fact, even 99% is actually too low - it really should be 99.5% or higher. The host should provide some sort of refund (eg prorated refund or discount) if it falls below that figure. Note though that guarantees are often hard to enforce from your end - the host usually requires all sorts of documentation. However, without that guarantee, the web host will have little incentive to ensure that its servers are running all the time.




  2. Data Transfer (Traffic/Bandwidth)


    Data transfer (sometimes loosely referred to as "traffic" or "bandwidth") is the amount of bytes transferred from your site to visitors when they browse your site.


    Don't believe any commercial web host that advertises "unlimited bandwidth". The host has to pay for the bandwidth, and if you consume a lot of it, they will not silently bear your costs. Many high bandwidth websites have found this out the hard way when they suddenly receive an exhorbitant bill for having "exceeded" the "unlimited bandwidth". Always look for details on how much traffic the package allows. I personally always stay clear of any host that advertises "unlimited transfer", even if the exact amount is specified somewhere else (sometimes buried in their policy statements). Usually you will find that they redefine "unlimited" to be limited in some way.


    In addition, while bandwidth provided is something you should always check, do not be unduly swayed by promises of incredibly huge amounts of bandwidth. Chances are that your website will never be able to use that amount because it will hit other limits, namely resource limits. For more details, see the article The Fine Print in Web Hosting: Resource Usage Limits.


    To give you a rough idea of the typical traffic requirements of a website, most new sites that are not software archives or the like use less than 3 GB of bandwidth per month. Your traffic requirements will grow over time, as your site becomes more well-known (and well-linked), so you will need to also check their policy for overages: is there a published charge per GB over the allowed bandwidth? Is the charge made according to actual usage or are you expected to pre-pay for a potential overage? It is better not to go for hosts that expect you to prepay for overages, since it is very hard to forsee when your site will exceed its bandwidth and by how much.




  3. Disk space


    For the same reason as bandwidth, watch out also for those "unlimited disk space" schemes. Most sites need less than 10 MB of web space, so even if you are provided with a host that tempts you with 200 MB or 500 MB (or "unlimited space"), be aware that you are unlikely to use that space, so don't let the 500 MB space be too big a factor in your consideration when comparing with other web hosts. The hosting company is also aware of that, which is why they feel free to offer you that as a means of enticing you to host there. As a rough gauge, thefreecountry.com, which had about 150 pages when this article was first written, used less than 5 MB for its pages and associated files.




  4. Technical support


    Does its technical support function 24 hours a day, 7 days a week (often abbreviated 24/7), all year around? Note that I will not accept a host which does not have staff working on weekends or public holidays. You will be surprised at how often things go wrong at the most inconvenient of times. Incidentally, just because a host advertises that it has 24/7 support does not necessarily mean that it really has that kind of support. Test them out by emailing at midnight and on Saturday nights, Sunday mornings, etc. Check out how long they take to respond. Besides speed of responses, check to see if they are technically competent. You wouldn't want to sign up for a host that is run by a bunch of salesmen who only know how to sell and not fix problems.




  5. FTP, PHP, Perl, SSI, .htaccess, telnet, SSH, MySQL, crontabs


    If you are paying for a site, you really should make sure you have all of these.


    Note that some commercial hosts do not allow you to install PHP or Perl scripts ("What is PHP and Perl?") without their approval. This is not desirable since it means that you have to wait for them before you can implement a feature on your site. ".htaccess" is needed if you are to do things like customize your error pages (pages that display when, say, a user requests for a non-existent page on your site) or to protect your site in various ways (such as to prevent bandwidth theft and hotlinking, etc).



    Telnet or SSH access is useful for certain things, including testing certain scripts (programs), maintaining databases, etc. MySQL is needed if you want to run a blog or a content management system. Cron is a type of program scheduler that lets you run programs at certain times of the day (eg, once a day). Check to see if these facilities are provided.




  6. SSL (secure server), Shopping Cart


    If you are planning on doing any sort of business through your website, you might want to look out to see if the host provides these facilities. These facilities normally involve a higher priced package or additional charges. The main thing is to check to see if they are available at all before you commit to the host. You will definitely need SSL if you want to collect credit card payments on your site.




  7. Email, Autoresponders, POP3, Mail Forwarding



    If you have your own site, you would probably want to have email addresses at your own domain, like sales@yourdomain.com, etc. Does the host provide this with the package? Does it allow you to have a catch-all email account that causes any email address at your domain to be routed to you? Can you set an email address to automatically reply to the sender with a preset message (called an autoresponder)? Can you retrieve your mail with your email software? Can it be automatically forwarded to your current email address?




  8. Control Panel


    This is called various names by different hosts, but essentially, they all allow you to manage different aspects of your web account yourself. Typically, and at the very minimum, it should allow you to do things like add, delete, and manage your email addresses, and change passwords for your account. I would not go for a host where I have to go through their technical support each time I want to change a password or add/delete an email account. Such chores are common maintenance chores that every webmaster performs time and time again, and it would be a great hassle if you had to wait for their technical support to make the changes for you.




  9. Multiple Domain Hosting and Subdomains


    For those who are thinking of selling web space or having multiple domains or subdomains hosted in your account, you should look to see if they provide this, and the amount extra that they charge for this (whether it is a one-time or monthly charge, etc).




  10. Server


    Is the type of operating system and server important? Whether you think so or not on the theoretical level, there are a few practical reasons for looking out for the type of server.


    In general, if you want to use things like write/use ASP programs, you have no choice but to look for a Windows server.


    Otherwise my preference is to sign up for accounts using the often cheaper, more stable and feature-laden Unix systems running the Apache server. In fact, if dynamically generated pages that can access databases (etc) is what you want, you can always use the more portable (and popular) PHP instead of tying yourself down to ASP. Another reason to prefer Unix-based web hosts (which include web hosts using systems like Linux, FreeBSD, OpenBSD, Solaris, etc) using the Apache web server is that these servers allow you to configure a lot of facilities that you typically need on your site (error pages, protecting your images, blocking email harvesters, blocking IP addresses, etc) without having to ask your web host to implement them. Knowledge about configuring Apache servers is also widely available, and can be found on thesitewizard.com's Configuring Apache and .htaccess pages as well.




  11. Price


    I was actually hesitant to list this, but I guess it's futile not to. However, I would caution that while price is always a factor, you should realise that you often get what you pay for, although it's not necessarily true that the most expensive hosts are the best.




  12. Monthly/Quarterly/Annual Payment Plans


    Most web hosts allow you to select an annual payment plan that gives you a cheaper rate than if you were to pay monthly. My current personal preference is to pay monthly with all new web hosts until I'm assured of their reliability and honesty. Paying monthly allows me to switch web hosts quickly when I find that the current host does not meet my requirements: this way, I'm not tied down to a bad web host because I have prepaid for an entire year. I do this even if the new web host guarantees that they will refund the balance if I'm dissatisfied, since at the point I sign up, I have no assurance that they will honour their guarantee. Later (usually after many months or even more than a year), when I'm satisfied with the host, I often change payment plans to the discounted annual plans.




  13. Resellers?


    Not all hosting companies own or lease their own web servers. Some of them are actually resellers for some other hosting company. The disadvantage of using a reseller is the possibility that you are dealing with people who don't know much about the system they are selling and who take longer to help you (they have to transmit your technical support request to the actual hosting company for it to be acted upon). However, this also depends on both the reseller and the underlying hosting company. It is thus wise not to rule out all resellers; there are a number of reliable and fast ones who are actually quite good and cheap. In fact, a number of resellers sell the same packages cheaper than their original hosting company. If you find out that a particular company is a reseller, you will need to investigate both the reseller and the real hosting company.




  14. International


    If you don't stay in the USA, you have the option of hosting your site with some local provider. The advantage here is the ease of dealing with them (they are after all easily accessible by phone call or a visit), your familiarity with the local laws and easy recourse to those laws should it be necessary. It should be your choice if your target audience is local (eg a local fast food delivery service). On the other hand, hosting it in USA has the advantage of faster access for what is probably the largest number of your overseas visitors (particularly if you have an English-speaking audience). You also have a large number of hosting companies to choose from, and as a result, cheaper prices too.




  15. Others' Reviews


    You should make it a point to check out what others have to say about the web host. Some of the places you can do this include:



    Don't skip this step, or you might find yourself being suckered by a host that everyone else is steering clear of.




The Myth of the Perfect Commercial Host


In general, I doubt that there are any "perfect" web hosting companies around. Note that even if you are prepared to pay a huge price for your hosting needs, it does not guarantee that your host is any good. This is an interesting industry where a high price does not necessarily yield quality hosting and support.


On the other hand, one thing you can probably be sure of is that you will not get top-notched support if you only pay (say) $5 a month. At that price, which company can afford to hire enough good help to cater to all its users?


Like me, you'll probably end up settling for a trade-off between price, reliability and features that you're willing to live with.

Friday, May 29, 2009

The Price of Freedom

Why yoursite.com? If you care about things you publish on the Internet and respect your readers, these two steps are absolutely necessary:
  • Buy your own second-level domain name, e.g. yoursite.com, without anything in front of and behind it (www. doesn’t count). Once registered, the domain name becomes your property as long as you pay the annual fee to the registrar. This is your permanent address: if you don’t like how your pages are hosted, you can move them to another hosting company at any time and all page addresses (URLs) remain the same. Nothing changes for your site visitors. If you don’t like how your registrar maintains your domain name for you - take it to another registrar, it won’t break anything either.

    If you don’t own one, you are fully dependent on the company that gives you the address (e.g. yoursubdomain.hostcompany.com or hostcompany.com/yourdir/). Should something go wrong or you are no longer affiliated with the company (either will happen, sooner or later) - and you lose all your visitors and popularity because your pages no longer have URLs they used to be at; your work is wasted; your readers cannot find the pages they want.

  • Host your site with a commercial hosting company (with your own domain, you won’t find free hosting anyway). Since you pay, they are eager to keep it up 24x7 and maintain the server in order. If you are not satisfied, there are scores of other hosting companies to choose from; a move is easy.
Yes, that means you are paying a regular fee from now on, but this is the only way to be independent and have full control over your site.

No, there is no way around it. The most common pitfall is domain redirection schemes: you host your site wherever you can (usually for free), register your own domain name and pay a small fee to a company that makes your site appear to have your domain name. Unfortunately, no redirection technology works exactly the way a normal hosting does. At best, it will lead to unpleasant surprises and technical problems to some of your visitors and your site will never be indexed correctly by the Internet search engines (that alone is enough to not use redirection).

No, there is no free lunch. These services intrinsically cost money. There is a company that offers second-level domain names for free, supported with massive advertising, but make no mistake - they own it, not you, and it’s indeed they who dictate the rules. Why waste time. Pay a moderate amount and get the real thing. It’s more than affordable today (domain name and decent hosting costs $100-150/year; if you get into temporary financial straits later in your life, you can always switch to free hosting with redirection while keeping your domain name, $15-25/year). Have respect for your readers and for yourself. Enough said.

Redirecting from Old URLs

Sadly, by the time one realizes all this, usually he or she already has pages published on URLs that somebody else controls. To handle it with the least loss, you need to replace every HTML page at your old URL with a custom redirection page pointing at exactly the same page on your new permanent site (not just to the site main page). Make sure these redirection pages at the old location live as long as possible (one year at the very least, several years better).

Feel free to take my example of redirection page as a template. Note that you need to edit URL in three places in the page source to replace each of your pages. It didn’t take me long to replace a hundred pages on my site by hand; if you know Perl, you can write a script and publish it here. I also replaced every image file on my old site with a small image-notice (JPEG or GIF) in case somebody linked to images directly or used them on their pages. Still, you’re creating small inconveniences to a lot of people (including yourself) and you’d better set your site up the right way as soon as possible.


By now I’ve dealt with six hosts (four of them commercial) and four registrars, so it’s time to sum up this little experience.

Where To Look for Them

Every top-level domain (TLD) authority has a list of accredited registrars, i.e. companies that can register and maintain domain name for you. The authority for .com, .org and .net TLD is ICANN, but InterNIC site provides a better organized list of registrars. For other TLDs, such as two-letter country code ones, look for the corresponding local authority. For instance, for .no - Norway - it is NORID with its own list of registrars for .no domain and registration rules, which are rather restrictive comparing to "anyone can" policy for .com, .org and .net.

Looking for a good domain name may take time. Most common words and short domain names have already been taken.

Web site hosting is a different service. Firms offering it are in abundance (just look around) and it is very competitive, because it takes little effort to move your site elsewhere in the world. Look for "own domain name" option in the hosting plans. Let me name one directory where you can search through many providers and plans: HostSearch. Or, if you prefer a listing less obscured by business front-ends and greed for customers, here is a list of some of the world’s largest physical hosting providers from Netcraft.

Almost always, you can register a domain name when you sign up for a hosting plan. Even if the hosting company is not a registrar, they will handle it for you through another firm that is a registrar. Some companies offer hosting and are registrars at the same time, but that’s not necessarily an advantage.

Lessons Learned

Major
  • Everybody screams about 24x7 uptime. Only few have it.

  • I haven’t found an ideal hosting company. There always was something wrong.

  • Custom configuration is something a hosting company won’t do (not for small and mid-sized accounts, at least). Ask as many questions as you can up front. If it isn’t going to work exactly the way you need, look for another company. Don’t sign up for a plan with non-refundable setup fee: free trial is really necessary. Stick to ones using mainstream software (e.g. UNIX/Apache and not Microsoft something): it has less chance to cause problems.
    A company that doesn’t have extensive technical information about user accounts on its site (and I do mean extensive, i.e. hundreds of pages), usually sucks in other ways, too.

  • You get what you pay for, or less than that (but never more). Note that the cheapest hosting plans have to make up money one way or another. Sometimes it can be found in fine print, sometimes you will discover it after you sign up. It’s more expensive to be stingy. Providers that skimp on their connectivity and computer resources are the worst ones.
    One way to save is to provide name-based hosting (many sites on a single IP address): your site won’t work with older HTTP 1.0 clients.
Minor points
  • Never pay attention to that special expiring in two days. There are so many other firms around that chances are, you will find a better offer the next day. Just do your work at the pace you are comfortable with.

  • If you want to please users who have high-speed connection (> 1Mbps), host in the same geographical area or at least in the same part of the world where they reside. Throughput for Web and FTP traffic is ultimately limited by the physical distance to the host. A very large available bandwidth alone does not guarantee the fastest download speed (at least not with the present TCP implementations).

    Most people are using slower connections, so this is actually not very important. Still, local hosting improves response times and consistency: there are fewer clogged networks to go through.

  • It may be easier to register under .com/.org/.net TLD than under a national domain, because there is stronger competition among registrars for the former ones and no bureaucratic restrictions apply.

  • My domain name - vad1.com - actually turned out to be a bad choice, for two reasons:
    • The numeral 1 and letter l look similar in some fonts and can be confused when somebody tries to type my domain name.
    • When I have to spell my domain name over phone (vee-ei-dee-one-dot-com), it’s confusing what one means: vadone.com, or what?
    Pick a domain name that can be spelled easily and unambiguously. Too bad, I’ve already seen a few clones of my mistake :-).

My Experience with Individual Firms

has been a series of unpleasant surprises. Indeed, you remember problems and not flawless operation. Every problem takes your time away from developing your site.

Quick summary (note that this is only a tiny slice of the vast Internet service providers market):