Scripting Magic
While it is possible to install pretty much any kind of web technology into any server setup, you will find that some combinations of server and scripting languages work better than others. Here I will go through the more common web technologies and discuss how they are effected by various server environments.
Perl
Perl has been around long enough to have wide support across many of the various server platforms, some modules being specific to certain builds of Perl dependant on the server operating system. It would be worth taking a look at the operating specific modules if you intend to make use of them. To minimize the problem of cross platform inconsistencies, I would recommend that you develop your Perl scripts in the same sort of environment as the live server you will be uploading them to; particularly if you use system specific functions or modules.
Out of all the possible scripting languages available today, Perl is the most frequently supported by hosts that offer scripting capabilities. Unless you are utilizing system or server specific modules, your use of Perl should not restrict your choice of hosting account.
Perl is particularly suited to running on an Apache server; Apache modules such as Mod_Perl have been designed to speed up the execution of Perl scripts. The Windows version of Perl is know as ActivePerl, and while Perl will run happily on a Windows machine there are a few subtle differences with the way that some of the functions work.
PHP
PHP comes in two flavors, you can install it as an Apache module (which is great if you have Apache) or you can run it as a stand-alone CGI application. The CGI application is usually slower than the Apache module, so if you want to speed up your PHP scripts it is usually best to go for PHP installed on an Apache server.
It would be worth noting that PHP is not as well supported as Perl across the operating systems, although all the major players with regards to those used for hosting are covered. PHP also has functions that are specific to Apache and particular databases; file system functions are likely to cause problems with Windows systems, as many are *nix specific. Fortunately these functions are relatively few and are noted in the documentation.
While PHP, when compared to Perl, is still not as widespread on the web, its growth in recent times can be attributed to both its open source background and exposure to a wider audience. Being rather more straightforward to use than Perl, and with better support for interaction with remote servers compared to ASP, I would expect the number of people using PHP to grow.
At the moment, most PHP hosting facilities are provided on *nix systems that are running Apache, so PHP developers are more likely to find a Unix based host that will meet their requirements. Unless you are making heavy use of ASP, it would probably be a good idea to go for a *nix system running Apache if you require the use of PHP; after all, the Apache module was specifically designed to speed up the execution of PHP.
Active Server Pages (ASP)
ASP is essentially a Microsoft invention, and until the advent of projects such as Chili!Soft ASP, Instant ASP and the Apache ASP module, it was limited to the Microsoft IIS server family. ASP support is fully integrated into the IIS servers and so the chances are if you know that you are hosted on IIS (which is typical for Windows machines) then you should be able to run your ASP scripts.
If a host is offering support for ASP on a *nix machine then they are likely to be using Chili!Soft ASP (I've yet to find a host that uses either of the other two solutions). Be aware however, that this is not true ASP support; there are several important differences that should be taken into account if you intend to migrate your ASP scripts from one platform to another.
ASP 3.0 introduces features (namely the Server.Transfer method) that allow for dynamically including files based on server variables (which is a common request for ASP developers). Unfortunately, ASP 3 is only supported from IIS 5 (which is a feature of Windows 2000 machines), and as of yet has not been made available to users of earlier products. ASP developers that are using Windows 98 or Windows NT machines for testing their ASP pages will have to limit their use of the new ASP features if they wish to continue testing "in house".
FrontPage Extensions
Not a scripting language in it's own right, but they do offer some basic CGI interaction on sites so they are worth a mention. While they are associated with the Microsoft FrontPage series, they are not limited to Windows servers as you might think.
FrontPage Extensions are merely just an extension of the FrontPage program. The files, when installed on a server, allow for the program to interact with the server; it can upload your entire web site without you having to know anything about FTP. Other features of the extensions allow you to add some limited functionality to your site, for example you can have your visitors leave messages on a comments page, or make your entire site searchable without needing to know any scripting languages or install any scripts.
Having said that, if you require FrontPage support from your host, make sure that you have the right extensions installed for the product you are using. Trying to use one of the latest features of the extensions when they are older than your program could lead to problems.
