You are on page 1of 9

ITU 07204: Fundamentals of Web

Technologies
Lecture 2: Development Technologies

Dr. Lupiana, D
FCIM, Institute of Finance Management
Semester 2

Agenda:
• Web Deployment Architectures
• Static Website Vs Dynamic Website
• Web Development Technologies

Client-Server Model

1
Client-Server Model

Request
e.g. "Get me a webpage"

Web Web
Browser Server

Client Response Server

e.g. "here’s the web page"

A Web Server
• Thus any Website shall be hosted on a Web
server for its clients (users) to access it.
• A Web server is a specialised software that
responds to clients’ (i.e. Web browsers)
requests.
– In this context, a Web server refers to a software
– However, the machine on which this software
runs can also be referred to as a Web server.

Common Web Servers - Apache


• Apache is the most popular Web server.
• It runs on Unix, Linux and Windows operating
systems.

• It supports a range of server-side


technologies, but may require additional
software installation

2
Common Web Servers - IIS
• Internet Information Services (IIS) is a
Microsoft product.
• It is an enterprise level web server.
– A scaled down version of IIS is called Personal Web
Server (PWS)

• It runs on Windows operating system

Common Web Servers - NGINX


• Pronounced "engine-X“
• It is a lightweight, high-performance Web
server.
• It does not support Java servlets
• It runs on UNIX, GNU/Linux, BSD variants, Mac
OS X, Solaris, and Microsoft Windows

Common Web Servers

3
A Web Server
• Web servers respond not only to Internet
traffic, but also to intranet and extranet traffic.
• Thus, a Web server can also be installed locally
on your computer. Any Website hosted on this
server can be accessed;
– Locally by using localhost domain name or IP
address 127.0.0.1
– Over the LAN by using IP address of the host
computer.

10

10

A Web Server
• For Website development purposes, a Web
server should be installed on your computer.
• If a Website is for internal use, then it should
be hosted on a Web server installed on a
specific computer on a LAN.
• If a Website is to be accessible globally, then
it should be hosted on a Web server of an ISP
or a Web hosting company.
11

11

A Static Website
• A static Website is a collection of static Web
pages.
• In this type of Websites, Web pages are
delivered as stored on a Web server.
• Unless changed by a Web developer, content
of Web pages do not change.
– Users cannot input data to or search from a
Website

12

12

4
Deployment Architecture
• 2-tier Architecture
Application User interface.
Presentation
Client tier tier The client interacts with the middle
tier to make requests and to retrieve
data from the information tier

Controls the interactions between


the application clients and application data.
Application or
Middle tier Business Logic
Enforces business rules.
tier implements presentation logic.
Web server typically supports this tier.

13

13

Accessing a Static Website

14

14

Accessing a Static Website


– Browser sends a request to a Web server
– The server forwards the requested page to the
browser
– The browser process the content of the forwarded
HTML page, including any script.

15

15

5
A Dynamic Website
• A dynamic Website is a Website that has one
or more dynamic Web pages.
• Dynamic Web pages are generated ‘on the fly’
or dynamically.
• Content of dynamic Web pages change
without being changed by a Web developer, .
– Users can input data to or search from a Website

16

16

Why Dynamic Website?


• New demands from users;
– Users wanted to see pages based on their inputs.
– The desire of users to upload their information.
– The desire of users to dynamically change their
information.

• New business opportunities;


– new applications such as social media and news
Websites that needs to be frequently updated

17

17

Deployment Architecture
• 3-tier Architecture
Application User interface.
Presentation
Client tier tier The client interacts with the middle
tier to make requests and to retrieve
data from the information tier

Controls the interactions between


the application clients and application data.
Application or
Middle tier Business Logic
Enforces business rules.
tier implements presentation logic.
Web server typically supports this tier.

Maintains data used by the application.


Data tier Data typically stored in a relational
Database database management system
(RDBMS)
18

18

6
Accessing a Dynamic Website

19

19

Accessing a Dynamic Website


– Browser sends a request to a Web server
– The server checks for scripts on the requested page
– The server activates an appropriate interpreter to
interpret the script
– The result of the interpretation is sent back to the
server
– The server forwards the requested page to the
browser
– The browser process the content of the forwarded
HTML page.

20

20

Web Development Technologies


• Markup Languages;
– Hypertext Markup Language (HTML)
– Extensible Hypertext Markup Language (XHTML)
– Extensible Markup Language (XML)

• Cascading Style Sheet (CSS)


• Scripting languages
– Client side scripting
– Server side scripting
21

21

7
Client Side Scripting
• Code is executed by a Web browser.
• Scripting languages in this category include;
– JavaScript
– VBScript

22

22

Client Side Scripting


• These scripts are used for various purposes;
– Validation of user inputs
– Enhancing Web pages with ActiveX controls
– Enhancing interactivity e.g. Graphics and buttons
– Manipulating browser documents

23

23

Client Side Scripting


• Limitations of client side scripts;
– Cannot implement functionality that returns
customised information to the user – e.g.
database search results
– Client machine/device must be sufficiently
powerful to carry out processing (problems of
some handheld devices)
– Need to ensure that the browser can support the
client software
– Source code is visible – may compromise security

24

24

8
Server Side Scripting
• Code is executed by a Web server.
– Code executes because an interpreter has been
installed and activated on the Web server.

• Scripting languages in this category include;


– PHP: Hypertext Preprocessor (PHP)
– Practical Extraction and Report Language (Perl)
– Active Server Pages (ASP)
– Phython
– Ruby
25

25

Server Side Scripting


• These scripts are used for various purposes;
– Browser detection
– Database connectivity
– File uploading and downloading
– Creation and identification of Cookies

26

26

Server Side Scripting


• Advantages of server side scripting languages;
– Users cannot view source codes
– Provides programmers greater flexibility
– Generates custom responses for clients
– Contains greater programmatic capabilities than
client-side equivalents
– Has access to server-side software that extend
server functionality

27

27

You might also like