web blazonry web development scripts and tutorials
   PHP       Name Generators       Perl       CSS       Javascript       Java       MySql       How Tos       Resources   

How Tos Home

Free Linux Books
  Programming for Linux
  Sys & Network Admin
  On the Desktop

Articles
Tech Tips for Picking a Web Host

Database Tutorial (PHP & MySQL)

How to Instal Apache + PHP + MySQL

PHP vs. ASP vs. JSP

Introduction to Debugging

MySQL JDBC Drivers

Overview of Client Side

Margins Flush with Edges of Browser

Specifying Alternate Document to Print

Web App Security
  Who Submit That?
  Cookie Security
  Passwords
  Secure Web Development

Bookmark and Share





blazonry sponsors



Tips for Picking a Web Hosting Provider

Selecting a web hosting provider can be challenging. This article provides tips for selecting hosting and improving your chances of a successful hosting experience. I cover what to look for, what to watch out for, how to do research and due diligence, and include some actual stories.

No web hosting company is a perfect match for anyone, or has 100% perfect reviews. You will have to make trade-offs. Understanding the needs of a site with programming behind it requires a bit more research as well as a different set of criteria than many web hosting marketing materials and articles address.

Though this article is skewed toward PHP, MySQL, Apache Linux (LAMP) web hosting, it also addresses general issues discussed that are relevant to web hosting in general.

When you are starting out, you are likely looking for “shared web hosting.” Your site will not be the only site on the server. There might be 100 or 1000+ other sites on that server. This article is written about shared web hosting.

To a web hosting provider, the ideal customer has a few static HTML files and nearly no visitors. Your dynamic content places more demands on the server than static HTML does. Even robots alone chew up web hosting resources when they visit all the pages that are created dynamically that don’t “exist” as static HTML pages.

Web Hosting Software Needs to Support Your Applications

Think about what you will do with your site. Check which versions of PHP, MySQL and Apache you require (what I will refer to as “system software.”) Identify configuration settings you might need for Apache and PHP. For example, I was working on a CakePHP site that required changes to php.ini to enable shell_exec, exec, readfile, ini_set, set_time_limit and getmypid. Will your prospective web hosting allow this?

If any web hosting provider does not meet your needs, move on. Some web hosting companies do not upgrade system software often. This is partly because it can wreck havoc with existing customers by breaking their apps which causes much trouble for their expensive and limited support staff. No matter what the sales folks say.

Web Hosting Server Settings

Server settings refer to settings that apply to all sites on the web hosting company’s server. Server settings are preset by the web hosting company. This includes which Apache modules are loaded, the Apache config, which PHP extensions and options are compiled into PHP, and the php.ini settings.

Look again at what you will run on your site. Be aware that many apps and tutorials assume you have total access to the web hosting server and can configure it however you want.  If you need a different setting, option, extension or module, you are doomed. Don’t count on the web hosting provider changing any settings you request. Even if the customer support rep says they would change a setting for you, the tech staff might have real reasons why they will not change it. Look at this from the web hosting company's perspective: there are a great many customers getting web hosting on a single server and the server needs to be secure, stable and provide good up-time.

A story from my personal experience is that I wanted to do something that required CURL for PHP, but my web hosting company at the time did not compile it into PHP. My fatal issue was right there in the app’s readme:
To use PHP’s CURL support you must also compile PHP --with-curl[=DIR] where DIR ...

Forunately, CURL is provided more than it used to be. My point is to check and not assume something you want is available. Here are more real examples to illustrate the importance of getting web hosting that has the settings you require at the time you sign up.

  • Web hosting requires GD Graphics Library be compiled into PHP. You require the GD graphics library which enables you to dynamically create and edit images server-side. PHP needs to be compiled with the GD library of image functions. Maybe it is already compiled in the version running on the web hosting server, but maybe it is not.


  • App needs web hosting that allows editing of .htaccess file. The readme says log into your server and edit your .htaccess file as follows...  Sounds innocent enough.  .htaccess files allow the user to make configuration changes to the server on a per-directory basis when the user does not have root access on the server system. However, some web hosting companies have the Apache directive set to ignore .htaccess files (AllowOverride is set to None).  Web hosting companies have valid reasons for doing so. Performance and security suffer when it is allowed. (Details in the official Apache docs.)


  • Libraries, toolkits and special settings must be compiled into PHP by web hosting company. From an actual readme.txt:
    Compile PHP with special options to get mssql and fdf support in php under apache. First, you’ll need to download the FDF toolkit from Adobe and the freetds libraries for mssql support. To compile, use these settings...

  • Application requires permissions not granted by shared web hosting: Here is an excerpt of a blog post written by someone who signed up for his first web hosting. (Unfortunately, the link to the full post is no longer valid and I removed it.)
    Then here came the trouble. The web service I have now only includes FTP, PHP/perl, Blog, and other common tools. They are preset and I have no right to change any settings. I can get ssh/shell access if I am willing to fax them a photo ID. But I would rather forsake that right.

    However, in both Slashdot’s and Squirrel’s scenarios, they assume that you have complete access to the web server with administrator authority. That is, you are the person who set up the server. At least, I guess if I bought a dedicated server, I might have had these privileges. Otherwise, I am doomed.

Downside of Cheap Web Hosting

Generally, you get what you pay for with web hosting. Decide how important your site is. Web hosting for a personal or hobby site can afford more downtime and problems than web hosting for a site you are trying to make money with. Beware. Most free web hosting companies put advertising on your site. You have no control over what ads or pop-ups appear. That said, servers are cheaper than they have ever been and cheap web hosting can work out.

Number of Sites Hosted Per Server

How many sites are on a single server? More customers and sites on one server reduceds costs, but under heavy loads, server response times are slow. Look closely at package deals where you get web hosting for unlimited sites at a flat-rate price. I learned the hard way about this issue. I once had a web hosting provider that loaded to many customers onto a server. The server went down often. When it was not down, it was painfully slow.

Traffic (Bandwidth)

This is less an issue than it used to be as hardware costs have come down. If a hosting provider gives you different prices for different bandwidth tiers, here is how to consider this issue. You likely will have less traffic than you think when you are getting started. I suggest going with a provider that offers lower traffic plan that saves you money now and that allows you to upgrade if, and when, you need it.

How much bandwidth to sign up for depends on such factors as the nature of your site. For example, is your site mostly HTML, or are there lots of PDFs, large Flash files, photos, videos, podcasts, etc.?  Blazonry can get alot of visitors, but because the site is mostly HTML, the bandwidth needs are relatively low. If you do have high bandwidth needs, you can consider hosting the high bandwidth files to sites like YouTube for video.

Web Hosting Reviews

Do a Google search of the web hosting companies you are considering. Also, visit forums like WebHostingTalk and WebmasterWorld. You’ll likely find lots of postings. Use sites that review and rate hosting.

Support

I like web hosting companies that provide:
  • online FAQs, help, forums. Many problems can be fixed easily (and you are a tech person who wants to learn the details of web hosting, right?).


  • online support 24/7 for serious problems


  • quality trouble ticket system where you can prioritize the severity of your problem. That way, big problems can be addressed first. Little problems can wait until the big problems are taken care of.
One common recommendation I disagree with is phone support. I prefer online support because I can paste detailed text about the problem, error messages and sometimes offer a possible cause or solution. If you really want phone support, be willing to pay for it. It’s more expensive to the web hosting company.

The Standard Stuff (Applies To Any Web Hosting)

  • Amount of disk space — disk space is so cheap now that most disk space provided with web hosting packages is more than adequate. Check it against the type of files you will upload. Remember to allow enough disk space for email accounts especially if you use web-based email (as opposed to downloading your email to your desktop).


  • Access — FTP only, or do you need shell (SSH) access?


  • Reliability — uptime guarantees are mostly worthless because web hosting companies are reluctant to refund money. They will find all kinds of reasons why the situation is not covered by their guarantee. Use uptime numbers as a relative measure to compare web hosting plans. Uptime of 99% is lousy. 99.5% is the minimum I would accept for hosting a general site. If web hosting cannot even meet that relatively low number, look elsewhere.


  • Email — number of accounts, amount of storage space, etc. standard stuff. If you have a favorite web-based email, check if it is provided as part of the web hosting package.


  • Control Panel like cPanel or Plesk — this simplifies working with your site. Lets you add, delete, and manage email addresses, change passwords, check your traffic stats, and more through the use of a browser and nice user interface. Handy and helpful even for non-beginners of web hosting.


  • Server operating system — I am biased in favor of Linux hosting. It is awesome and generally cheaper. Quality Linux web hosting is wide-spread.


  • Payment plan — Monthly, quarterly or annual. Generally you want to start out with a short-term plan in case you are unhappy with your web hosting. However, one time signed up for an annual plan and the web hosting company was great to work with. I had done my research and due diligence. However, I think I would not pay annually in the future. Companies change.

Web Hosting Summary

With web hosting, jump in. Just do it. It’s not that hard to move to a new web hosting provider if you are unhappy. Better to have web hosting for your site than to keep your development efforts limited to “localhost.” Hope my years of experience with web hosting, ranging from good to bad hosting, help you.


 

Newest Pages
Test Google Ads Ver. 2
Free Linux Admin Books
Free Linux Books for Programmers
Free Books for Linux on the Desktop
Free PHP Books
Free JavaScript Books
Free Java Books - Advanced
Free Java Books - Basic
Free Perl Books
Free Python Books
Quote of the Day (PHP)
Debugging Part 2
How to Test Google Ads
Most Popular Pages
Baby Name Generator
U.S. Name Generator
Wu Name Generator
Popup Windows (JavaScript)
Upload and Resize an Image (PHP)
How To Install Apache + PHP + MySQL
Intro to Web Databases (PHP, MySQL)

Least Popular Pages
iNews Applet (Java)
Java Resources
Site Monitor (Perl)
PHP Resources
 
 

  privacy policy     ||     © 1997-2016. astonishinc.com   All Rights Reserved.