Friday, June 12, 2009

Web Host - Host Yourself!

There are very few reasons to host yourself these days. Web servers are faster than ever, prices are down, and the majority of internet sites use such a small portion of a web server's resources that a large number of web sites can be hosted by a single server without any negative side effects. However, if you are thinking about hosting yourself, you should first see if you meet any/all of the following requirements:
  • You are technologically savvy individual.
  • Understand the basic issues in securing a server.
  • You have access to a broadband internet connection for the server.
  • Have a large amount of time to allocate for this project.
  • Excellent problem solving skills.

If you believe this pretty much describes you, then hosting your own server may be a reasonable solution. However, if you do not meet these requirements, we suggest that you skim through this information and continue on with Web Host guide. Chances are setting up your own server would only be an unnecessary headache.

Server Requirements

There are many things to consider when setting up your own web server. We have a compiled a short list of a few key items:

  • A computer that can be dedicated as a web server, not as a personal computer.
  • An NIC (Network Interface Card) and a broadband connection. A high upload rate is of the utmost importance.
  • A computer that will be enough to keep up with server requests. Processor intensive web sites will require a higher quality PC than a web site that only has a few static HTML pages.
  • Installed copy of the Linux OS. Though any OS can serve a web site, Linux is one of the most popular server OSes and is becoming an industry standard.
  • An ISP or Internet Connection that supports web traffic. Many ISPs will not allow users to run a web server unless they pay an additional fee. Contact your ISP for more details

Most of those items should be easy enough, except for the Linux OS. It is possible to serve a web site using the Windows operating system, but many more security issues need to be addressed than with the Linux OS. If you would like to learn more about linux, read a Beginner's Tutorial to get your feet wet.

Windows Hosting Information

If you have chosen to stay with windows to host your web site, please take a look at these tutorials on how to set up a Windows-based web server.

  • Windows Web Server - A steb-by-step process of building a windows web server.
  • Windows 2003 - A great resource for setting up a Windows 2003 based server.

The most important part of getting a windows server ready is to ensure that IIS/PWS (different name for different versions of Windows) is installed. Without installing this you will not be able to serve web documents to the public. If you are using Windows ME or XP Home Edition there is not a safe way to install IIS/PWS to your system. You will either have to use a different OS or install a different version of Windows.

  • XP Pro - XP Pro IIS Installation Guide.
  • Windows 98 - Windows 98 PWS Installation Guide.

Linux Hosting Information

There are many flavors of Linux to choose from. The most popular are RedHat, Slackware, and Debian. If you are new to Linux, do not worry. Many web sites are out there that will teach you all the need-to-know information to get started with linux. Here are a few helpful web sites:

There is a huge community that supports linux and most are more than happy to answer your questions, provided that you have done a little research prior to asking your question. If you have any problems with getting linux to run, the place to ask your questions is at Linux Questions.

Web Host - Research

Many variables should be considered when selecting a web host. Does the host provide the right features, databases, price, etc? The quality of a web host can make the difference between a lifetime web visitor for your web site and an annoyed first timer who will never return.

If the web host has a slow connection to the internet or a poor uptime percentage, then a web surfer would experience a boringly long delay waiting for the pages to load. In the worst case, they may simply get an Error 404 page not found! Nevertheless, there are a few steps that can be taken to find that great host and to help avoid web hosting lemons.

Quantity Research

Before you even begin to consider locking in and purchasing a web host, be sure to visit a number of random web hosts. This will allow you to get a feel for pricing standards and understand what features go with what price. Be sure to pay attention to the following:

  • Price per GB of bandwidth
  • Price per GB of storage
  • Number of databases
  • Number of domains and sub-domains allowed per account
  • Standard features - FTP access, Email features, hot link protection, etc.

After getting an idea for the standards pricing for these key items move on to quality research.

Quality Research

Now that you understand what features and prices are offered by certain hosts, how do you decide if these particular hosts are of exceptional quality? Ideally, you would have several recommendations from friends and associates that you could pick from.

However, if this is not the case, then you will have to research yourself. This step is extremely difficult because many web sites earn a huge commission by offering excellent reviews for certain hosts.

However, there are a collection of web host review sites that may be of use. Tizag.com is currently working on an impartial list of hosting providers and if you think that is a good deal, please tell us! Write to us on our Contact Form and let us know that you would be interested in our recommendations.

Server Latency

Hosts may advertise "lightning fast speeds" and "99.999%" uptime, but you can check for yourself how fast their servers are by doing a simple "ping" against their server. A ping sends a small packet of data and calculates the time it takes to get a response from the server. Ideally, you would ping a web site that you know is hosted by the company, to test the host's actual performance. To ping a web host on Windows XP just follow these instructions:

  1. Click Start
  2. Select Run
  3. Type "cmd" (without the quotes) and click OK
  4. In the command prompt type: ping www.sitenamehere.com
  5. You may also ping the IP address, for example: ping 127.0.0.1

The ping will then be executed four times (default value) and a small report of average, minimum, and maximum respone times will be displayed. Note: if you are constantly getting a "time out" message, even though you can access the web site via a web browser, the server may have pinging disabled.

Conclusion

We hope you found this guide useful and will tell others about it. Take care and watch out for those hosting lemons!

Sunday, June 7, 2009

What is SQL?

  • SQL stands for Structured Query Language
  • SQL allows you to access a database
  • SQL is an ANSI standard computer language
  • SQL can execute queries against a database
  • SQL can retrieve data from a database
  • SQL can insert new records in a database
  • SQL can delete records from a database
  • SQL can update records in a database
  • SQL is easy to learn

SQL is a Standard - BUT....

SQL is an ANSI (American National Standards Institute) standard computer language for accessing and manipulating database systems. SQL statements are used to retrieve and update data in a database. SQL works with database programs like MS Access, DB2, Informix, MS SQL Server, Oracle, Sybase, etc.

Unfortunately, there are many different versions of the SQL language, but to be in compliance with the ANSI standard, they must support the same major keywords in a similar manner (such as SELECT, UPDATE, DELETE, INSERT, WHERE, and others).

Note: Most of the SQL database programs also have their own proprietary extensions in addition to the SQL standard!


SQL Database Tables

A database most often contains one or more tables. Each table is identified by a name (e.g. "Customers" or "Orders"). Tables contain records (rows) with data.

Below is an example of a table called "Persons":

LastName FirstName Address City
Hansen Ola Timoteivn 10 Sandnes
Svendson Tove Borgvn 23 Sandnes
Pettersen Kari Storgt 20 Stavanger

The table above contains three records (one for each person) and four columns (LastName, FirstName, Address, and City).


SQL Queries

With SQL, we can query a database and have a result set returned.

A query like this:

SELECT LastName FROM Persons

Gives a result set like this:

LastName
Hansen
Svendson
Pettersen

Note: Some database systems require a semicolon at the end of the SQL statement. We don't use the semicolon in our tutorials.


SQL Data Manipulation Language (DML)

SQL (Structured Query Language) is a syntax for executing queries. But the SQL language also includes a syntax to update, insert, and delete records.

These query and update commands together form the Data Manipulation Language (DML) part of SQL:

  • SELECT - extracts data from a database table
  • UPDATE - updates data in a database table
  • DELETE - deletes data from a database table
  • INSERT INTO - inserts new data into a database table

SQL Data Definition Language (DDL)

The Data Definition Language (DDL) part of SQL permits database tables to be created or deleted. We can also define indexes (keys), specify links between tables, and impose constraints between database tables.

The most important DDL statements in SQL are:

  • CREATE TABLE - creates a new database table
  • ALTER TABLE - alters (changes) a database table
  • DROP TABLE - deletes a database table
  • CREATE INDEX - creates an index (search key)
  • DROP INDEX - deletes an index

Create a Database

The CREATE DATABASE statement is used to create a database in MySQL.

Syntax

CREATE DATABASE database_name

To get PHP to execute the statement above we must use the mysql_query() function. This function is used to send a query or command to a MySQL connection.

Example

In the following example we create a database called "my_db":

$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
if (mysql_query("CREATE DATABASE my_db",$con))
{
echo "Database created";
}
else
{
echo "Error creating database: " . mysql_error();
}
mysql_close($con);
?>


Create a Table

The CREATE TABLE statement is used to create a database table in MySQL.

Syntax

CREATE TABLE table_name
(
column_name1 data_type,
column_name2 data_type,
column_name3 data_type,
.......

)

We must add the CREATE TABLE statement to the mysql_query() function to execute the command.

Example

The following example shows how you can create a table named "Person", with three columns. The column names will be "FirstName", "LastName" and "Age":

$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
// Create database
if (mysql_query("CREATE DATABASE my_db",$con))
{
echo "Database created";
}
else
{
echo "Error creating database: " . mysql_error();
}
// Create table in my_db database
mysql_select_db("my_db", $con);
$sql = "CREATE TABLE Person
(
FirstName varchar(15),
LastName varchar(15),
Age int
)";
mysql_query($sql,$con);
mysql_close($con);
?>

Important: A database must be selected before a table can be created. The database is selected with the mysql_select_db() function.

Note: When you create a database field of type varchar, you must specify the maximum length of the field, e.g. varchar(15).


MySQL Data Types

Below is the different MySQL data types that can be used:

Numeric Data Types Description
int(size)
smallint(size)
tinyint(size)
mediumint(size)
bigint(size)
Hold integers only. The maximum number of digits can be specified in the size parameter
decimal(size,d)
double(size,d)
float(size,d)
Hold numbers with fractions. The maximum number of digits can be specified in the size parameter. The maximum number of digits to the right of the decimal is specified in the d parameter

Textual Data Types Description
char(size) Holds a fixed length string (can contain letters, numbers, and special characters). The fixed size is specified in parenthesis
varchar(size) Holds a variable length string (can contain letters, numbers, and special characters). The maximum size is specified in parenthesis
tinytext Holds a variable string with a maximum length of 255 characters
text
blob
Holds a variable string with a maximum length of 65535 characters
mediumtext
mediumblob
Holds a variable string with a maximum length of 16777215 characters
longtext
longblob
Holds a variable string with a maximum length of 4294967295 characters

Date Data Types Description
date(yyyy-mm-dd)
datetime(yyyy-mm-dd hh:mm:ss)
timestamp(yyyymmddhhmmss)
time(hh:mm:ss)
Holds date and/or time

Misc. Data Types Description
enum(value1,value2,ect) ENUM is short for ENUMERATED list. Can store one of up to 65535 values listed within the ( ) brackets. If a value is inserted that is not in the list, a blank value will be inserted
set SET is similar to ENUM. However, SET can have up to 64 list items and can store more than one choice


Primary Keys and Auto Increment Fields

Each table should have a primary key field.

A primary key is used to uniquely identify the rows in a table. Each primary key value must be unique within the table. Furthermore, the primary key field cannot be null because the database engine requires a value to locate the record.

The primary key field is always indexed. There is no exception to this rule! You must index the primary key field so the database engine can quickly locate rows based on the key's value.

The following example sets the personID field as the primary key field. The primary key field is often an ID number, and is often used with the AUTO_INCREMENT setting. AUTO_INCREMENT automatically increases the value of the field by 1 each time a new record is added. To ensure that the primary key field cannot be null, we must add the NOT NULL setting to the field.

Example

$sql = "CREATE TABLE Person
(
personID int NOT NULL AUTO_INCREMENT,
PRIMARY KEY(personID),
FirstName varchar(15),
LastName varchar(15),
Age int
)";
mysql_query($sql,$con);

What is MySQL

MySQL is a database. A database defines a structure for storing information.

In a database, there are tables. Just like HTML tables, database tables contain rows, columns, and cells.

Databases are useful when storing information categorically. A company may have a database with the following tables: "Employees", "Products", "Customers" and "Orders".


Database Tables

A database most often contains one or more tables. Each table has a name (e.g. "Customers" or "Orders"). Each table contains records (rows) with data.

Below is an example of a table called "Persons":

LastName FirstName Address City
Hansen Ola Timoteivn 10 Sandnes
Svendson Tove Borgvn 23 Sandnes
Pettersen Kari Storgt 20 Stavanger

The table above contains three records (one for each person) and four columns (LastName, FirstName, Address, and City).


Queries

A query is a question or a request.

With MySQL, we can query a database for specific information and have a recordset returned.

Look at the following query:

SELECT LastName FROM Persons

The query above selects all the data in the LastName column in the Persons table, and will return a recordset like this:

LastName
Hansen
Svendson
Pettersen

Essential Ingredients of Every Linux Hosting Plan

All of us are quite familiar with the website. A website normally comprises of domain name, web space and web pages. When you want to launch a website, first of all you will choose the domain name. After the selection of domain name the next step is to find best web hosting server on which you will be able to upload your files. Following are the main ingredients of every Linux hosting plan:
Control Panel
The most important and the major feature of any website has always been the control panel. Control panel empowers you with freedom to administrate your website. As per the agreed plan, you will be given access to control panel to manage your website and make necessary amendments.
Email ID’s
The POP3 email ids is one of the important ingredients of Linux hosting and you will be provided with plenty of email ids. The number of email ids depends on the size of your website.
FAT Accounts
FAT accounts brings you freedom, power and control on your website and you can freely upload the files, delete and up grade your website content, details or any other information. A good Linux plan will have many FAT accounts with the password. It is one of the important features of the Linux plan where the customers have been given access to make changes in the web site with the help of protected password.
Backup
Back-up too is an important feature of Linux hosting plan although users don’t give it much importance but it becomes very important in case of any setback.
Statistics
The success of any website depends on the number of the visits on the website. The statistics application will help you to review the number of visits and this is an essential feature is Linux plan.
Bandwidth
It is quite natural for you to choose the server with maximum bandwidth. A good Linux plan will provide you sufficient bandwidth.
Web Mail
If you are going to launch a website then email forms will be very effective. A good host must provide this feature so that the users are able to check mails. It should also provide download feature. These options will be availed by SMTP and web mail. Therefore it is recommended to have the feature of SMTP and web mail.

Web Hosting Reviews

Why Our Reviews Are Different?


There are hundreds of web hosting reviews websites out there; honest hosting reviews, user hosting reviews, best website hosting reviews and so on. Every one of them claims to have found the best top 5 web hosts with great uptime and lots of positive testimonials. But none of them reviews the web hosts based on the hosting packages! Different websites have different hosting needs; a web host can have a good hosting plan for hosting beginners while another web host can have the best plan for someone that needs dedicated hosting. We review the web hosting plans based on the personal hosting needs of each website.

Different customers have different needs, so why recommend the same web hosting plan?

Recommended Hosting Packages and Reviews

BEGINNER Hosting
Best-suited for small to medium websites, blogs, online family pictures, corporate presentational websites, or any site that doesn't require a lot of traffic.
ALL-PURPOSE Hosting (*)
The best "one size fits all" among the hosting offers; a hosting plan perfect for busy blogs, small e-commerces or any other similar websites.
DEDICATED Hosting
You should consider dedicated hosting when you have a large e-commerce website, a website that gets a lot of traffic or runs a lot of scripts.
VPS Hosting
VPS stands for Virtual Private Server and can be the first step from "leaving" shared hosting, if you don't want to manage a dedicated server.
Best TRAFFIC
Basically, as the name suggests, we looked for the best traffic/money ratios in hosting packages, while having all the other "standard" features as well.
ECOMMERCE Hosting
E-commerce websites are about catalogues with lots of pages of products' descriptions, memberships, online, secure credit card payments.


Why Trust Our Hosting Reviews?

When it comes to trust and uptime, our recommendations are based either on great personal experience with the web hosts or based on comments and reviews from clients and hosting professionals on top forums and discussion boards such as the WebHostingTalk forum. We listen to what other customers has to say about the host and we do NOT rank the web hosts based on how high is the affiliate commission!

Saturday, June 6, 2009

Web Host - Ecommerce

If you are thinking of starting an ecommerce web site, stepping through this Web Host Guide is critical. If you have read through this guide, start to finish, and follow the advice we have offered, you will be well on your way to choosing a quality host. Ecommerce is a much different business then the world has ever known. It is fast paced and those who cannot keep up are left behind. There are many reasons ecommerce sites fail, but hopefully the information here will help you avoid those issues that are under your control.

Free Hosting? Never!

If you are running a web site on a free host you had better rethink your business plan. If you do not have the 10 or so dollars a month to pay for a reliable web host, then it would be much better to wait and save up the money. Launching your business on such an unreliable service as "free hosting" would discredit your business and irritate your visitors. Some pitfalls of freehosting:

  • Pop ups - Many "free" hosts will contain pop up advertisements for their own site every time someone visits your site. Instead of people focusing on your product, they are immediatly distracted by this ad!
  • Unreliable - Free hosting subscribers are at the bottom of the pecking order when it comes to customer support, bandwidth, and server resources.
  • Cancelled - You may discover one morning that your web site is not loading, only to find out later that your hosting service has been discontinued. Free hosts reserve the right to remove you at any time.
  • No Domain - Many free hosting services do not give you a unique domain. Visitors will have no domain name to associate with your site and will instead have to remember an unreasonably long url, such as: http://www.example.com/freeService/YourSite/index.html, which is simply horrendous.

Shopping Carts

Shopping carts, as seen on Amazon.com and numerous other ecommerce web sites, are the key way to allow visitors to purchase items. Usually these programs are written in PHP, ASP, or CGI, which are all server side scripting languages. Installing these programs onto your web space is often as simple as a couple of clicks. Many hosts offer pre-configured shopping carts that can be installed through the control panel.

If you do not know much about installing scripts, be sure you choose a host that offers a quality shopping cart installation. On the other hand, if you are not afraid to configure your own shopping cart.

Web Host - Backup

Your server's hard drive crashed. A hacker compromised your account and deleted all your files. Your web host disappeared with your money and your data.

These catastrophic events happen without warning, and without discretion. If you are not prepared for the worst, your hard work might be lost forever. That is why it is of the utmost importance that you keep regular backups of your data. Do not worry, there are a variety of backup options to pick and choose from.

Backup Schedules

Depending on the type of site that you run, you will need to choose a backup option that fits your needs. If you run a forum, news site, or any other site with current information you will want a daily backup, at the very least.

However, if you operate a simple personal page, that has not changed in over a year, keeping a backup of your most recent changes will suffice. A good rule of thumb for the casual webmaster is to do a complete backup every week or so.

Manual Backups

The simplest way to backup your data is to download every file that exists on your account. This can be done with a simple FTP program by copying your main folder to your local hard drive.

A good backup practice is to create a "Web Backup" folder on your computer, with a sub-folder that states the date and time the backup was created. This way, if your host removes your account, or you somehow lose some or all of your files, you can choose a new host and upload your web site in its entirity. The downside to this backup option is the heavy usage of your monthly bandwidth, as you must download all your data each time you do a backup.

Note: downloading the main folder will not download the database on your server, you will have to ask your provider on the specifics about database backups

Automated Backups

Web hosts may or may not offer an automated backup solution. For those that do they usually follow one of the following backups plans, with higher costs associated with more frequent backups:

  • daily
  • every other day
  • weekly
  • monthly backups

As we stated before, depending on what type of web site you run, choose the best backup schedule for your needs.

Incremental vs Full Backups

There are two classifcations of backups: incremental and full.

  • Incremental Backup- The backups controller compares the existing backup to the data that you wish to backup. If it is an exact match between the two, then no additional files will be backed up. However, if you have added or edited any file, these files will be updated in the backup, thus the incremental name.
  • Full Backup - All files are written to the backup, even if they already exist in the most current backup.

Web Host - Uptime

Uptime refers to how often a site is available or responsive to web requests. The internet never sleeps, which means your web site needs to be up every second of every hour of every... you get the idea. A visitor could be arriving at your site's home page at any time of the day, so a web host with a high uptime percentage is critical.

Advertised Uptime

Nearly all web hosts will advertise and guarantee a "99.9%" or higher uptime percentage. However, these guarantees are about as trustworthy as a used car salesman, not very! If a host has a history of a great uptime performance they will post a history of their uptime performance, monitored by a 3rd party, such as Alertra or InternetSeer.

Additionally, web hosts that operates on a redundant network (more than one data line to the internet) will be more reliable than a web host that is running only a single data line.

Monitor Server Uptime

If you have already signed up for a web host you can use a 3rd party to constantly monitor your site's uptime and be instantly notified by email if your web site ever becomes unresponsive. InternetSeer provides a free monitoring system that will check your web site every 60 minutes. If your web site needs to be monitored more closely, both Alertra or InternetSeer have pay for monitoring plans that are very thorough.

Web Host - Statistics

Knowing the who, what, where, and how about your visitors is extremely useful for getting an idea of your user base. More specifically:
  • Who - By using someone's IP address it is possible to know where a web surfer is geographically located.
  • What - What pages did the surfer view on your web site?
  • Where - Was the surfer referred from another site, search engine? Do they have your site bookmarked?
  • How - How long was the surfer on your site?

All this information and more can be provided to you without troubling your visitor, i.e. no cookies need to be placed onto the visitor's computer to gather this data. With a decent statistics program you will be able to find out how many people have bookmarked your site, how long the average visit is, what are your site's most popular pages.

Stastistic Terminology

There is not much use to a detailed traffic analysis report if the terms mentioned are not understood by the reader. Below we have a glossary of web statistic vocabulary to make your web analysis reports more informative:

  • Uniques/Unique Visits - The number of unique visitors you had for the given time period. Example: if there was only a single person who visited your web site, and visited 1,000 seperate times in a day, the unique visits would just be one. The uniqueness is dependent on the IP address of the visitor.
  • Visits - The total visits, ignoring uniqueness, that a web site recieves in a given time period. Using the same example as above, the total visits would be 1,000 for the day.
  • Page Views - Each time a web page is loaded it is referred to as a page view.
  • Hits - Every server request is counted as a hit, so if you have a web page with 15 images, then there will be multiple(15+) hits per page view.
  • Direct Address & Bookmarks - This amount refers to the people who accessed your web site through their bookmarks or typed in your URL manually.
  • Referrer & Referral URL - The web address where the visitor followed a link to reach your web site. This is a great way to find web sites that have linked to your content!

Popular Statistics Programs

There are many reliable statistics programs available, ranging from the most basic to a complete suite geared towards businesses. Below is a list of popular statistic programs that meet various needs.

  • - It is one of the most basic of the statistic programs available, yet it is fully functional. Graphical and numerical data is displayed for monthly, daily, and hourly time spans. Additionally, you can keep track of your top referrers and the popular search terms that lead people to your site.
  • - AWStats improves on Webalizer by adding additional features coupled with a more professional interface. Added featres: track unique visitors, improved search engine monitoring, visit duration, and more. AWStats is one of the best free statistics program available.
  • - Urchin proves a comprehensive web analytic suite for those who need the most detailed information about web site traffic and visitor behavior. Such detailed information comes at a steep price (a license approaches the $1,000 mark) that makes this product aimed at companies and individuals with a substantial budget.

Web Host - Email

Email is the lifeline for communication between a web site's visitors and the web site's owner(s). Finding an appropriate set of email features on a given host plan should not be a problem, as most of the features we will discuss are an industry standard. Nevertheless, if email will be an important factor for your web site you should still keep your eye on email features.

Email Aliases

An email alias is simply the name associated with an email address. For example Bob works at www.example.com and his email alias is bob, so his email address is bob@example.com. Personal web site owners may get by with only a single email alias, while large corporations may require hundreds to thousands of email aliases for all of its employees. Check to see that the plan offers a sufficient quantity of aliases.

Email Redirects

When someone is fired from a company or multiple sectors of a web site are condensed down into one, it would be nice to combine the old email addresses into one as well. However, customers and friends may have already saved the old and outdated address(es), so many web hosts allow for you to set up email redirects that will forward any mail to an outdated address to a functioning address of your choice.

Spam Protection

There are a countless number of spam spiders that are tirelessly crawling the web looking for email addresses to add to their hit list. If a web site posts their email address on their web site they will receive spam without a question. To combat this spam many hosts come with anti-spam software that protects your inbox to some extent. If a web host does not have a spam filter or anti-spam software, we recommend that you continue your search for a quality hosting provider.

Spam Facilitation

Nearly all web hosts have a zero tolerance for individuals who wish to use their server's resources to send out massive amounts of spam. If you are a spammer and are looking for a web host, we know that finding a web host to fit your needs is darn near impossible. Instead we suggest you get a normal host and create a beautiful web site, with amazing content, and earn a living that way.

Wednesday, June 3, 2009

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.

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.

From Registering A Domain To Getting It Online

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.

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.

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.

Sunday, May 31, 2009

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.

Web Hosting Providers

To make your web site visible to the world, you'll have to store it on a web server.


Hosting your own Web site

Hosting your web site on your own server is always an option. Here are some points to consider:

Hardware Expenses

To run a "real" web site, you will have to buy some powerful server hardware. Don't expect that a low cost PC will do the job. You will also need a permanent (24 hours a day ) high-speed connection.

Software Expenses

Remember that server-licenses often are higher than client-licenses. Also note that server-licenses might have limits on number of users.

Labor Expenses

Don't expect low labor expenses. You have to install your own hardware and software. You also have to deal with bugs and viruses, and keep your server constantly running in an environment where "everything could happen".


Using an Internet Service Provider

Renting a server from an Internet Service Provider (ISP) is a common option.

Most small companies store their web site on a server provided by an ISP. Here are some advantages:

Connection Speed

Most ISPs have very fast connections to the Internet.

Powerful Hardware

ISPs often have powerful web servers that can be shared by several companies. You can also expect them to have an effective load balancing, and necessary backup servers.

Security and Stability

ISPs are specialists on web hosting. Expect their servers to have more than 99% up time, the latest software patches, and the best virus protection.


Things to Consider with an ISP

24-hour support

Make sure your ISP offers 24-hours support. Don't put yourself in a situation where you cannot fix critical problems without having to wait until the next working day. Toll-free phone could be vital if you don't want to pay for long distance calls.

Daily Backup

Make sure your ISP runs a daily backup routine, otherwise you may lose some valuable data.

Traffic Volume

Study the ISP's traffic volume restrictions. Make sure that you don't have to pay a fortune for unexpected high traffic if your web site becomes popular.

Bandwidth or Content Restrictions

Study the ISP's bandwidth and content restrictions. If you plan to publish pictures or broadcast video or sound, make sure that you can.

E-mail Capabilities

Make sure your ISP supports the e-mail capabilities you need.

Front Page Extensions

If you use FrontPage to develop your web site, make sure your ISP supports FrontPage server extensions.

Database Access

If you plan to use data from databases on your web site, make sure your ISP supports the database access you need.

Web Hosting Intro

How does the Internet work? How can I have my own Web Site?

What is a Web Host? What is an Internet Service Provider?


What is the World Wide Web?

  • The Web is a network of computers all over the world.
  • All the computers in the Web can communicate with each other.
  • All the computers use a communication protocol called HTTP.

How does the WWW work?

  • Web information is stored in documents called web pages.
  • Web pages are files stored on computers called web servers.
  • Computers reading the web pages are called web clients.
  • Web clients view the pages with a program called a web browser.
  • Popular browsers are Internet Explorer and Firefox.

How does a Browser Fetch a Web Page?

  • A browser fetches a page from a web server by a request.
  • A request is a standard HTTP request containing a page address.
  • An address may look like this: http://www.example.com/default.htm.

How does a Browser Display a Web Page?

  • All web pages contain instructions for display.
  • The browser displays the page by reading these instructions.
  • The most common display instructions are called HTML tags.
  • HTML tags look like this

    This is a paragraph.


What is a Web Server?

  • The collection of all your web pages is called your web site.
  • To let others view your web pages, you must publish your web site.
  • To publish your work, you must copy your site to a web server.
  • Your own PC can act as a web server if it is connected to a network.
  • Most common is to use an Internet Service Provider (ISP).

What is an Internet Service Provider?

  • ISP stands for Internet Service Provider.
  • An ISP provides Internet Services.
  • A common Internet service is web hosting.
  • Web hosting means storing your web site on a public server.
  • Web hosting normally includes email services.
  • Web hosting often includes domain name registration.

Saturday, May 30, 2009

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.