In the very beginning when people just started using web pages, in most cases they used to run on such machines as UNIX. Exclusively, almost all web pages were static. Not long time ago, the standard file extension was considered HTML. Then many people started using their personal computers which were running Windows/DOS as web servers. That time it was a problem to have four letters in a standard file extension HTML. The majority of personal computers decided to follow the naming convention 8.3 because it allowed having three letters in the file extension. This is how two standard file extensions appeared: HTML and HTM. Simply by looking at such file extensions, you could understand whether websites were running on Windows or UNIX. Now, there is no distinction at all. This is the choice of every webmaster. For example, you can run off the server UNIX and still use HTM as your file extension.
Web pages which have been tagged with SHTML identify that Server Side Includes is used on the following server. Do not forget that both HTM and HTML are static. Your file gets lifted off the disk of the server and is sent to a certain client. Using SSI, you make it possible for a web page to contain tags. The indicate that any other file is supposed to be inserted in the place of a certain tag in the already existing web page. As it was said before, this web page gets lifted off the disk of the server and it makes the substitutions properly indicated. Finally, your final page is sent to a certain client. This is the easiest way to modify such things as footers and headers on web pages across any kind of website.
Now, let’s find out what ASP is. ASP is the abbreviation of Active Server Pages which is, in fact, a modern technology of Microsoft which is the most flexible one. Such web pages contain the code Visual Basic. The server can execute this code while lifting the web page off the disk. Using this code, it is very easy to run various programs and pages of various custom formats which are based on the ID of a user, you can read any kind of databases, etc. Such flexibility is precious. However, this approach has a side effect. Once a web page has the code, it might have bugs. This might cause a page crush. Facing any issues with file extensions, you can find a lot of information at Wikiext. You have a full freedom, but you have to be responsible for the final result.
Nowadays, you will not surprise anyone with such file extensions as PHP and JSP. JSP is a modern addition to the suit Java Enterprise and it stands for Java Server Pages. This is a great response to ASP. While PHP stands for Personal Home Page. This is a common language used with Linux. There is also a common file extension PL which stands for a scripting language PERL. It has only the script PERL and it is used to build web pages on the fly.