Monday, February 5, 2007

Top Web Hosting Providers

Our parent company owns about 100+ .COM domain names, which Web sites are hosted by 10+ different web hosting providers.

We wanted 10+ different web hosting providers to ensure IP diversity by having several Class C IP addresses. IP diversity was and is still an important requirement for our specific business needs.

It isn’t an easy task to find a perfect web hosting service and it’s even more difficult to find 10+ quality web hosting services that match our minimum requirements.

We spend some months trying and testing about 50+ already well ranked web hosting providers. Most of the cases, we were disappointed by the reliability aspect and by the customer services that lack of technical expertise. We were often forced to cancel the web hosting contract due to the lack of quality of the services.

Finally, after 3 months of testing and reviews, we’ve got our perfect web hosting providers. We consider them “perfect” because they match all our requirements from the time of our testing and until now. You can see the list of requirements below.

As we always like to share our knowledge to contribution in our ways to the Internet community, we will give you the list of those “perfect” web hosting services.

The list is simple and only contains the names of web hosting providers and links to their respective web sites. Some hosting services will be also added later on as well as more technical specifications. We hope it will permit you to avoid losing time and money if you have to select a web hosting provider by yourself.

Top Web Hosting Providers
ICDSoft
HostGator (Promotion code: “JURY’ or “MUSICA’ to get $9.94 off)
U2–Web (Promotion code: “Sep-2006” to get 10% discount for life)
PolurNET Communications
Integra-Net Web Services
Others to be added later on.
Our requirements
Our minimum requirements taken into account during the evaluation phase:

Linux OS.
PHP (at least version 4).
mySQL DB (at least version 4).
Graphical Control Panel.
E-mail services (POP3, SMTP, e-mail forwarders, e-mail aliases).
Good level of reliability. At least 99.9% uptime.
Quality technical support staff. High technical knowledge and response time of maximum 12 hours.
Affordable. Less than 10 USD per month.
Enough disk space. 1 GB disk space is the perfect amount for us. In some cases, we have enough with 250 MB.
Possibility to have several domain names parked or hosted under the same account.

Introduction to Web Hosting

Just about anybody can create a presence on the Internet. Building a web site can be as simple as using a word processor, but once you have the site you need a way to publish it on the World Wide Web. This is where web-hosting companies come in.

A web host rents you disk space and provides all the services necessary for others to see your web site on the Internet. Barring technical problems, a web host operates 24 hours a day, 7 days a week so that anybody in the world can access your web site at any time.

There are literally thousands of web hosts to choose from so choosing an appropriate host can be a difficult task. The prices range from free to hundreds of dollars a year. Hosting companies can offer a multitude of services that can be confusing to a newcomer. This series of articles will help you to sort out all the information available and give you the confidence to make the proper decision about choosing a web host.

Free or Paid?
There are plenty of hosting companies that provide free hosting, so why bother paying for it? The old adage ‘You get what you pay for’ is just as valid in the electronic age as it was 100 years ago. In web hosting, when you pay nothing you sometimes end up with nothing.

Most free web hosts offer limited services. Even though they are not charging you to host your website, they still need to make money. They often do this by placing advertising on your site. You probably won’t have any control over what kind of ads show up – it’s a matter of take it or leave it.

In addition, free hosts may restrict the content you place on your site. You may not be allowed to sell things or have certain content such as videos or music. Finally, your web site could simply disappear overnight. New companies that offer free hosting pop up almost everyday, but they also vanish with astonishing regularity. When your hosting company vanishes, your web site goes with it.

If you are serious about having a web site you need to use a reliable web host. Prices range considerably – some companies offer rates as low as $2 a month while others charge $60 or more. Be careful, though. High rates don’t always translate as high service. Some of the lower priced hosts offer reliable, stable environments that allow your website to be accessed day in day out for years.

Generally speaking the more you pay the more you get. Higher rates should bring you more storage space, more bandwidth to handle Internet traffic, and more services such as databases, email accounts, mass mailers, and the ability to add custom scripts. Higher rates can also mean better technical service if you have problems with your website.

What is a Web Server?
Whichever hosting company you choose, it helps to understand some of the technical details about their service. Every host has dedicated computers called servers which connect to the Internet and ’serve’ pages when they are requested. That is, whenever anyone wants to see a certain web page by clicking on a link the request is sent to the particular server where that web page is stored. The server responds by sending HTML data across the Internet. A web server must have fast connections to be able to serve pages quickly. For the greatest speed and reliability try to find a host that has multiple high-speed connections as well as reliable back up power supplies in case of power outages.

IP Addresses

Every server on the internet is assigned a unique number – an IP (Internet Protocol) address. This number can be thought of as a ‘telephone number’ which allows other computers to find and access files no matter where they are. The IP address is 4 bytes (32 bits). Each byte is known as an octet and can have a value between 0 and 255, so IP addresses are written in the form of 123.456.78.9.

IP addresses of 32 bits theoretically allow for more than 4 billion unique addresses, but in practice the actual number is much less. Certain ranges are reserved for special purposes so the number of available IP addresses is limited. Web sites can get around this limitation by using shared hosting or virtual servers. Rather than using one server for one web site, shared hosting allows several sites (sometimes hundreds) to be hosted on the same server. Each of these sites has the same IP address. They are uniquely identified by their domain name (e.g. mydomain.com).

There are plans to expand the number of IP addresses with the introduction of version 6 (We currently use version 4) of the Internet Protocol. IPv6 has IP addresses which are 128 bits wide. This provides an almost unlimited number of unique addresses, but will take several years to implement because of the heavy cost of upgrading the Internet infrastructure.

Shared hosting solves the problem of limited IP addresses for web sites, but there is also a need for IP addresses for each personal computer which connects to the Internet to browse the web or send email. Rather than assign each PC a unique IP address, Internet Providers can use a system of ‘dynamic addresses’. This means that each time you connect to the Internet through a dial-up or DSL modem you are assigned a different IP address.

So far we have been discussing how to use a web hosting company to host a web site, but there is no reason why you can’t host a site on your home computer. The biggest technical difficulty for most people, though, is that they connect to the Internet using a dynamic IP address. Dynamic addresses make it difficult to host a web site from home. Since the IP address is constantly changing nobody would be able to find your site unless you somehow notified them of your current IP address. There are dynamic DNS services, however, which allow you to assign a domain name to a site with a dynamic IP address. Each time you are assigned a new address your computer automatically notifies the service, which in turn updates its DNS (Domain Name Server).

Hosting a web site on your home computer, however, may not be a good idea. The computer has to operate server software and needs a high speed Internet connection. Your home Internet connection is probably a lot slower than those used by hosting companies so your web pages may load slowly – especially if they have a lot of graphics. If you have a small personal site with few visitors, though, it may be feasible to host your own site. Dynamic DNS is available as either a free or subscribed service.

Server to Web Browser – What Happens?

Each time you click on a link in a web page or type an address into your web browser you are making a ‘request’ for a certain document. That request is handled with the Hyper Text Transfer Protocol (HTTP) and sent over the Internet to the server which holds the document in question. If all goes well the server responds by sending the document — usually a web page of text and graphics.

HTTP is part of the Internet Protocol (IP) suite. It is used by a ‘client’ such as a web browser to establish a connection with the server which hosts a particular website. The server waits for incoming requests by monitoring TCP port 80.

Transmission Control Protocol (TCP) is used to create connections between two computers on the Internet so they can exchange data. TCP has provisions for identifying the requesting computer and for transmitting data with time stamps so that it can be reassembled in the correct order once it arrives at its destination.

There are several TCP ports which have standardized uses. TCP port 21, for example, is usually reserved for FTP (File Transfer Protocol) for uploading and downloading files. Port 80 is usually used for HTTP.

If the server receives a request string on TCP port 80 in the form of GET / HTTP/1.1 it will send a response code depending on whether the requested web page is available or not. A typical request goes like this:

GET /faq.html HTTP/1.1
Host: http://www.mywebsite.com

This is a request for http://www.mywebsite.com/faq.html. The ‘Host’ needs to be specified to distinguish websites which are hosted on shared servers. If faq.html is available the server will respond:

HTTP/1.1 200 OK
Date: Mon, 12 October 2005 22:38:34 GMT
Server: Apache/1.3.27 (Unix) (Red-Hat/Linux)
Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT

…followed by the actual web page.

HTTP/1.1 200 OK means that the requested web page is available. Other codes can also be returned. The code 404, for example, means that the server cannot find the requested page. The web page is sent via TCP as a series of data packets each with a header that specifies its destination and order in the data stream. The various packets can all take different paths to reach their destination. Each is sent through a router which polls other routers which are close by. If a connection with the first router is unavailable the data will be sent through another one.

As the data is received the client (the web browser) sends back an acknowledgement. This ensures that all the packets are received within a certain time. If not, they will be re-transmitted by the server. TCP also checks that the data is undamaged. The data is reassembled in the correct order thanks to the sequence number of each data packet. Voila! The web page appears on your computer screen.

The TCP connection can be kept alive for additional requests from the client. This allows several pages to be requested within a short time period without causing the overhead of opening and closing TCP ports. Either client or server can close the connection at any time.

From Registering A Domain To Getting It Online (Part 1)

Before getting a web site on line you need to have a domain name. These are the familiar web addresses such as mywebsite.com that most browsers use to find a particular web site. Domain names, in fact, are pointers to a particular IP address and we use them because they are easier to remember than a series of numbers.

All websites have an IP address in the form 123.456.78.9. The domain name system translates these numbers into names such as mywebsite.com. All domain names are registered in a central registry maintained by InterNIC, a subsidiary of ICANN — the organization which certifies domain name registrars. Domain names are filtered through Domain Name Servers (DNS) which link IP addresses with domain names. Each web site usually has a primary and a secondary DNS – duplicates that increase reliability.

The first step in registering a domain name is to choose it. The name can be almost anything you want, but to be most effective it should reflect the nature of your website. If you are selling watches, for example, it helps to have a domain name that has some reference to watches – A1-Watches.com for example.

The rules for domain names are simple – only letters, numbers or hyphens are allowed. Other than that, a domain name is limited to 70 characters, but you are advised to keep it as short as possible. Domain names can be upper or lower case – case is ignored by DNS but you can use a combination to make the name more recognizable. MyWebSite.com is easier to read than mywebsite.com, but both are identical to the DNS.

There are several extensions available. The most common is .com — it has even entered common vocabulary as a way to express Internet activity – (I own a dot com business). Other extensions include .biz (for commercial sites), .org (for non-commercial organisations), .net (for organisations involved in Internet infrastructure) and .name (for personal names). There are also extensions with more specialized uses such as .museum, .aero, and .coop and are used exclusively by members of certain organizations. In addition to these common extensions, there can also be a country code extension such as .us (United States) or .de (Germany). The rules for using country extensions vary, so you need to check with your registrar to see if they are available to you.

All domains must be registered with a registrar that has been certified by ICANN (Internet Corporation for Assigned Names and Numbers). There are hundreds of registrars and their prices vary considerably. The full list of registrars is available at the InterNIC website (http://www.internic.net/regist.html). Although registrars are closely regulated, they are permitted to offer their services through third parties, so many web hosts offer a domain name registration service even if they are not a registrar. The price of a domain name will usually be higher when dealing with these third-party services.

Domain names are usually registered for a minimum of one year, although you are permitted to buy up to a 10-year registration contract. Usually the longer the registration contract, the lower the price, so if you are sure you will be on the web for a considerable length of time you can benefit from a longer registration period. Most registrars also offer a discount on bulk purchases. If you own a number of domain names you can save money by transferring them all to the same registrar.

From Registering A Domain To Getting It Online (Part 2)

You have selected a domain name, registered it and signed up with a web host. What’s next? Your web host has to provide you with details about how to get your site up and running. This information includes passwords to get into your account, paths to directories where your files should be uploaded, and most importantly, what your domain name servers are.

Domain name servers (DNS) provide the link between your domain name (mywebsite.com) and your Internet Protocol (IP) address. The IP address is a series of numbers like this: 123.456.78.9. Every web server has a unique IP address which, in the case of dedicated servers hosting a single domain, is equivalent to the domain name. A site hosted on a dedicated server will respond to either 123.456.78.9 or mywebsite.com by serving the requested webpage.

Most websites, though, are hosted on shared servers. This means that one server is home to many different websites, but they each have the same IP address. If you type in a shared IP address you will get an error page or will be redirected to the web hosting company’s web site. So DNS is necessary for websites on shared servers. Domain names are the only way to request these websites – they cannot be requested by IP address.

Configuring DNS
When you first purchase a domain name, it will be registered on the DNS of the registrar. Until you arrange for a web host, the registrar company will usually redirect requests for your domain name to an error page or an ‘Under Construction’ page. Note that there is no time limit between buying a domain name and finding a host. Some people purchase domain names without ever intending to build a website on them. Most people, though, buy a domain name with the intention of using it. To do that, you need to open an account with a web host and prepare to transfer your site to their server. Part of the process of preparing your site for publication on the World Wide Web is to alert your domain name registrar of the DNS of your new server.

A DNS configuration looks something like this:

Primary Name Server: NSA.NEWDAYDNS.COM (204.50.14.2)
Secondary Name Server: NSB.NEWDAYDNS.COM (204.50.22.2)

This information is available from your hosting company either in their informational package that they email to you, or on their website. If you can’t find the DNS it’s best to contact your web host and ask for it. Once you have the DNS information you can usually enter it into your account on the website of your registrar. If you have purchased your domain name from the hosting company, they will usually make the necessary changes for you when they set up your account.

When the DNS is registered or modified (when changing web hosts) it can take up to 24 hours for your site to be accessible from everywhere in the world. This is because domain names are registered in a distributed data base that is maintained on thousands of computers around the world. Each computer has a small part of the database in cache, and if they receive a request for an unknown domain that request has to be forwarded to another computer until the information is found.

From Registering A Domain To Getting It Online (Part 3)

After you have opened an account with a web host and set the DNS you can start uploading your web pages. The most common way to do this is to use FTP (File Transfer Protocol) software but there are also some other options.

FTP is an Internet Protocol (like HTTP) that allows data files to be transferred from one computer to another. Your web host will provide information about how to connect to your site using FTP. Usually you use FTP software such as WS_FTP or FileZilla to connect to the FTP server on your website. The address of the FTP server is usually ftp.mywebsite.com (where mywebsite.com is the domain name).

Your host will also tell you the location where files should be uploaded. Your account will probably have two main folders in the root directory – public_html and www. Your web pages should be uploaded to the public_html folder. The www folder is a mirror folder which allows people to find your site by using either www.mysite.com or mysite.com.

You may have to adjust a few settings in your FTP software to upload files correctly. For example, if you are using a firewall on your computer you should set the transfer method to passive. If you are using a proxy you will have to adjust the proxy settings.

Files can be sent or received in either binary or ASCII mode. If they are transferred using the incorrect mode they may end up with errors on completion of the transfer. Your FTP software may try to determine which mode to use by examining the contents of the files, or you may have to manually specify the transfer mode. Files that should be sent in ASCII mode include HTML (and variants like HTM, SHTML, DHTML, etc.) TXT, CGI, C, ASP, JS etc. Basically, any file that can be viewed in a text editor should be transferred in ASCII mode. Binary mode, on the other hand, is used to transfer everything else – graphics, compiled programs, and media files.

Using the FTP software, make a connection to your web server. Browse to the folder where you want to upload files (usually by clicking on the folder icons) and then find the local files you wish to upload. Whole directories or individual files may be uploaded.

You can name most of the pages of your website anything you like, but there is one essential file in each directory – index.html or a variant (index.htm, index.shtml etc). This means that your home page has to use this name. The home page can be viewed by typing http://mywebsite.com or http://mywebsite.com/index.htm. In the first case, if there is no file named index.htm the contents of your root directory will be shown. Without an index file in each directory, anybody who browses to that directory can see all the files there. This presents an enormous security risk as well as exposing private information to public view.

FTP is the most common way to upload files to your website but is by no means the only way. Some web authoring packages have built in transfer methods to automatically upload your entire site or individual pages. Microsoft FrontPage is an example of this type of transfer method. In order to take advantage of it you need to have FrontPage extensions installed on your website. You can request this feature from your web host. Other authoring packages have built-in FTP software so that you can build your site and upload with one familiar interface.

You can also build sites online. Some web hosts give you access to browser controlled software that allows you to lay out web pages. Once you are finished the page is automatically saved to the proper location on your server. This type of web builder is usually available through the control panel of your hosting account.

Multiple Domain Web Hosting

Thanks to the low cost of domain names and hosting fees it is possible to own several websites without breaking the bank. There are several ways to manage multiple domains so it is important to know what your options are and the advantages and disadvantages of each method.

The most basic choice when administering multiple domains is whether or not to do so with the same host. Most hosts offer packages which can be set up to allow several sites on one account, or allow individual sites to be operated under separate accounts.

You may have an existing website and are happy with the services your host provides. If you decide to start a new website using the same host, you will have the reassurance of dealing with a company you are familiar with and trust. You may also get a discount for each additional account you open with the same host. On the other hand, using a new host for a second (or third or fourth) website can allow you to compare the quality of hosting offered by different companies. In addition, separate hosts will provide each of your web sites with a different IP address.

Having different IP addresses can be an important factor if you plan to link the sites together to aid in search engine optimization. Incoming links are an important indicator of the importance of a website, so a site with a lot of incoming links can get a higher position in search engines like Google. If all the links are coming from the same IP address, however, their value may be discounted. Hosting your various sites with different hosting companies guarantees that each site has a different IP address. Individual IP addresses, however, are available as an extra from most web hosts. For a yearly fee each website can have its own unique IP address. This can help with search engine ranking and is also needed if you want to have a secure connection (https) on your site.

If you decide to host all your sites with the same company, there are three basic ways to go. Each site could have its own account; you could sign up for a re-seller account; or you could get a dedicated server account.

As a re-seller you are acting as an agent for the hosting company. You are allocated a certain amount of disk space and bandwidth and you are free to use them as you please. There may be a limit to the number of websites you can host with your re-seller account, but if there is space left over after using this account for your own sites you could earn some extra income by selling accounts to other people. The advantage of a re-seller account is that all the technical details are taken care of by the hosting company. Some will even provide gateways for billing your customers.

A dedicated server account gives you control of all the resources of an entire server. You are free to setup as many websites as you wish and allocate disk space and bandwidth as you see fit. The downside to this type of account is that you are responsible for maintaining the server. This can require a significant level of technical know-how so if you don’t have that knowledge or don’t feel like learning about it, dedicated servers are not for you. You can, of course, go with a managed dedicated server. The downside of this is the higher cost involved.

Hosting all your sites with one host can offer lots of advantages but there is one major disadvantage – if your server goes down, all your sites go down. If you are depending on your sites for income this can be a disastrous situation. For this reason, it is a good idea to have at least one of your sites with a different host. If your sites are essential for your livelihood and you can’t afford any down time whatsoever, you would be advised to host everything with (at least) two hosts.

UNIX versus Windows Hosting

When browsing through the offerings of various web hosting companies you are sure to notice that some offer UNIX hosting and others offer Windows. Some hosts even offer a choice of the two operating systems. What are the differences and which one is better?

First of all, when choosing a host, it doesn’t matter what kind of operating system you develop your web site on or what you use on your own computer. Web sites hosted on both UNIX and Windows servers are universally accessible because the data they serve is identical. The difference lies solely in the software used to serve that data.

In terms of reliability UNIX systems have a slight advantage. They are known to extremely stable and able to run for years without rebooting. Windows is also very reliable – slightly less so than UNIX but still able to handle the demands of modern web sites.

The majority of web hosts use various flavours of UNIX like Linux and FreeBSD. These operating systems are free and reduce the costs of a hosting operation. Windows costs thousands of dollars so some hosts charge extra for Windows accounts if they offer both types.

As well as being free, Linux and the other UNIX varieties are open-source software. Anyone can alter the source code and make improvements, updates, and additions. There is a large pool of dedicated enthusiasts who use their free time to work on this software. Windows, on the other hand, is Microsoft proprietary software so users are dependent on Microsoft to release updates. There is no way for an individual user to modify the code.

The main difference between the two types of operating systems is the type of software each can run. Windows is suitable for Microsoft products such as MS Access databases, ASP for delivering dynamic content, and VBScript for site enhancements. UNIX cannot accommodate these technologies so if you absolutely need ASP or VBScript you should pick a Windows host. UNIX hosts deliver dynamic content by using software such as PHP, CGI, and MySQL – technologies which are also available on Windows hosts.

Windows is necessary for hosting Windows media files such as videos and audio. Other types of media such as MP3, Flash, Shockwave and Real can be handled by either UNIX or Windows. Websites created in Microsoft FrontPage (a graphical HTML development package) can also be hosted on either type as long as MS databases or dynamic content are not included for use on a UNIX host.

Which is Best?
Before deciding which type of hosting to use for your website, consider carefully what kind of technologies you will need. Do you need a dynamic site? Will you have multimedia content such as streaming video or audio?

Both UNIX and Windows can provide dynamic content with PHP, MySQL, as well as CGI, and there are thousands of dynamic scripts readily available. Multimedia can also be hosted by either type of server, although Windows media (WMA and WMV) need to be hosted on a Windows server.

If you absolutely need Microsoft databases, ASP, and Windows media you have to go with a Windows host. Otherwise most websites are probably better off with a UNIX host. The advantages of UNIX over Windows include greater choices in web hosts, slightly better reliability, and (sometimes) cheaper hosting costs.

Shared versus Dedicated Web Hosting

There are two basic types of web hosting packages – shared and dedicated. This article will explain what the terms mean and how to choose an appropriate type of hosting for your web site.

Websites are stored on servers – special network computers that respond to data requests over the Internet. Each server has its own Internet Protocol (IP) address. An IP address is four numbers separated by dots – 123.456.78.9 for example.

A web site that uses dedicated hosting has the server all to itself. This means that all the resources of the server as well as the IP address are unique to that web site. Shared hosting, on the other hand, places several websites on the same server, all of them sharing resources and the same IP address.

Shared hosting is much cheaper than dedicated hosting because the cost of operating the server is split between many different customers. Shared hosting is available for as little as $2 a month but dedicated hosting could cost up to $100 a month or more.

Shared Hosting
As we mentioned above, websites that share a single server are sharing all the resources of that computer. This includes disk space and bandwidth as well as the IP address. In order to provide adequate service to all sites on a server, your host will limit each site to a certain amount of disk space and bandwidth used per month. Sites that exceed these limits may have to pay a hefty penalty.

Since each server has a limited amount of bandwidth, the amount of traffic your neighbours receive can affect how quickly your web site is displayed. Each request coming in to the server is dealt with in the order it was received, so if there is a large queue, there will be a long wait.

The number of sites that are sharing a particular server is not as important as the amount of traffic each site receives. A server hosting 200 low traffic sites will respond much faster than one which has 50 sites that are receiving a lot of visitors.

There are some risks associated with shared hosting. If one of your neighbours runs a badly programmed script that runs amok the entire server could be affected. In extreme cases this could cause your site to be inaccessible for a time. Another risk is that if one of your neighbours is banned from search engines (for spamming tactics, for example) it could affect everyone sharing that IP address. Check with your hosting company to see their policy about third-party scripts and inappropriate activity.

Dedicated Hosting
With a dedicated server all the resources are yours to use as you please. You can use it to host a single site or multiple sites, you have access to the full bandwidth of the server, and you can use as much disk space as necessary. Companies with large complex websites that receive a lot of traffic need to have dedicated hosting. Sites that use a dedicated server are also free to run any kind of script they wish. This may be ideal for those who are developing new scripts and need to test them without affecting other websites.

How to Choose
Small websites are usually better off with shared hosting. The cost is more affordable – especially for small companies and individuals. A reputable host will be careful not to allow activities that could jeopardize your site. Large complicated sites that receive more than 1000 visitors a day are better off with dedicated hosting. It is also a good choice for developers who wish to experiment with new Internet technologies.

Disk Space

Every hosting account has a certain allotment of disk space. The disk space is used to hold all the files which make up your web site – HTML files, graphics, scripts, and multi-media content. Usually the more expensive the hosting package the more disk space and the more bandwidth you receive.

A basic web site with just a few pages requires less than 1 MB of disk space. As you add more content and include things like downloadable files, pictures, music, and video you will require more disk space. Email also takes up disk space. If you have an account with a small disk allotment you may find that unsolicited SPAM may be eating away at your disk allotment. It’s always a good idea to go through your inbox from time to time to delete unnecessary emails.

What will happen if you use too much disk space? Each web host has their own policy about this but it’s safe to say that you will be charged for the extra space. Often this penalty is much higher than regular rates for disk space so it’s important to keep an eye on how much space you are using and if you are approaching the limit, either purchase more space or delete some files.

How can you tell how much space you are using? Most hosting packages have a control panel for making adjustments to almost every aspect of your account. These control panels usually tell you how much disk space is being used and may also rate it against your allotment so you can see at a glance if you are approaching your limit. If your hosting account does not have this feature you can judge the amount of space by downloading your entire site to a folder on your personal computer in order to check how much space it takes.

As a rough guide, consider that an average web page (3 graphics and 2 screen lengths of text) takes about 20 kb (to be generous). At this rate, a hosting package with 10 MB can have about 500 pages. Since most small sites are less than 50 pages 10 MB should be plenty to get started. But what about databases? They are usually calculated separately from your disk allotment but check with your web host to see what their policy is.

If you place music or video files on your website your need for disk space (and bandwidth) starts to take off. A typical 3 minute MP3 file takes about 2.5 to 3 MB of disk space. A short video (very poor quality) can take 1 MB. A good rule of thumb for those wishing to host multimedia is to estimate the total size of the files and get an account with double that space. This will allow for future expansion. Always check with your web host, though, before placing sound or video files on your website. Some have policies against this type of content because it places a strain on the bandwidth allotment – a serious consideration with a shared hosting package.

Bandwidth

Bandwidth is a term that has several different meanings depending on the context. When talking about bandwidth in terms of Web Hosting it refers to the amount of data that transfers into and out of your web hosting account. Incoming data can include requests for web pages, email, FTP requests, and FTP uploads, while outgoing data includes file transfers, web pages, and email. Each hosting account is allocated a certain amount of bandwidth per month. Common figures for bandwidth range from 3 GB for small personal sites up to 200 GB for large business systems.

How much bandwidth do you need? This depends on the amount of traffic your website receives as well as the content. Web pages made up of text and a few pictures are very small in size but if you get thousands of visitors each day you may need a lot of bandwidth. On the other hand website content consisting of downloadable files such as software, music or video is much larger in size, so even if your traffic is fairly low you may need extra bandwidth.

The best way to calculate the amount of bandwidth you need is to calculate the size of your downloadable content and multiply by the number of visitors you receive each month. Add to that the number of emails sent and received and other content such as FTP uploads. The figure you come up with should be pretty accurate because it is unlikely that every visitor to your site is going to download every file or view every page. This will give you a bit of margin to play with.

As your web site grows and as you receive more traffic you may have to increase your bandwidth allotment accordingly. It is better to plan ahead and arrange with your web host for a larger hosting package rather than wait until you go over your limit. Check with your host to see what their policy is in regards to exceeding your bandwidth. Some will allow you to go over by a certain amount while others will shut down your site and demand that you upgrade your account before resuming service. It is always best to keep track of how much bandwidth you are using and anticipate when you need to upgrade.

If you feel that you have sufficient bandwidth and would prefer not to upgrade you may be able to ‘throttle’ traffic if you are approaching your monthly limit. Some hosts offer this service as a way to limit incoming requests or to exclude requests once a certain number has been reached.

There are several throttling options. You can limit the number of incoming requests by specifying an idle time between requests. This causes incoming requests to be delayed by a specified amount of time if too many are arriving at once. Other options are to impose a limit on data transfer within a certain time period or to limit the number of requests for a certain file. The speed of transfers can also be capped at a certain level. Throttling may not be a good idea if you depend on web traffic for your business. If your pages are slow to load or if users can’t access files they are looking for they may give up and move on to another site. If you have a lot of free content, though, throttling can be useful for keeping your hosting budget within a certain amount.

Web Hosting and Databases

Most web hosting packages include one or more databases. What can you use them for? How will they help your website? Read on for the answers to these questions. A database stores data, but more importantly, allows that data can easily be accessed. Data can be product information, customer names and addresses, sales records, or even the information that appears on web pages. Using a database to retrieve that information can allow you to better serve your visitors and provide them with a more interactive experience.

The most common use of databases in an Internet environment is to serve information dynamically as it is requested. In a large eCommerce site, for example, the actual product information is maintained in a database so that updating the site is a simple matter of changing the data. Without this system, website managers would have to create static pages for each product. When dealing with hundreds or thousands of products, this task would be almost impossible to manage in an efficient manner.

Dynamic pages use a template for the static content of the site such as headers, menus and footers. The contents of the database are inserted into the template by the server software before the page is sent to be viewed in a browser. Any content from the database can be placed anywhere on a dynamic page. This allows you to set up visually appealing pages which include text and pictures and also add shopping suggestions like: ‘Customers who bought this also bought…’

Databases can also be used for storing and accessing customer records. This allows you to tailor your pages according to your customer’s previous purchases. Each page could have a personalized greeting (Welcome back Peter) and when they make another purchase all their personal data including address and credit card number could be pulled from the database so they don’t have to fill in the same form again.

Another use of a database is mailinglists. Many websites send out information to their visitors to remind them about the site and encourage them to visit again. Email addresses can be stored in a database for the purpose of sending out announcements and newsletters. Also the newsletters can be archived in a database so that visitors can browse or search through previous mailings.

Each database can be divided into tables which are a complete set of data, so one database could be used for most of your website information by setting up a number of tables.The number of databases that your site needs depends on how many applications you are going to run.

It’s one thing to have a database, it’s another to access that data. There are several ways to retrieve information from a database so that it can be usefully applied to your website. One of the most popular combinations is PHP along with MySQL. PHP can be used to create dynamic web pages that pull data from a MySQL database. The programming language is quite straightforward and can be used to set up complex interactive forms. Other database applications include MySQL with ASP, MSSQL with ASP, and PostgreSQL with PHP.

eCommerce Web Hosting

One of the fastest growing sectors of the Internet is eCommerce. People are becoming accustomed to buying things from Internet store fronts and every year the volume and value of sales increases substantially. If you would like to open up your own eCommerce web site here are a few basics to get you started.

The first thing you need, obviously, is a product or service that you can sell. If you already have a brick and mortar store you can offer the same items for sale on a web site. The number of products that you sell is a big factor in the type of hosting package you need. If you have let’s say less than 20 items, you could set the whole thing up on a very small hosting account. Listing hundreds of products is a different story – you will probably need more disk space, more bandwidth, and more features such as databases and a secure connection for accepting payments.

Since the most important part of eCommerce is getting paid, let’s look at the various payment options available. There are two basic options – collecting payment information directly or hiring a third-party service to process credit cards.

SSL (Secure Sockets Layer)
If you are planning to get or already have a merchant account that enables you to process credit cards you need to have a web site with a secure connection. This provides a way to encrypt sensitive data so that it cannot be intercepted and read as it travels across the Internet. If you don’t have a secure connection (indicated by https at the start of a web address) forget about collecting credit card numbers – customers are too web savvy to post sensitive financial data on an unsecured web site.

In order to get a secure connection, you need to apply for an SSL (Secure Sockets Layer) certificate. These are issued by companies such as Thawte which require you to supply verifiable information concerning your identity and location. Once you have the certificate it must be installed on your web site. For this you need to have a unique IP address – available at an extra cost from most web hosts. There may also be a fee to install the certificate.

Third Party Gateways
If all this sounds too complicated, you have the option of going with a third party service that handles financial transactions for you. To complete a sale, customers are usually redirected to the web site of the payment service where they provide their credit card details. Some of these services have setup fees and charge a commission on each sale, while others (like PayPal) are free to set up and simply take a percentage of each sale.

Shopping Carts
Shopping carts are scripts that can be installed in your hosting account. They can automate the whole eCommerce experience by organizing your products into categories, creating pages that describe categories as well as individual items, allow you to keep track of returning clients, suggest other items for the customer to buy before they check out, and allow them rate the products they have bought.

Shopping carts can provide a more satisfying shopping experience while providing a structure for your online business. Many hosting packages include free shopping cart scripts such as Miva, Agora, osCommerce, and Zen. When choosing an eCommerce package, make sure it supports your preferred method of payment gateway. For example, if you already have a merchant account with your local bank, use that as your starting point for choosing a shopping cart which supports that particular payment method.

eCommerce Web Hosting

One of the fastest growing sectors of the Internet is eCommerce. People are becoming accustomed to buying things from Internet store fronts and every year the volume and value of sales increases substantially. If you would like to open up your own eCommerce web site here are a few basics to get you started.

The first thing you need, obviously, is a product or service that you can sell. If you already have a brick and mortar store you can offer the same items for sale on a web site. The number of products that you sell is a big factor in the type of hosting package you need. If you have let’s say less than 20 items, you could set the whole thing up on a very small hosting account. Listing hundreds of products is a different story – you will probably need more disk space, more bandwidth, and more features such as databases and a secure connection for accepting payments.

Since the most important part of eCommerce is getting paid, let’s look at the various payment options available. There are two basic options – collecting payment information directly or hiring a third-party service to process credit cards.

SSL (Secure Sockets Layer)
If you are planning to get or already have a merchant account that enables you to process credit cards you need to have a web site with a secure connection. This provides a way to encrypt sensitive data so that it cannot be intercepted and read as it travels across the Internet. If you don’t have a secure connection (indicated by https at the start of a web address) forget about collecting credit card numbers – customers are too web savvy to post sensitive financial data on an unsecured web site.

In order to get a secure connection, you need to apply for an SSL (Secure Sockets Layer) certificate. These are issued by companies such as Thawte which require you to supply verifiable information concerning your identity and location. Once you have the certificate it must be installed on your web site. For this you need to have a unique IP address – available at an extra cost from most web hosts. There may also be a fee to install the certificate.

Third Party Gateways
If all this sounds too complicated, you have the option of going with a third party service that handles financial transactions for you. To complete a sale, customers are usually redirected to the web site of the payment service where they provide their credit card details. Some of these services have setup fees and charge a commission on each sale, while others (like PayPal) are free to set up and simply take a percentage of each sale.

Shopping Carts
Shopping carts are scripts that can be installed in your hosting account. They can automate the whole eCommerce experience by organizing your products into categories, creating pages that describe categories as well as individual items, allow you to keep track of returning clients, suggest other items for the customer to buy before they check out, and allow them rate the products they have bought.

Shopping carts can provide a more satisfying shopping experience while providing a structure for your online business. Many hosting packages include free shopping cart scripts such as Miva, Agora, osCommerce, and Zen. When choosing an eCommerce package, make sure it supports your preferred method of payment gateway. For example, if you already have a merchant account with your local bank, use that as your starting point for choosing a shopping cart which supports that particular payment method.

Web Statistics

Now that your web site is up and running you want to know how many people are visiting your site and how they are finding it. Most web hosts give you access to this information (and a lot more) in the form of web statistics.

All visits to your site are logged by the server software. Log files contain information about the origin of the visitor (their IP address), the type of browser they were using, which pages they viewed, how long they stayed, whether or not they arrived from a search engine and if so, what keywords they used to locate your site. All very useful information.

The trouble is, raw log files are scary to look at and impossible to make any sense of. They are long lists of numbers and cryptic words that can only reveal their secrets with the aid of a statistics program. There are a few stats programs to choose from. They take the raw server logs and parse them into readable (and sometimes colourful) charts that are fairly easy to interpret.

Most web hosts will include a stats program as part of their hosting package. You should be able to access it through the control panel which is used to make various settings on your account. Some of the popular web stat programs are AWStats, Analog, and WebAlizer. All three of these programs are free.

Stats programs divide the information of the log files into useful categories. A summary of the data may be included at the top of the readout and tell you information such as ‘unique visitors’, ‘number of hits’, and ‘number of pages’.

Not all this information is important. The number of hits, for example, simply counts the total number of requests for any individual part of your site including graphics, script files and any other files that are part of a page. If your home page has 4 pictures and 2 other files the hit count is increased by 7 each time someone views that page.

The number of page views is important because it tells you which pages are popular. This allows you to fine-tune your site by dropping or modifying unpopular pages and making sure that popular pages link to areas that you want to promote.

Popular entry and exit pages are also worth tweaking. Visitors will not always arrive at your site through the home page, especially if they’ve found your site through a search engine. Make sure that popular entry pages contain relevant information and adjust exit pages to be more appealing. Exit pages should provide one last chance for them to buy or bookmark your site for future reference.

Referring sites show you where people are coming from. If they have found you from a search engine you will also see what keywords they used to find your site. This information tells you which keywords are important for optimizing your site. You can then design new content based on these keywords to attract even more visitors in the future.

Rather than rely on the stats produced by your server, you can hire a third party service to monitor your web site. These services range from basic ‘counter’ that usually offer less information than your server does, to comprehensive client-side stats collection.

Stats services can be useful if you need more precise information about your visitors. For example, visitors from a large organization may all appear to be the same because they all have the same IP address. Stat services can break down IP addresses into individual users.

These services can be useful for more precise monitoring of your website and for targeting specific niches. Most site owners, however, will find enough useful information in their server’s statistics.

Website Monitoring Services

If you have gone through the trouble of building a web site and hosting it with a reliable company you obviously want your website to be available 24 hours a day 7 days a week. Downtime can result in lost sales and customer frustration.

Unfortunately, there are many technical problems beyond your control that can cause your web site to go down or become sluggish. Server hardware and software can fail and your host may schedule downtime for maintenance chores. Speedy recognition of failures is the best defence to getting things back on track, so many companies offer website monitoring services that automatically alert you if your site goes down.

There are hundreds of companies that provide monitoring services. Some are free while others charge anywhere from $5 to $60 per month. The paid services usually offer more features and allow you to use the same service with several different web sites. Web monitoring is not done continuously – time intervals range from every 3 minutes to every hour. The paid services usually offer the most comprehensive monitoring.

Monitoring works by sending an automatic request to your website and checking the response. These requests are the same as a web browser makes and the response to the request determines whether the site is up or down. Requests are usually sent from several different geographical locations to ensure that the site is available from various parts of the world.

If the response code is OK (200, 301, 302, 401, 403) nothing happens and the monitoring software waits for the next scheduled check. If the response code indicates that the web site is unreachable, there will be a second check a few seconds later from another location. There may be 3 or more of these checks before an alert is issued.

An alert can be sent to one or several email addresses or to a mobile device such as a pager or cell phone. This allows you to get in touch with your hosting company as soon as possible to ensure they are aware of the problem and are working to resolve it. As well as HTTP traffic, some website monitors can also check HTTPS, FTP, SMPT and POP3 so that all the functions of your website are covered.

Besides alerting you to downtime, these services can also provide useful statistics in the form of log files that indicate how often a site goes down. This third-party information can be used to demand better service from your web host or a refund in the case of severe amounts of downtime.

If you find that your site has an unacceptable amount of downtime, you should look for a more reliable hosting company. The best way to find a good host is to ask for recommendations from other web site owners. If they are happy with their service they will usually be glad to direct more business to their host.

Managed Versus Unmanaged Dedicated Web Hosting

If you have a large and complex website that receives a lot of traffic you may find that shared hosting is limiting your growth and the capacity to serve your customers. It may be time to move on to dedicated hosting. Shared hosting involves placing many websites on one server. All sites share the resources of that server such as disk space and bandwidth. Dedicated hosting means that instead of renting space on a server, you rent an entire server for your sole use.

Dedicated web hosting is much more expensive than shared hosting because the cost of operating the server is not divided between various accounts. The advantages of dedicated hosting include the freedom to use the resources of the server as you please. There are many different dedicated hosting packages to choose from. Their prices depend largely on the physical setup of the server computer. Just as with your home computer, faster processors and bigger hard drives cost more.

Another factor influencing the price is whether or not the server is managed. Keeping a server running in top condition can be a time consuming task. A managed hosting service offers the support and expertise to maintain your server and to perform routine maintenance such as software upgrades. This kind of service can be a viable alternative to hiring your own staff to look after your servers. Managed hosting, however, can be a lot more expensive than unmanaged hosting. Whether the price is justified depends on the complexity of your website and whether or not you already have people on staff who can look after the day to day operations of a server.

Unmanaged hosting, despite its name, does not really leave you entirely to your own devices. Most hosting companies will offer a certain level of support for all their dedicated hosting packages. This support of course includes hardware maintenance for things like hard drive failure and extra technical support may be available if you need help with configuration or software installation. You will probably have to pay for this extra support but hiring a tech on an hourly basis from time to time may be cheaper than going with a full managed package.

If you are considering unmanaged hosting check to see how much control you can have over the server hardware. If your server becomes hopelessly locked you should be able to perform a re-boot or to expect someone to do it for you with a minimum of delay.

As with any hosting package the value of a dedicated hosting service depends on the reliability and integrity of the hosting company. If your website has grown to the point where you need dedicated hosting you need a hosting provider that you can rely on to keep your site online as much as possible.

Whether you choose managed or unmanaged hosting depends on the technical requirements of your site and the ability of you or your staff to manage a server so that it is running at peak efficiency. If you prefer to have the re-assurance of having highly trained professionals looking after the server, go with managed hosting. If you or your staff can handle most of the maintenance chores, you would be better off with an unmanaged server.

Colocated Hosting

You have decided that a dedicated server offers the best features for your online presence. There is no need to share resources and you can set up the server as you please. There remains just one question: Are you going to rent or buy your server? Dedicated hosting means that you are renting a server from a web host. But you also have the option of buying your own server and having the host provide the facilities to house it and connect it to the Internet. This service is called colocated hosting.

The advantages of colocating include all the advantages of dedicated hosting – you have the resources of the entire server and bandwidth to do with as you please. The additional benefit over dedicated hosting is the lower cost. Because you own the server, your monthly fees don’t include charges for hardware maintenance and upkeep. On the other hand, your initial outlay will be larger because you have to buy the server. If the server is good quality and remains in service for a reasonable length of time, however, your overall costs will be lower with colocation.

The cost of colocation depends on the amount of space your server occupies. Data centers house servers in racks that in turn are housed in cabinets. Cabinets are usually 40 rack units in height, with each rack unit equal to 1.75′. The cases of server computers are measured in rack heights – 1U = 1.75′. Typical sizes for servers are 1U, 2U and 4U, so the physical size of your server will determine how much the colocation host will charge per month. Bandwidth is another factor affecting price.

There are several options available when purchasing a server and getting it to the colocation data center. If you live in close proximity to the data center you could buy a server locally and set it up at your own premises. Once it is setup you can personally deliver it to the data center. Another option is to buy the server from a mail order retailer and have them deliver it directly to the data center. This is a good option if you are not located near the data center. It saves you the cost of shipping the server and the retailer will be responsible if the server happens to be damaged in transit. The disadvantage is that you have to set up the server remotely through a web interface. The third option is to buy the server direct from the host. Not all hosts are in the business of selling servers, but those that do may offer financing and setup assistance.

Colocation or Dedicated?
Colocation puts you in charge of the hardware, but that also means that you are responsible in the case of hardware failure. If you have signed up for dedicated hosting you are renting the server, so the host will replace hard drives or CPUs if they malfunction. The initial costs of colocation are much higher than dedicated hosting. You have to buy the server as well as insurance and software licences. All that is included in a dedicated hosting plan. Hardware upgrades are also more expensive with colocation because you have to buy the new equipment outright and pay to have it installed. Dedicated hosting plans usually allow you to upgrade either hardware or bandwidth at a reasonable cost.

The main advantage of colocation is the lower monthly costs when compared with dedicated hosting plans. Other advantages include greater control over network configuration and more flexibility. A colocation provider has to be chosen carefully. After all, they will host both your hardware and your data. Consider such details as security, network redundancy, protection from fire and earthquakes, and backup generators in the case of power outages.

Virtual Private Server (VPS) Web Hosting

Shared hosting allows thousands of people to host their own sites at a very reasonable cost. It has some drawbacks, however. Since hundreds of sites can be hosted on a single server resources such as CPU, disk space, and bandwidth have to be shared with your virtual neighbours.

Shared resources are usually not a problem for small to medium sized sites. Your main limitation is the lack of control over system level software – http servers, mail servers etc. You don’t have any choice of operating system and you cannot compile programs or do administrative tasks such as setting up Spam filters or firewalls.

Many people would say ‘So what? I don’t want to do that stuff anyway!’ It’s true that the majority of website owners have no interest or ability to handle this kind of work and are happy to leave it to the hosting company. Those who desire more control over their server environment or wish to experiment with new software, however, can get access to this level of management with a Virtual Private Server.

A virtual private server (VPS) is a physical server that has been divided (using software) into several virtual machines, each acting as an independent dedicated server. The physical resources such as RAM, CPU and disk space are still shared, but each VPS acts independently of the others. Each VPS can have a different operating system and can be configured in any way possible.

The key advantage of VPS is allowing each VPS administrator access to the root level of his virtual server. This kind of access allows the administrator to install and delete software, set permissions, create accounts – in short, do everything that the administrator of a ‘real’ sever can.

As well as providing more control over your hosting environment, a VPS is more secure than shared hosting. Websites on a shared server all have the same operating system, so if a hacker were to find access to the root of the server he could damage any or all of the websites on that server. A VPS, on the other hand, is divided in such a way that even if a hacker were to gain entry through one account, there is no way to access the others. Each VPS is invisible to the others and there is no way to set up root level access from one VPS to another.

Virtual Private Servers can be set up in various ways so be sure to understand how the hosting company has allocated resources. The most common configuration is to divide all the physical resources evenly by the number of accounts. Thus, if there are 10 virtual servers, each would receive 10% of the total bandwidth, CPU, memory and disk space.

The disadvantages of VPS are almost the same as the advantages. The control that a VPS account provides can be dangerous if you don’t know what you are doing. You have the ability to delete files, set permissions improperly, allow virus-laden software on the system and, in general, really screw things up. If you don’t have the knowledge to administer a server, or are not willing to learn, VPS is not for you.

If your website has outgrown shared hosting, however, VPS offers an affordable alternative to dedicated hosting. When shopping for a VPS host, be sure to find out how system resources are divided up, the number of VPS accounts on each physical server, the method for upgrading, and the choices of operating systems.

Starting A Web Hosting Company

Rather than use the services of a web hosting company to host your web site you could start your own web hosting company. If your business is successful this could provide secondary income and lower the hosting costs for your own site(s).

Basically, there are two ways to start selling web hosting. The first way involves leasing business space, buying equipment, setting up servers, leasing T1 or T3 lines to connect to the Internet, finding clients, and hiring staff to provide 24 hour support. Quite complicated and not recommended for anyone without the technical know-how.

The second way is to become a re-seller for an established host. For a monthly fee you can have an allotment of disk space and bandwidth which can be used to sell to other people. Re-selling is usually anonymous – there is no visible connection to the parent host and you are free to set your own prices and develop your own ‘brand’.

All that is needed to become a re-seller is the ability to pay the monthly fee. All the technical details are handled by the parent company. The re-seller package usually includes everything – even name servers under your own name. All you have to do is to sign up customers and watch the money roll in. Easy – right?

Signing up customers, though, may not be as easy as you imagine. There are literally thousands of hosting companies competing for customers, and making your web hosting business stand out from the crowd is no mean feat. Just think about the process you went through in choosing your own web host. You probably visited several hosting web sites, maybe asked for personal references from your friends or business acquaintances, and then after narrowing down your choices, perhaps did more in-depth research on each of the companies. Or perhaps you just signed up with the first host you saw.

So, in order for your own hosting company to be successful it has to build up a good reputation or be easy to find. Advertising can make your company more visible, but advertising is expensive – especially in a competitive market like web hosting.

A re-seller account, however, may be ideal for certain situations. If you already have several websites of your own, your monthly costs may be similar to a re-selling account. For the same amount of money you could switch all your accounts to your own hosting company. Sign up a few friends or associates and you are ahead of the game.

If this sounds attractive, make sure you are going with a reputable hosting company. You will be entirely dependent on them for technical support. This relieves you of many of the headaches of running a hosting company but you are still responsible to your clients if their sites go down.

There are many types of re-seller packages. Some require you to operate under the name of the hosting company while others allow you to set up a shop under your own business name. Pay attention to the billing aspect of the package. Some re-seller accounts have everything you need to get started immediately, while others require you to set up your own billing gateway.