Share this page:
Early web sites consisted of HTML and CSS files. These static sites were good for serving the same content over and over again, but they aren't interactive. Scripting languages can be used to make sites that display content dynamically.
In dynamic sites, when a web server receives a request from a client it executes a script, and sends output from the script back to the client. The script's output must be in the format of an HTML page. This allows for interactive sites like social networks, forums and e-commerce sites, where users can post comments and send messages to each other.
The following languages are often used to develop web applications:
Data in dynamic sites is often stored in a database. There are many databases available, and they normally fall into two categories:
NoSQL datbases are used to handle huge data sets, and data that's less structured than data in a typical relational database.
There are many combinations of servers, programming languages and databases. One combination is so common it has it's own acronym, LAMP, which stands for Linux Apache MySQL and PHP. Python or Perl can be used instead of PHP.
Nginx can be used instead of Apache. This is referred to as a LEMP stack (the 'E' comes from 'Engine-x'). This site is built on a LEMP stack running Linux, Nginx, MySQL and Python.
A framework is a library written in a particular programming language that can be used to build complex web sites and custom applications. Frameworks have a programming API that can be used to do things like process HTTP requests, render/generate pages, manage templates and manage sessions.
An application can usually be used without needing to know how to write code because they have a web-based user interface. Examples of applications include Content Management Systems, forums, or even social networks. Many frameworks and applications can be extended with plug-ins.