Công nghệ Web

Nội dung

 Giới thiệu về công nghệ Web

 Công nghệ trên Server

 Công nghệ trên Client (browser)

2

Giới thiệu công nghệ Web

FML

XML dialects

WML XHTML XSLT (Transformations)

HTTP for transport HTML for display

(X)HTML XML

Server Side Programming

HTTP Server

URL/URI for addressing

3

Clients (browsers) Client-side Programming

Từ Web 1.0 đến Web 3.0

 Web 1.0

 Trang chứa các liên kết  Nội dung: text, images, media

 Web 2.0

 Mục đích Web2.0 hướng tới cộng đồng, xã

hội: YouTube, Wikipedia

 Công nghệ: Ajax, Adobe Flash, XHTML,

SOA…  Web 3.0

4

Từ Web 1.0 đến Web 3.0 (tt)

 Interactive Pages  Dynamic Pages  AJAX and RIAs (Rich Internet Application)  Social Web  Identity  Semantic web  Web3D

5

Web 2.0

6

Công nghệ Server-side

 (Application) Web Server  Database  Programming Language  Libraries (...frameworks)

7

Web server

 Apache

 Nginx

 LiteSpeed

 IIS

 …

Apache

 Apache (hay Apache HTTP server) là web server mã nguồn mở được sử dụng rộng rãi nhất thế giới.

 Chạy trên các hệ điều hành: Windows,

Linux, Unix, FreeBSD, Solaris, ….

 Các tính năng: chứng thực người dùng, virtual hosting, hỗ trợ CGI, FCGI, SCGI, WCGI, SSI, ISAPI, HTTPS, Ipv6, …

Nginx

 Nginx là phần mềm mã nguồn mở, ổn

định, cấu hình đơn giản và hiệu suất cao.

 Chạy trên các hệ điều hành: Linux,

FreeBSD, Windows, Solaris, MacOS…  Các tính năng: chứng thực người dùng, hỗ trợ HTTPS, virtual hosting, hỗ trợ FastGCI, hỗ trợ Ipv6…

Internet Information Services (IIS)

 IIS do Microsoft phát triển, tích hợp cùng

hệ điều hành Windows. IIS bao gồm nhiều dịch vụ như: dịch vụ Web Server, dịch vụ FTP Server.

 IIS hỗ trợ chứng thực người dùng, virtual hosting, CGI, FCGI, ISAPI, php, hỗ trợ Ipv6, …

Apache Tomcat

 Apache Tomcat là một Java Servlet được

phát triển bởi Apache Software Foundation.  thi hành các ứng dụng Java Servlet và

JavaServer Pages (JSP).

 cung cấp một máy chủ HTTP cho ngôn ngữ Java

thuần túy.

 Hỗ trợ các hệ điều hành: windows, linux, OS,

BSD, solaris,…

 Các tính năng: chứng thực người dùng,

virtual hosting, CGI, Java Servlet, SSI, hỗ trợ Ipv6, …

Lighttpd

 Lighttpd là một phần mềm mã nguồn mở,

chiếm ít tài nguyên

 Chạy trên hệ điều hành Linux, Windows, Mac

OS,…

 Lighttpd hỗ trợ FastCGI, SCGI, CGI cho phép nó chạy được các ứng dụng web được viết bằng bất cứ ngôn ngữ nào.

 Các tính năng như chứng thực, hỗ trợ HTTPS, virtual hosting, hỗ trợ Ipv6,…  Lighttpd không hỗ trợ ISAPI (Internet Service

Application Programming Interface).

Database

14

Các ngôn ngữ

 Script nhúng

 Lập trình phía

server  CGI  J2EE (Servlets,

EJBs)

 JSP  PHP  SSI  Coldfusion  ASP  ASP.net  …

 Perl  Ruby (on Rails)  Python / Jython  …

15

Ngôn ngữ lập trình và script

 Ngôn ngữ Script

 Thông dịch  Đơn giản  Giới hạn

 Ngôn ngữ lập trình (Programming)

 Biên dịch  General-purpose

16

Tương tác ở phía Client

17

Công nghệ dùng trên Client

 Script phía client

 Lập trình phía client  Applets / Java Plug-

 JavaScript  VBScript

in • Java

Code được thực hiện trên trình duyệt

 Plug-ins / ActiveX  Flash, Shockwave Code sẽ được thực hiện bên ngoài trình duyệt (a Virtual Machine)

18

Java vs. Applets vs. Java Plug-in

 Java Plug-in extends the browser

 Applets or Java

 A Java application is a standalone program  Method main is executed at startup

 An Applet is a class that extends Applet, executed in a browser  No main

Beans run under JRE

Local CPU Server Server

Java bytecode Java bytecode Java bytecode

Network Network File system Client Browser System

JVM (interpreter)

JVM (browser)

19

(Java) Plug-in JRE