1 / 34

webserver programming

webserver programming. ICT voor O&O cursus 515 2,3,9 mar 2005. day 1. general introduction what is the web? what do we mean by webserver programming? when to use it? what does it look like? first introduction to Java servlets. the course is only a first introduction!. “you know Java”

tokala
Download Presentation

webserver programming

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. webserver programming ICT voor O&O cursus 515 2,3,9 mar 2005

  2. day 1 • general introduction • what is the web? • what do we mean by webserver programming? • when to use it? • what does it look like? • first introduction to Java servlets

  3. the course is only a first introduction! • “you know Java” • “you know HTML” • we assume limited experience with them

  4. we will not teach you: • Frontpage, Dreamweaver, etc. • website layout management (off-topic) • website content management • computer programming • Java • ASP, .NET, PHP, etc. (not used with Java) • specific Java technology such as JINI, JAXL, JDBC, J… (too advanced)

  5. web technology • What is the web made of? • What does web interaction do? • What do we need server-side programming for? • What does a webserver do? • How does it fit into the webserver?

  6. what is the web made of? • consider a user interacting with a webpage • what technology does it take?

  7. what is the web made of?

  8. what is the web made of?

  9. what does web interaction do?

  10. quiz time! • what does http://www.win.tue.nl/ictoo/ mean? • what happens when a user clicks on a link to it? • what does http://wwwis.win.tue.nl/~rpost/webprog/cgi/tictactoe.cgi?move=5 • mean? • why are URLs a good idea?

  11. web technology • x What is the web made of? • x What does web interaction do? • What do we need server-side programming for? • What does a webserver do? • How does it fit into the webserver?

  12. what is server-side programming for? • to create applications! • example: • http://wwwis.win.tue.nl/~rpost/webprog/cgi/tictactoe.cgi

  13. what is server-side programming for?example: tic-tac-toe (2) • We can play tic-tac-toe with HTML files. • Limitations?

  14. what is server-side programming for?example: tic-tac-toe (3) • We can play tic-tac-toe with HTML files. • Limitations: • every response is fixed • we can’t save the score on the server • too many HTML files • changing the layout is a tedious job • changing the machine’s strategy is hard • communication between players: ?

  15. what is server-side programming for?example: tic-tac-toe (4) • With a server-side program to generate the pages, • all limitations disappear: • a response can depend on anything • we can save the score on the server and show it • no more duplication of HTML • changing the layout is a one-time operation • changing the machine’s strategy is easy • users can play/chat/… via the application

  16. what is server-side programming for? • conclusion: server-side programming supports • generic layout • generic functionality • (“generic”: for all webpages at once)

  17. what is server-side programming for? • do people create tic-tac-toe games in HTML? • yes, many websites are! e.g.http://www.win.tue.nl/index.html • we will return to this example

  18. server-side web applications vs … • client-side web applications • example: the Pacman applet by Benny Chow • written in Java (source code is available) • this is a Java applet (client-side web app),not a Java servlet (server-side web app) • (this course is about server-side web apps)

  19. server-side web applications vs. … • client-side web applications: (e.g. Pacman): • can have a much more powerful user interface • require special web browser capabilities (plugins) • must be written to run in user’s web browser • standalone (non-web) applications: • even more powerful • must be downloaded and installed on the user’s OS • must be written to run on the user’s OS

  20. server-side web applications • limited interaction in user interface • software + content + gathered data • reside on server • factors determining whether to use server-side web application:security, availability, reliability, portability, maintainability, manageability, UI flexibility, …

  21. web technology • x What is the web made of? • x What does web interaction do? • / What do we need server-side programming for? • What does a webserver do? • How does it fit into the webserver?

  22. what is server-side programming for?example: www.win.tue.nl (2) • http://www.win.tue.nl/index.htmlconsists of HTML pages + images • layout, images, buttons designed in Photoshop • first prototype made in FrontPage • alternative with server-side programming:http://www.win.tue.nl/

  23. what is server-side programming for?example: www.win.tue.nl (3) • problems: maintaining consistency in look & feel • (not all Photoshop layouts and images can be used on the web) • not everybody uses FrontPage • some parts of the site are already generated with software; FrontPage doesn’t support that • how to convert existing pages? • virtually impossible to change the look and feelwhile the site is up and running

  24. what is server-side programming for?example: www.win.tue.nl (4) • answer: server-side programming • the TU/e “webfilter” • generates a common look & feel for arbitrary webpages on the fly • example: http://wwwstijl.tue.nl/filter43/http://wwwis.win.tue.nl/~rpost/webprog/cgi/tictactoe.cgi

  25. what is server-side programming for?example: www.win.tue.nl (5) • “webfilter” vs. FrontPage • solves all of the problems mentioned • must be tuned (by a programmer) to work on specific ranges of pages • requires an uncommon way of authoring • hard to sell(users don’t trust it, techs don’t trust it)

  26. what is server-side programming for?example: www.win.tue.nl (6) • more viable: a Content Management System (CMS) • CMS = server-side web application for website authoring and management • solves most of the problems mentioned • limits author to range of options supported by CMS • very popular • example: www.win.tue.nl (uses the Typo3 CMS)

  27. ready-to-use server-side programming • software packages you can freely install, configure, and use; examples: • CMS software • wiki software • blogging software • database managers (e.g. http://www.petriweb.org/phpMyAdmin • much much more

  28. web technology • x What is the web made of? • x What does web interaction do? • x What do we need server-side programming for? • What does a webserver do? • How does it fit into the webserver?

  29. where does server-side scripting fit in?

  30. what is a webserver made of? • core functionality e.g. serving files from the filesystem • built-in document generation e.g. error messages, status messages • getting a document from an executable (CGI) • special webserver modules for scripting / programming (SSI; PHP; Java servlets; ASP; etc)

  31. CGI: Common Gateway Interface • a standard way to call external programs from a webserver • and let them return a document

  32. CGI: example • tic tac toe of course: • http://wwwis.win.tue.nl/~rpost/webprog/cgi/tictactoe.cgi • source code will be made available

  33. web technology • x What is the web made of? • x What does web interaction do? • x What do we need server-side programming for? • x What does a webserver do? • x How does it fit into the webserver?

  34. servlets • difference with CGI scripts: • scripting engine is integrated with webserver • more efficient • requires special webserver support

More Related