You should use my checklist when shopping for a web host, but below is a list of what I think are "essential" services to have in a hosting account.
- Secure shell access (putty, telnet, etc.). Most lower-level hosting plans don’t offer this, instead offering a control panel that can do many things you would use shell access to do. If you don’t plan to offer any intermediate to advanced features, you may be able to do without shell access, but if you do this is a must.
- FTP access (almost always available). I haven’t actually seen any plans that don’t provide FTP access so…
- PHP. The key consideration with PHP is whether the installation is CGI or CLI (CLI is far better IMHO, especially if you want to do any scripts via cron). You will also be VERY happy if you can edit the php.ini file (usually you can with virtual server accounts, usually not with shared accounts). If you can’t edit the php.ini file, make sure that you can use .htaccess files by directory (see below).
- .htaccess. An .htaccess file allows you to override default webserver software (i.e. Apache) settings to suit the unique needs of your scripts. Most often you are messing with a PHP setting (like global variables, addslashes, timeout, etc.), with redirects and/or passwords.
- MySQL . Along with MySQL is the must-have open source software phpMyAdmin. You can easily install this yourself, but some host providers have it installed automatically for you.
- CGI. It’s a good idea to have CGI capability, preferably the kind that is supported in multiple directories. To be honest, though, this is quickly becoming a "nice-to-have" feature for me as the CGI scripts I have run in the past now usually have PHP equivalents.
- SSL. A must-have if you want to do e-commerce transactions otherwise you can probably do without it.
- Email. Pay attention to the number of POP accounts and aliases, IMAP access (a real must-have for email newsletter software like phpList), redirect to a script, and auto responders.
- DNS configuration. You want to make sure that your account is setup with SenderID, SPF, and/or DKIM. If not, make sure that getting it setup is within your control.
- Regular backups. You can do this yourself, but you won’t so it’s nice if the host does it for you.
- Responsive tech support. No matter how good your hosting provider is you will invariably need to contact tech support occasionally. You may even wish to do so when evaluating your "short list" of provider choices. Things to consider:
- Is there phone access and if so, how long does it take to get someone on the line?
- Is there a trouble ticketing system employed?
- Is there an escalation process in place for unsatisfactory service?
- Log Files. If your provider isn’t providing access to raw log files you will be limited in your choices of web analytics software. Also, make sure your files are in extended log format or that you have that as an option at least.
- Dedicated IP Address. This is a good idea regardless, but especially if you plan to send any kind of email newsletters. And, make sure to ask your soon-to-be-host for it to be checked first in the RBL or Spamhaus Databases. Most hosts will re-use and re-issue IP addresses from former clients. You want to make sure that you aren’t given an IP address that was blacklisted because of some bad behavior on the part of a previous owner/user. Finally, make sure that the IP you will be assigned isn’t a bogon.
Subject: Choosing a Web Host Provider