CS 110 Website Production
Introduction
Department of Computer Science
Western Connecticut State University
2/26/2018 Website Production 1
Session overview
• Introduction
• Introducing the course
• A Brief Intro to the Internet
• What the Internet is
• Naming and Name Resolution
• Web Browsers and Servers
2/26/2018 Website Production 2
Introducing Your Instructor
• Rona Gurkewitz
• MA Mathematics, UCLA
• MS Computer Science Courant Institute
NYU
• MPhil Computer Science Courant Institute
NYU
• Interests: Robots in Education,Origami
Polyhedra and Math, Android Apps, 3D
2/26/2018 Website Production 3
Printing
Introducing my students
• Please introduce yourselves, one at a time
• Tell us:
– your name
– Your major
– your computer/programming background
– what do you expect from the course
– something special about you
2/26/2018 Website Production 4
Introducing the course
• The purpose of this course is to provide an
introduction to the programming tools and
skills required to produce websites.
2/26/2018 Website Production 5
Introducing the course
• The main goals of the course are:
– To describe the architecture of the World Wide
Web
– To provide students with the knowledge
necessary to:
• create basic Web pages using XHTML
• use client-side scripts to create Web applications
• understand basic structure of most programming
languages and software
• The course introduces four languages
widely used for Website production:
HTML(Hypertext Markup Language),
2/26/2018 Website Production 6
XHTML, CSS and JavaScript.
A Brief Intro to the Internet
• Origins
– ARPAnet - late 1960s
• A large-scale computer network needed by
the US Dept. of Defense
• Purpose: for defense researchers to
communicate and share programs
• Main requirement: network reliability
• First node was established at UCLA in 1969
2/26/2018 Website Production 7
A Brief Intro to the Internet
• Primary actual use: for text-based
communications via e-mail
• For ARPA (Advanced Research Projects
Agency)-funded research organizations
• Universities left out -> a number of other
networks were developed during the late
1970s and early 1980s:
2/26/2018 Website Production 8
A Brief Intro to the Internet
– BITnet (Because It's Time Network) - City
University of NY
• For e-mail and file transfer
– Csnet (Computer Science NETwork) -
University of Delaware, Purdue University,
University of Wisconsin, and some
corporations
• email
2/26/2018 Website Production 9
A Brief Intro to the Internet
– NSFnet - 1986 (Sponsored by the National
Science Foundation)
• Originally for non-DOD funded places
• Initially connected five supercomputer
university centers
• By 1990, it had replaced ARPAnet for non-
military uses
• Soon became the network for all
– NSFnet eventually became known as Internet
2/26/2018 Website Production 10
What the Internet is
• A world-wide network of computer networks
– At the lowest level, since 1982, as a standard, all
connections use TCP/IP (Transmission Control
Protocol/Internet Protocol)
• This is a set of rules for building low-level programs designed
so that the differences among devices connected to the Internet
is hidden from their users
– The individual computers in an organization are
connected in a local network
• One node on the local network is connected to the
Internet
– All devices connected to the Internet must be uniquely
identifiable
2/26/2018 Website Production 11
What the Internet is
• Internet Protocol (IPv4) Addresses
– Every node has a unique numeric address
– Form: 32-bit binary number ( or 128 bit IPv6)
• Written as four 8-bit numbers separated by periods
• This form makes it easy to specify collections of related
addresses
– Also helps Internet routing computers to decide where a message
must go next
– Organizations are assigned groups of IPs for their
computers
• E.g. 191.57.126.0
12.255.255.255
2/26/2018 Website Production 12
Naming and Name Resolution
• Domain names
– To help humans remember addresses
– Form: host-name.domain-names
– First domain is the smallest; last is the largest
– Last domain specifies the type of organization
• In the US: .com, .edu, .org
• For other countries: last domain specifies the
country
2/26/2018 Website Production 13
Naming and Name Resolution
– Fully qualified domain name - the host name
and all of the domain names
• Must be unique
– DNS servers (Domain Name Servers) - convert
fully qualified domain names to IP addresses
• Each DNS server is responsible for a list of
machines
• All HTTP requests are routed to the nearest
name server
– If it cannot convert the fully qualified domain
name to an IP address, it routes the request to
another name server
2/26/2018 Website Production 14
A Brief Intro to the Internet
• Problem: By the mid-1980s, several different
protocols that run on top of the TCP/IP had been
invented and were being used on the Internet, all
with different user interfaces
• Telnet - for a user on one computer to log on
another computer
• FTP - to transfer files on the Internet
• Usenet - for electronic bulletin boards
• mailto - for sending messages between computers
– Users were required to learn different interfaces in
order to use all advantages of the Internet
2/26/2018 Website Production 15
The World-Wide Web
• A possible solution to the proliferation of
different protocols being used on the Internet
• Origins
– Sir Tim Berners-Lee at CERN (European Laboratory
for Particle Physics in Switzerland) proposed the
Web in 1989
• Purpose: to allow scientists to have access to
many databases of scientific work through their
own computers
– Document form: hypertext
– Pages? Documents? Resources?
• Documents is probably most descriptive
– Hypermedia - documents with links to other
documents
2/26/2018 Website Production 16
The World-Wide Web
• Web or Internet?
– The Web uses one of the protocols, HyperText
Transfer Protocol (http), that runs on the
Internet - there are several others
•telnet, mailto, etc.
– Again, a protocol is a set of rules for
communication between programs
2/26/2018 Website Production 17
Web Browsers and Servers
• Web browsers
– Documents provided by servers are accessed
through browsers
• First browsers were text-based
– Mosaic - NCSA (Univ. of Illinois), in early 1993
• First to use a GUI, led to explosion of Web use
• Initially for X-Windows, under UNIX, but was ported
to other platforms by late 1993
2/26/2018 Website Production 18
Web Browsers and Servers
– Browsers are clients - always initiate a
dialogue, servers respond (although sometimes
servers require responses)
– Most requests are for existing documents, using
the HyperText Transfer Protocol (HTTP)
• But some requests are for program
execution, with the output being returned as
a document(web page)
2/26/2018 Website Production 19
Web Browsers and Servers
• Web servers
– Provide responses to browser requests, either
existing documents or dynamically built
documents
• The browser may explicitly request running
of some server program
– The document returned will be generated by the
program
• Example: browser sends a filled-in form, the
server program processes the data in the
form
2/26/2018 Website Production 20
Web Browsers and Servers
– Browser-server connection is now maintained
through more than one request-response cycle
– Also, browsers can store information on what
documents have been requested and received
– Hundreds of thousands of servers exist
• Most commonly used are
– Apache (for a variety of computer platforms)
– IIS (Internet Information Server) from Microsoft
2/26/2018 Website Production 21
URLs
• Uniform Resource Locator (also Universal R L)
– Used to identify resources on the Internet
– Different kinds of resources are identified by different
kinds of URLs
• General form:
scheme:object-address
– The scheme is often a communications protocol, such
as telnet, ftp, gopher, telnet, file,
mailto, news
– Different schemes use object addresses that have
different forms
2/26/2018 Website Production 22
URLs
• For the http protocol, the object-address is:
http://fully qualified domain
name/document path
– Examples:
http://www.w3.org/Addressing/URL/URI_Overview.html
• This document contains all the details on URLs
http://www.intuitive.com/coolsites/index.shtml
http://www.htmlandcssbook.com/index.html
• For the file protocol, only the document path is
needed:
file://path-to-document
– The document is on the machine running the browser
2/26/2018 Website Production 23
URLs
• The fully qualified domain name may include a “port
number”, as in
http://www.wcsu.edu:80 (80 is the default for
HTML, so this is silly unless the server has been
configured to “listen” to another port)
• URLs cannot include spaces or any of a collection of
other special characters (semicolons, colons, ...)
– If needed, coded as % followed by the 2-digit hexadecimal code for
the character
• The document path appears as a path to a directory
– For UNIX servers forward slash
• Most browsers take both forward- or back-slash, e.g.
http://www.gumboco.com/files/f99/storefront.html
2/26/2018 Website Production 24
URLs
• The document path may be abbreviated as a partial
path, e.g.
– If the server configuration specifies that the root directory for files it
can serve is /files/f99, then the document path may be
abbreviated:
http://www.gumboco.com/storefront.html
• If the document path ends with a slash, it means it is
a directory
– If no directory name is included, but the URL ends with a slash, the
server looks for the "home page" index.html
– If the directory does not have a file that the server
recognizes as a home page, a directory listing is
constructed and returned to the browser
2/26/2018 Website Production 25
The heart of the Web: HTTP URLs
• The capability to connect a Web browser with
other Web servers via HTTP is what makes
the Web revolutionary.
http://www.intuitive.com/coolsites
2/26/2018 Website Production 26