Dynamic Web Pages
Dynamic Web pages are “built” at run-time, i.e., when the Web page is accessed through a Web browser, by dynamically extracting content from a data source and by using such content to fill in predefined page templates.
Historically, hypertext navigation was meant as a way to move among “static” documents, i.e., Web pages whose HTML code includes both the content to be presented and the markup tags determining content rendition. Real-life Web applications however require the capability of serving to the users’ pages that dynamically publish content coming from one or more data sources. For example, the content of the home page of a news magazine is refreshed daily, by extracting the latest news from the news repository. This requirement goes beyond the original capabilities of the HTTP protocol, which is designed to exchange requests and resources between the browser and the server and not to govern the process by which the desired resource is built.
Some server-side technologies were therefore introduced to overcome these limitations and enable the construction of Web pages “on the fly.” The most common solution is to adopt server-side scripting technologies (such as JSP or PHP), which enable inserting into an HTML page template some programming instructions that a server-side program executes to compute the contents to be extracted dynamically from the application data source. The result sent back to the client is then a properly formatted HTML page, including the extracted contents.
Other solutions imply the extension of the Web server, through execution engines (e.g., Java Servlet API) able to serve the requests for the dynamic construction of Web pages.