Server-side scripting

  • Server-side scripting is a server technology for creating the behavior of a Web application on the server-side.
  • Unlike client-side scripting where scripts are run by the browser, server-side scripts are executed solely on the server through a server-side scripting enviornment (Web application server or Web server extension) and the output is returned to the browser as plain HTML. 
  • A web application server is a software framework dedicated to the efficient execution of procedures (programs, routines, scripts) for supporting the construction of Web applications. The server acts as a set of components accessible to the web developer through an API defined by the framework itself.
  • The Web application server integrates with a Web server which send the generated HTML to the browser. Sometimes the application server and web server are integrated within a single piece of software.

Functions of Server-side Scripts

  • Configure Web application enviornment
  • Manage site design
  • Generate dynamic web pages
  • Process business logics
  • Connect to databases
  • Control user interactions
  • Provide Web application security

Web server

  • A Web server handles the HTTP requests and responses. 
  • When the Web server receives an HTTP request for an HTML page, it responds with an HTTP response with the HTML page. 
  • When the Web server receives an HTTP request for an scripting page, it will delegate the processing to a corresponding Web application server.
  • The Web server doesn't provide such functionalities as transaction processing, database connectivity, and messaging.

Server-side Scripting Enviornment

  • Server-side scripts used to be done through CGI (Common Gateway Interface).  Today there are many scripting enviornments available for faster and more robust server-side scripting.
  • There has been a widespread debate among Web developers as to which scripting enviornment is better.
  • The server-side scripting enviornments can be compared by development features. However, these features and benchmarks can change, as these scripting enviornments evolve and improve over time.
  • The following is a list of common factors to be used in comparison:
    • Platform 
      • single or cross platforms
      • performance issues
      • security issues
    • Database connectivity 
      • database connectivity 
      • database interoperabillity
    • Scripting language
      • general vs. special purpose
      • simplicity vs. flexibility
      • open source vs. closed source
    • Development tools
      • has strong IDE visual studio with lot of controls which gives privilege to programmers to work with ease and faster as compared to other programming languages. (See Microsoft Web Platform)
      • There are number of different IDE availables for PHP, developers have to look for the best one.
    • Separation 
      • behavior (business logic and scripting language), structure (HTML), and presentation (CSS)
    • Security
      • built-in security
      • known security issues