Tcl/2k Conference, slide 1 TclHttpd The Tcl Web Server Brent Welch ftp.scriptics.com/pub/tcl/httpd.

Slides:



Advertisements
Similar presentations
CGI & HTML forms CGI Common Gateway Interface  A web server is only a pipe between user-agents  and content – it does not generate content.
Advertisements

Zope  Anureet Saxena  Pradeep Kumar  Dilys Thomas
Turners SharePoint Web Site How we did it. 2 Page Anatomy Custom Search Web Part Custom Search Web Part Data Form Web Parts Content Query Web Part HTML.
HTTP HyperText Transfer Protocol. HTTP Uses TCP as its underlying transport protocol Uses port 80 Stateless protocol (i.e. HTTP Server maintains no information.
The Application Layer Chapter 7. Electronic Mail Architecture and Services The User Agent Message Formats Message Transfer Final Delivery.
CS320 Web and Internet Programming Generating HTTP Responses
 2002 Prentice Hall. All rights reserved. 1 Chapter 6 – Introduction to the Common Gateway Interface (CGI) Outline 6.1 Introduction 6.2 Client and Web.
How the web works: HTTP and CGI explained
Web architecture Dr Jim Briggs Web architecture.
1 The World Wide Web Architectural Overview Static Web Documents Dynamic Web Documents HTTP – The HyperText Transfer Protocol Performance Enhancements.
Chapter 2 Application Layer Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley, July.
Python and Web Programming
2/9/2004 Web and HTTP February 9, /9/2004 Assignments Due – Reading and Warmup Work on Message of the Day.
Hypertext Transport Protocol CS Dick Steflik.
 What is it ? What is it ?  URI,URN,URL URI,URN,URL  HTTP – methods HTTP – methods  HTTP Request Packets HTTP Request Packets  HTTP Request Headers.
Application Layer. Domain Name System Domain Name System (DNS) Problem – Want to go to but don’t know the IP addresswww.google.com Solution.
CGI Programming: Part 1. What is CGI? CGI = Common Gateway Interface Provides a standardized way for web browsers to: –Call programs on a server. –Pass.
Presented By Trey Jordan Technical Account Manager Southern Area Guided Self-Service Presentation.
CGI Programming Languages Web Based Software Development July 21, 2005 Song, JaeHa.
 2004 Prentice Hall, Inc. All rights reserved. Chapter 25 – Perl and CGI (Common Gateway Interface) Outline 25.1 Introduction 25.2 Perl 25.3 String Processing.
Christopher M. Pascucci Basic Structural Concepts of.NET Browser – Server Interaction.
 2000 Deitel & Associates, Inc. All rights reserved. Chapter 24 – Web Servers (PWS, IIS, Apache, Jigsaw) Outline 24.1Introduction 24.2Microsoft Personal.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
HTTP; The World Wide Web Protocol
Google App Engine Chien-Chung Shen
Chapter 6: Forms JavaScript - Introductory. Previewing the Product Registration Form.
Chapter 33 CGI Technology for Dynamic Web Documents There are two alternative forms of retrieving web documents. Instead of retrieving static HTML documents,
ASP.NET and Model View Control Jesper Tørresø ITNET2 F08.
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
Let’s Wub Wub tutorial What is Wub? HTTP 1.1 Webserver Written by Colin McCormack 100% Tcl Web application framework Domain based.
COMP 321 Week 7. Overview HTML and HTTP Basics Dynamic Web Content ServletsMVC Tomcat in Eclipse Demonstration Lab 7-1 Introduction.
Introduction to Programming the WWW I CMSC Summer 2004 Lecture 6.
Mid Morning Discussion Introduction to the IBIS-Q Front-End System ("Module" Emphasis) What is the front end Where does the front end fit in What is a.
CSE 190: Internet E-Commerce Lecture 5. Exam Material Lectures 1-4 (Presentation Tier) –3-tier architecture –HTML –Style sheets –Javascript –DOM –HTTP.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Scalable Web Server on Heterogeneous Cluster CHEN Ge.
Copyright © 2002 ProsoftTraining. All rights reserved. JavaServer Pages.
A Little Bit About Cookies Fort Collins, CO Copyright © XTR Systems, LLC A Little Bit About Cookies Instructor: Joseph DiVerdi, Ph.D., M.B.A.
Rails & Ajax Module 5. Introduction to Rails Overview of Rails Rails is Ruby based “A development framework for Web-based applications” Rails uses the.
WWW: an Internet application Bill Chu. © Bei-Tseng Chu Aug 2000 WWW Web and HTTP WWW web is an interconnected information servers each server maintains.
Netprog 2002 CGI Programming1 CGI Programming CLIENT HTTP SERVER CGI Program http request http response setenv(), dup(), fork(), exec(),...
Appendix E: Overview of HTTP ©SoftMoore ConsultingSlide 1.
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
Let’s Wub Wub tutorial What is Wub? HTTP 1.1 Webserver Written by Colin McCormack 100% Tcl Web application framework Domain based.
Copyright © 2002 ProsoftTraining. All rights reserved. Java Servlets.
Operating Systems Lesson 12. HTTP vs HTML HTML: hypertext markup language ◦ Definitions of tags that are added to Web documents to control their appearance.
IS-907 Java EE World Wide Web - Overview. World Wide Web - History Tim Berners-Lee, CERN, 1990 Enable researchers to share information: Remote Access.
Greenstone Internals How to Build a Digital Library Ian H. Witten and David Bainbridge.
2: Application Layer 1 Chapter 2: Application layer r 2.1 Principles of network applications  app architectures  app requirements r 2.2 Web and HTTP.
9-Nov-97Tri-Ada '971 TASH An Alternative to the Windows API TRI-Ada ‘97 Terry J. Westley
Implementing and Using the SIRWEB Interface Setup of the CGI script and web procfile Connecting to your database using HTML Retrieving data using the CGI.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1 Fundamentals.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
ASP.NET User Controls. User Controls In addition to using Web server controls in your ASP.NET Web pages, you can create your own custom, reusable controls.
RESTful Web Services What is RESTful?
HTTP protocol Java Servlets. HTTP protocol Web system communicates with end-user via HTTP protocol HTTP protocol methods: GET, POST, HEAD, PUT, OPTIONS,
Data Communications and Computer Networks Chapter 2 CS 3830 Lecture 7 Omar Meqdadi Department of Computer Science and Software Engineering University of.
Introduction to CGI PROG. CGI stands for Common Gateway Interface. CGI is a standard programming interface to Web servers that gives us a way to make.
1 Unraveling the Web: How Does it All Work?. 2 Web Enabling Technologies F TCP/IP network (Internet & others) F URLs F HTTP protocol and HTTP Servers.
1 The World Wide Web Architectural Overview Static Web Documents Dynamic Web Documents HTTP – The HyperText Transfer Protocol Performance Enhancements.
Play Framework: Introduction
Hypertext Transport Protocol
Processes The most important processes used in Web-based systems and their internal organization.
MapServer In its most basic form, MapServer is a CGI program that sits inactive on your Web server. When a request is sent to MapServer, it uses.
WEB API.
Web Browser server client 3-Tier Architecture Apache web server PHP
Chapter 27 WWW and HTTP.
HTML Structure.
Traditional Internet Applications
Presentation transcript:

Tcl/2k Conference, slide 1 TclHttpd The Tcl Web Server Brent Welch ftp.scriptics.com/pub/tcl/httpd

Tcl/2k Conference, slide 2 Goals and Experiences Embeddable, Extensible Web Server –Add web interface to your application –License server, DHCP server, Mail List Server General Purpose Web Server –Page Templates –Built-in form handlers –sunscript.sun.com –

Tcl/2k Conference, slide 3 Architecture for Extensibility HTTP Protocol URL Dispatch App- Direct CGI Doc Template Your Application File System Other Process

Tcl/2k Conference, slide 4 Architecture for Extensibility URL Dispatch –Implement a URL sub-tree, interpret meaning of URL path Application-Direct –Maps a URL to a Tcl Procedure. Maps form data to procedure arguments. Document Templates –Procedure calls, variable references inside HTML pages General Doc-Type handlers Authentication hook

Tcl/2k Conference, slide 5 Url Dispatch: Partition Hierarchy Url_PrefixInstall prefix command inThread Url_PrefixInstall /resource ResourceDispatch 0 /resource/status

Tcl/2k Conference, slide 6 Application-Direct Map URL to Tcl Procedure Direct_Url /status Status proc Status/doc { {pattern *} {sort hits} } { # Display URLs matching $pattern # Sort display by name or hit count return $html } /status/doc?pattern=/images*&sort=name Missing parameters get default value, or “” Return value of proc is the page Set alternate content-types, not just text/html

Tcl/2k Conference, slide 7 Document Templates: HTML+Tcl Use Tcl to general complex HTML for navigation Put simple calls into pages [scriptics::header “Title” lev1 lev2 lev3] Cache template output in plain.html file Form handlers –Embed calls to handle incoming form data –“Self-posting forms” repopulate fields, then redirect to the next page when everything is OK

Tcl/2k Conference, slide 8 32 K File Fetch