1 / 21

LECTURE

159.339. LECTURE. Quick Tour of the Web Technologies: The BIG picture. A bird’s eye view of the different web technologies that we shall explore and study. Client-Server. requests an Internet resource by specifying a URL and providing input via HTTP encoded strings. Client.

chace
Download Presentation

LECTURE

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. 159.339 LECTURE Quick Tour of the Web Technologies: The BIG picture A bird’s eye view of the different web technologies that we shall explore and study.

  2. Client-Server requests an Internet resource by specifying a URL and providing input via HTTP encoded strings Client Web browser OS • Usually we want to open an HTML file from some website, but we can also open a program alternatively. HTML supports Javascript, DOM, CSS, HTML Events

  3. Client-Server requests an Internet resource by specifying a URL and providing input via HTTP encoded strings Client Web browser Server os Web server os Internet Network Core

  4. Client-Server Server-side program works out the necessary business logic and dynamicallybuilds an HTML response. Client Web browser Server os Web server os Internet

  5. Client-Server Client Server-side program sends back output as HTML using HTTP as transport mechanism Web browser Server Web server Internet

  6. Client-Server Client Client-side program (Internet Explorer, Firefox) displays the HTML output Web browser • HTML text • Graphics • Streaming video/audio • XML Server Web server Internet

  7. Our own webserver • Our codes might be embedded into an HTML, or vice-versa. It may generate an HTML on its own as well. Server My codes Web server PHP MySQL HTML Client Operating System Web browser Internet

  8. XitamiWebserver • free, fast and open source professional web server, written in ANSI C • Server supports HTTP/1.0, FTP, CGI/1.1, SSI protocols • Security: basic authentication per directory, FTP access rights per user and per directory • Deployment: installs ready-to-run, portable to Windows, OS/2, Unix, OpenVMS, fully portable web sites and web applications; • Performance: internal multithreading engine, fast even on slower systems • Configuration: editable config files, or through a web-based administration interface (WBA) Documentation: http://legacy.imatix.com/html/xitami/

  9. Simple CGI Demonstration Let’s have a look at a very simple program (CGI) running in the server side CGI - The executable file generated out of a C program. Step 1. Run your webserver. Step 2. Using a browser, request for the HTML file containing our program from the server. Warning! You should specify the port number used by your webserver!

  10. HTTP Protocol

  11. HTTP and TCP/IP • Webserver supports HTTP. • HTTP compliancy is implemented • using TCP/IP components. Server Web server My codes PHP MySQL HTML HTTP Client Operating System Web browser TCP/IP Internet

  12. Network Core What’s in the network core? Server Web server My codes PHP MySQL HTML HTTP Client Operating System Web browser TCP/IP Internet

  13. Validating HTML How to validate your HTML and CSS files? Client Web browser We want to write HTML pages + CSS files that are interoperable across many platforms (OS + web browser combination) Server Web server http://www.w3.org/QA/Tools/

  14. Editor What editor can we use to assist us in writing PHP, Javascript, HTML, CSS files, etc.? • phpDesignerPersonalEdition • a freeeditor for your web-development.  • rapid fast and full-featured PHP editor and PHP IDE with built-in HTML, CSS and JavaScript editors and FTP/SFTP! Link: http://www.mpsoftware.dk/

  15. PuTTY Using a simple tool called PuTTY, examine the HTTP protocol in action when a web client interacts with your webserver (Xitami, running in your own machine). PuTTY is a free implementation of Telnet and SSH for Windows and Unix platforms, along with an xterm terminal emulator. It is written and maintained primarily by Simon Tatham. What is the IP address of your machine? Ipconfig /all Is your server running properly? What was the server’s response? Which port number is open? netstat -anop TCP http://surf11.com/entry/176/command-to-show-open-tcp-ports-windows

  16. What’s next? We shall be looking at all the details of prominent internet programming languages and technology but we shall study how to write HTML and CSS documents first. Next meeting, I shall provide a good background on the nuts and bolts of the internet so that you may have knowledge of the essential protocols that will be interacting with our web server.

  17. Servlets CLIENT Servlets run inside a Web Container - the component of the web server that runs and interacts with servlets

  18. Servlets HTML, WML, XML CLIENT Servlets run inside a Web Container - the component of the web server that runs and interacts with servlets Servlet is running on the server listening for requests When a request comes in, a new thread is generated by the web container.

  19. NetBeans • Servlets go into a specific directory structure. • NetBeans will create that for you. • Compile, load, deploy your servlets. Link: http://netbeans.org/downloads/

  20. JSP JSP encourages you to: – Separate the (Java) codethat creates the content from the (HTML) codethat presentsit – Have different members of your team work on the HTML layout and do the Java programming

  21. JSP vs. Competing tech. • JSP vs PHP – Much richer language for the dynamic part – Better tool support – More resource efficient • JSP vs pure servlets – More convenient to create HTML – Can use standard tools – Divide and conquer • JSP vs client-side Javascript – You control the server, not the client • JSP vs .NET – Open standards: Portableto multiple servers and operating systems • JSP vs static HTML – Obvious!

More Related