SERVER-SIDE WEB DEVELOPMENT.  Refers to software development for applications in which the majority of processing occurs on one or more servers (and.

Slides:



Advertisements
Similar presentations
1 CGICGI Common Gateway Interface Server-side Programming Lecture.
Advertisements

DT228/3 Web Development WWW and Client server model.
Java Servlet & JSP © copyright 2005 SNU OOPSLA Lab.
Languages for Dynamic Web Documents
Copyright 2004 Monash University IMS5401 Web-based Systems Development Topic 2: Elements of the Web (g) Interactivity.
Server-Side vs. Client-Side Scripting Languages
ASP Tutorial. What is ASP? ASP (Active Server Pages) is a Microsoft technology that enables you to make dynamic and interactive web pages. –ASP usually.
Introduction to ASP.NET. 2 © UW Business School, University of Washington 2004 Outline Static vs. Dynamic Web Pages.NET Framework Installing ASP.NET First.
Introduction to Web Application Architectures Web Application Architectures 18 th March 2005 Bogdan L. Vrusias
Outline IS400: Development of Business Applications on the Internet Fall 2004 Instructor: Dr. Boris Jukic Server Side Web Technologies: Part 2.
Introduction to Web Based Application. Web-based application TCP/IP (HTTP) protocol Using WWW technology & software Distributed environment.
Copyright © 2002 Pearson Education, Inc. Slide 4-1 Choosing the Hardware for an E-commerce Site  Hardware platform  Refers to all the underlying computing.
Dynamic Web Pages Bert Wachsmuth. Review  Internet, IP addresses, ports, client-server, http, smtp  HTML, XHTML, XML  Style Sheets, external, internal,
1 CS6320 – Why Servlets? L. Grewe 2 What is a Servlet? Servlets are Java programs that can be run dynamically from a Web Server Servlets are Java programs.
Website Development with PHP and MySQL Introduction.
1 Java Server Pages Can web pages be created specially for each user? What part does Java play?
Mgt 240 Lecture Website Construction: Software and Language Alternatives March 29, 2005.
2440: 141 Web Site Administration Web Server-Side Programming Professor: Enoch E. Damson.
1 CS428 Web Engineering Lecture 18 Introduction (PHP - I)
Part or all of this lesson was adapted from the University of Washington’s “Web Design & Development I” Course materials.
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
Quick Tour of the Web Technologies: The BIG picture LECTURE A bird’s eye view of the different web technologies that we shall explore and study.
WEB DESIGN SOME FOUNDATIONS. SO WHAT IS THIS INTERNET.
Server-side Technologies
Server Side Scripting Norman White. Where do we do processing? Client side – Javascript (embed code in html) – Java applets (send java program to run.
Sys Prog & Scripting - HW Univ1 Systems Programming & Scripting Lecture 15: PHP Introduction.
1 Web Developer & Design Foundations with XHTML Chapter 6 Key Concepts.
INTRODUCTION TO WEB DATABASE PROGRAMMING
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Introduction to ASP.NET. Prehistory of ASP.NET Original Internet – text based WWW – static graphical content  HTML (client-side) Need for interactive.
Dynamic Web Pages (Flash, JavaScript)
CIS 285 ROBINSON WINTER 2005 CIS 285 Web Application Development with Java CIS 285 Sinclair Community College Instructor: Mary Robinson.
Chapter 1: Introduction to Web
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
Introduction to Internet Programming (Web Based Application)
ASP.NET Web Application and Development Digital Media Department Unit Credit Value : 4 Essential Learning time : 120 hours Digital.
Website Design Lecture 1. Outline Introduction to the module Outline of the Assessment Schedule Lecture Static XHTML, client side and server side Why.
Implementation - Part 2 CPS 181s March 18, Pieces of the Site-building Puzzle Page 180, figure 4.1.
Web Pages with Features. Features on Web Pages Interactive Pages –Shows current date, get server’s IP, interactive quizzes Processing Forms –Serach a.
Active Server Pages  In this chapter, you will learn:  How browsers and servers interacted on the Internet when the Internet first became popular 
Kingdom of Saudi Arabia Ministry of Higher Education Al-Imam Muhammad Ibn Saud Islamic University College of Computer and Information Sciences Chapter.
_______________________________________________________________________________________________________________ E-Commerce: Fundamentals and Applications1.
Chapter 6 Server-side Programming: Java Servlets
1 CS122B: Projects in Databases and Web Applications Spring 2015 Notes 03: Web-App Architectures Professor Chen Li Department of Computer Science CS122B.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Web Pages with Features. Features on Web Pages Interactive Pages –Shows current date, get server’s IP, interactive quizzes Processing Forms –Serach a.
ASP (Active Server Pages) by Bülent & Resul. Presentation Outline Introduction What is an ASP file? How does ASP work? What can ASP do? Differences Between.
ASP.NET in Definition: 1.ASP.NET is a web application framework developed and marketed by Microsoft to allow programmers to build dynamic web sites,
Web Development Process The Site Development Process Site Construction is one of the last steps.
WHAT IS SERVER SIDE SCRIPTING? Server-side scripting is a web server technology in which a user's request is verified by running a script directly on the.
Web Technologies Lecture 8 Server side web. Client Side vs. Server Side Web Client-side code executes on the end-user's computer, usually within a web.
Scripting Languages Client Side and Server Side. Examples of client side/server side Examples of client-side side include: JavaScript Jquery (uses a JavaScript.
Introduction and Principles Web Server Scripting.
ASP. ASP is a powerful tool for making dynamic and interactive Web pages An ASP file can contain text, HTML tags and scripts. Scripts in an ASP file are.
 Web pages originally static  Page is delivered exactly as stored on server  Same information displayed for all users, from all contexts  Dynamic.
How CGI and Java Servlets are Run By David Stein 14 November 2006.
Bayu Priyambadha, S.Kom. Static content  Web Server delivers contents of a file (html) 1. Browser sends request to Web Server 3. Web Server sends HTML.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
Java Server Pages Can web pages be created specially for each user?
Web Programming Language
Scripting - Client-side vs. Server-side Scripting
Web Concepts Lesson 2 ITBS2203 E-Commerce for IT.
WWW and HTTP King Fahd University of Petroleum & Minerals
Introduction and Principles
PHP / MySQL Introduction
Dynamic Web Pages (Flash, JavaScript)
Chapter 27 WWW and HTTP.
Introduction to Servlets
Web Application Development Using PHP
Presentation transcript:

SERVER-SIDE WEB DEVELOPMENT

 Refers to software development for applications in which the majority of processing occurs on one or more servers (and not on the client’s machine).

 is a technique used in website design which involves embedding scripts in an HTML source code which results in a user's (client's) request to the server website being handled by a script running on the server-side before the server responds to the client's request. Scripts can be written in any of a number of server-side scripting languages that are available. Server- side scripting differs from client-side scripting where embedded scripts, such as JavaScript, are run client-side in a web browser.website designscriptsHTMLsource codeclient-side scriptingJavaScriptweb browser

 Server-side scripting is usually used to provide an interface for the client and to limit client access to proprietary databases or other data sources. These scripts may assemble client characteristics for use in customizing the response based on those characteristics, the user's requirements, access rights, etc.  Server-side scripting also enables the website owner to reduce user access to the source code of server- side scripts which may be proprietary and valuable in it. The down-side to the use of server-side scripting is that the server website computer needs to provide most of the computing resources before sending a page to the client computer for display via its web browser.

 Netscape introduced an implementation of JavaScript for server-side scripting with Netscape Enterprise Server, first released in December, 1994 (soon after releasing JavaScript for browsers).JavaScriptNetscape Enterprise Server  Server-side scripting was later used in early 1995 by Fred DuFresne while developing the first web site for Boston, MA television station WCVB. The technology is described in US patent The patent was issued in 1998 and is now owned by Open Invention Network (OIN). In 2010 OIN named Fred DuFresne a "Distinguished Inventor" for his work on server-side scripting.Fred DuFresneWCVBUS patent Open Invention Network"Distinguished Inventor"

 Today, a variety of services use server-side scripting to deliver results back to a client as a paid or free service. An example would be WolframAlpha, which is a computational knowledge engine that computes results outside the client’s environment and returns the computed result back. A more commonly used service is Google's proprietary search engine, which searches millions of cached results related to the user specified keyword and returns an ordered list of links back to the client. Apple's Siri application also employs server-side scripting outside of a web application. The application takes an input, computes a result, and returns the result back to the client.WolframAlphaGoogle'sApple'sSiri

 In the earlier days of the web, server-side scripting was almost exclusively performed by using a combination of C programs, Perl scripts, and shell scripts using the Common Gateway Interface (CGI). Those scripts were executed by the operating system, and the results were served back by the web server. Many modern web servers can directly execute online scripting languages such as ASP and PHP either by the web server itself or via extension modules (e.g. mod_perl or mod_php) to the web server.CPerlshell scriptsCommon Gateway Interfaceoperating systemASPPHPmod_perlmod_php

 Dynamic websites sometimes use custom web application servers, such as the Python "Base HTTP Server" library, although some may not consider this to be server-side scripting. When designing using dynamic web-based scripting techniques, like classic ASP or PHP, developers must have a keen understanding of the logical, temporal, and physical separation between the client and the server. For a user's action to trigger the execution of server-side code, for example, a developer working with classic ASP must explicitly cause the user's browser to make a request back to the web server. Creating such interactions can easily consume much development time and lead to unreadable code.Python

 Server-side scripts are completely processed by the servers instead of clients. When clients request a page containing server side scripts, the applicable server processes the scripts and returns an HTML page to the client. For example, an ASP page is not processed by the browser; instead it is interpreted by the server which can process ASP scripts and return an HTML page to the client.

 Most web pages that you view are not static HTML pages.  Instead they are output from programs that run on servers. (these programs can interact with server resources like database and XML Web services.)

 There are quite a number of different technologies for dynamically generating Web content on servers. ◦ ASP.NET ◦ ASP ◦ CGI ◦ ColdFusion ◦ JSP ◦ PHP ◦ Ruby on Rails

 All of these technologies share one thing in common: ◦ Using programming logic, they generate HTML+CSS+Javascript on the server and send it back to the requesting browser.

 Normal Javascript is NOT a dynamic server technology. ◦ Javascript is a simple programming language that is executed by the browser, not the server. ◦ It is embedded within the HTML that is sent to the browser. ◦ It can interact with a server, but it executes after the page is received by the browser.

 Flash is NOT a dynamic server technology. ◦ Flash refers the shockwave Flash file (SWF) that is sent to the browser. ◦ Your browser, via the Flash Player plug-in, is able to run and display SWF file.  Typically used for advertisement banners, games, or richer user interfaces than are possible with HTML ◦ It can interact with a server, but it executes after the page is received by the browser.

 There are quite number of different technologies for dynamically generating web content on the server.  All of these technologies share one thing in common: ◦ Using programming logic they generate HTML on the server and send it back to the requesting browser.  We could categorize dynamic technology into three different types: ◦ Direct Output ◦ Page Scripting ◦ Hybrid

 In such a case, programs running on the server directly output HTML back to the client. ◦ CGI and Java Servlets are examples.  Advantage is fast execution time.  Main drawback is that any change in the design of a web page, no matter how minor, requires of intervention of programmer, who must compile the code (and perhaps turn off to server deploy).

public class HelloWorld extends HttpServlet { public void doGet(HttpServletRequest reques, HttpServletResponse response) { response.setContentType(“text/html”); PrintWriter out = response.getWriter(); out.print(“ ”); out.print(“ Hello World! ”); out.print(“ ”); out.print(“ Hello World! ”); out.print(“ ”); }

 Due to the inefficiences and difficulties in creating direct output web applications, page scripting dynamic content systems have been developed. ◦ That is, scripts embedded within HTML. ◦ HTML for static elements, scripts for dynamic elements ◦ Each page contains the scripts it needs. Examples Microsoft’s ASP, Allaire’s Coldfusion, PHP All of these systems using scripting languages. ◦ These languages are interpreted by the server rather than compile using a compiler. ◦ Advantage: rapid development times for developers. ◦ Disadvantage: slower execution speed.

<?php $currentTime = date (“Fj, Y, g:i a”); $colors = array (‘white’,’black’,’green’,’blue’,’yellow’,’orange’); ?> The time is now Choose a color: <? For ($i=0; $i<count($colors); $i++) { echo ‘ ’; echo $colors[$i]; echo ‘ ; } ?>

 Page scripting systems such as ASP and PHP are great for rapidly developing simple web sites.  They can, however, ◦ be harder to use when creating large, complex sites ◦ be hard to maintain since the code created tends not be object-oriented.

 More recent technologies such as Microsoft’s ASP.NET and Sun’s JSP use a hybrid approach and combine the direct and page scripting models.  Disadvantage ◦ Hard to learn compared to page scripting  Advantage ◦ Can use modern software engineering best practices thus making it easier to create large complex sites as well as easier to manage and maintain.

 AJAX ◦ Asynchronous Javascript with XML in a new technology that combines dynamic server technology, XML, and Javascript to create web applications or Flash interfaces in their interactivity abilities. ◦ E.g., Google Maps and Google Gmail. ◦ Dynamic sever technology use to retrieve and generate XML data back to browser. ◦ Browser then temporarily store this XML data and uses Javascript to create richer user interface and retrieve data from XML. ◦ If use changes XML data, it can be sent back to server for more processing.

 Web server hardware ◦ A server is a computer that serves informaton to other computers. ◦ Obviously needs to be powerful enough to handle the requests.  Web server software ◦ Software whose purpose is to deliver web content to HTTP requestors.

 Apache ◦ Open source, often on Linux/Unix OS  IIS ◦ Microsoft on Windows

 To test or run ASP.NET Web applications, web server software is necessary.  Microsofts’s production web server software is Internet Information Services (IIS). ◦ In order to run IIS, your computer’s operating system must be one of the following:  Windows 2000  Windows XP Professional (not XP Home),  Windows Vista Business or Ultimate (not Vista Home Basic),  Windows Server 2003  Windows Server 2008  Windows 7

 One of the advantages of using Visual Studio for ASP.NET development is that your site can be run and tested with or without using IIS. ◦ That is, Visual Studio comes with iits own web server software so that you can test execute ASP.NET pages on the same computer.  The Visual Studio web server can run locally on all current versions of Windows.  The Visual Studio Web server accepts only localhost requests.  It cannot serve pages to another computer, and is therefore suitable only for testing pages locally.

 With Visual Studio, we could say that your computer is a development server (available only to yourself).  Alternately,you might upload your work to a staging server running IIS for team testing.  Of course, if you want others to see this web application, it must eventually be uploaded to a production server (available to your Web application’s audience).