Server-Side Scripting

Any scripting or programming that runs on a web server is referred to as server-side scripting. This could be anything from processing a form, managing an online purchase, registering a new user, or even something like booking a hotel room. As websites have matured, technologies that surround server-side scripting have matured as well. In the early days of the web, most server side scripting was done with what we call CGI Scripts. CGI stands for Common Gateway Interface, and it was created as a way to run scripts from programming languages like C+ or Perl on websites. Since then, a multitude of programming languages and frameworks, like PHP, Java, NET, Cold Fusion, and others have given developers a wider array of tools to choose from when they're creating dynamic sites.

The Importance Of PHP

What makes PHP so important to the development of the web was its pairing with Apache servers and MySQL databases. By using open source software, now anyone could create a powerful web server that could build and host robust dynamic sites. And since PHP is relatively easy to learn and it's so widely hosted, it really has become the most widely used language for building dynamic sites. In fact, many complex web applications, like WordPress, are built in PHP. Like most server-side languages, the PHP code is embedded within a page's HTML. The code is then processed on the server and then replaced by HTML or some other content. To the end user, the PHP code itself is invisible.

Other Popular Server Languages

In addition to PHP, there is a multitude of popular server-side languages that are used to build dynamic sites and applications. JSP stands for Java Server Pages and is a powerful server side application tool that's been developed by Sun. As part of the larger Java Framework, JSP can be an amazingly powerful development tool. And as you would imagine, it's a favorite of traditional Java programmers. JSP is very similar to server site applications in that the JSP code is embedded directly into the HTML, and then processed on the server. .NET itself is not a server side application. .NET is the name used by Microsoft to identify its entire application framework. Now, if you're working with the developer to develop web based applications.

Dealing With Data

Many websites require the storage and retrieval of data. A popular message board would need to store things like usernames and passwords. Blogs would need to store blog posts and comments, and something like a travel site would need to store information about specific tours, some of the other things that they'd be working with. Well, online data can be handled in a number of different ways. Typically, data can be stored locally on the client. Stored in simply structured text files or stored within a database. Several factors drive which method of data storage is ultimately used, such as the type of data that needs to be saved and the needs of the site regarding data, retrieval, and usage. Due to security concerns, browsers have been limited to writing small text files called cookies, on client machines. These text files could store small items like user preferences or session IDs that could enhance the user experience but Really did very little in terms of storing actual data.

Using SQL Databases

Web applications typically use SQL or some form of it to update, create, delete or retrieve information from a relational database. Relational databases are the most common form of data storages by web applications. They store related data in one or more tables. If you've never dealt with a database before, just picture a spreadsheet. Data is stored in rows and columns with the columns describing the data and the rows storing the data itself. Using simple SQL queries web applications can parse and use this data within the application. SQL uses simple logical syntax that's very easy for most people to learn. Common statements like select, insert, update, and delete make it really easy to retrieve or manipulate data, and SQL queries can be refined to filter data sets even further or even join related tables together to create a larger data set.

Content Delivery Networks

A content management system, or CMS, is an application that helps control the creation, publishing and archiving of your site's content. A good CMS can speed up the creation of sites, make updating and create new content easier and less technical, create groups of users that have varying degrees of control over your site's content and easily allow added site functionality by installing pre-built modules or extensions.Content Delivery Networks often referred to as CDNs, are a way of delivering content online over a distributed network of servers. This is usually geographically diverse in order to provide local access to users all over the world. Unlike traditional web hosting where content is hosted on a single server, CDNs take content and distribute over a huge network. Often this will be thousands of servers located all over the world. This means as requests are made for the content, the network can share the load and serve content based on the closest location. This means that the delivery of the content and makes it easier for sites to manage heavy traffic or spikes in requests.