Bài giảng Lập trình Web - Chương 1: Giới thiệu dịch vụ WWW cung cấp cho người đọc các kiến thức: Giới thiệu internet và dịch vụ WWW, các thành phần của dịch vụ WWW, giao thức HTTP, định vị tài nguyên trên WWW, các loại siêu văn bản. Mời các bạn cùng tham khảo nội dung chi tiết.
CT428 Lập Trình Web Chương Giới Thiệu Dịch Vụ WWW Giảng viên: Trần Công Án (tcan@cit.ctu.edu.vn) https://sites.google.com/site/tcanvn/ Bộ môn Mạng máy tính Truyền thơng Khoa Cơng Nghệ Thơng Tin & Truyền Thông Đại học Cần Thơ 2013 – 2014 [CT428] Chương Giới thiệu WWW Nội Dung Giới thiệu Internet dịch vụ WWW Các thành phần dịch vụ WWW Giao thức HTTP Định vị tài nguyên WWW Các loại siêu văn TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW [CT428] Chương Giới thiệu WWW Giới thiệu Internet dịch vụ WWW Mạng Internet gì? Internet Là Gì? mạng toàn cầu, nối kết mạng máy tính sử dụng giao thức (protocol) TCP/IP tiền thân mạng ARPANET Bộ quốc phòng Mỹ (60s) mục tiêu ban đầu dùng để trao đổi tập tin (FTP) thư điện tử (email) thương mại hoá vào cuối năm 80s Internet số dịch vụ khác internet: telnet, usenet, chat, WWW, TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW [CT428] Chương Giới thiệu WWW Giới thiệu Internet dịch vụ WWW Mạng Internet gì? Các Đặc Điểm Cơ Bản Của Mạng Internet [hầu như] khơng có kiểm sốt tập trung (khơng có sở hữu tồn mạng Internet) ⇒ “mạng con” hoạt động độc lập (tương đối) xây dựng dựa chuẩn “mở” ⇒ tất người tạo thiết bị hay dịch vụ cho Internet máy tính mạng máy tính gia nhập rời mạng Internet cách “tự do” dịch vụ Internet tổ chức theo mơ hình client/server TS Trần Cơng Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW [CT428] Chương Giới thiệu WWW Giới thiệu Internet dịch vụ WWW Mạng Internet gì? Các Thuật Ngữ/Viết Tắt Thường Gặp TCP/IP (Transmission Control Protocol/Internet Protocol): giao thức Internet DNS (Domain Name System): hệ thống tên miền Các giao thức: HTTP (WWW), SMPT/POP/IMAP (email), FTP (file transfer), URL (Uniform Resource Locator): định vị tài nguyên đồng dạng Server: chương trình cung cấp dịch vụ Internet (hay máy tính cài đặt dịch vụ) Client: chương trình sử dụng dịch vụ Internet (hay máy tính sử dụng để truy cập dịch vụ Internet) TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW [CT428] Chương Giới thiệu WWW Giới thiệu Internet dịch vụ WWW Mạng Internet gì? Các Tổ Chức Quan Trọng Của Internet Internet Engineering Task Force (IETF): quản lý giao thức chuẩn Internet Internet Corporation for Assigned Names and Numbers (ICANN): quản lý hệ thống tên miền cấp cao World Wide Web Consortium (W3C): quản lý chuẩn dịch vụ WWW TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW [CT428] Chương Giới thiệu WWW Giới thiệu Internet dịch vụ WWW Giới thiệu dịch vụ WWW World Wide Web (WWW) Là Gì? dịch vụ Internet, dùng để trao đổi hay chia sẻ thông tin dạng siêu văn (hypertext) tạo Tim Berners-Lee (CERN) vào đầu năm 90s (1989-1991) hình thức trao đổi/chia sẻ thơng tin tiện lợi phổ biến Internet TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW [CT428] Chương Giới thiệu WWW Giới thiệu Internet dịch vụ WWW Giới thiệu dịch vụ WWW Siêu Văn Bản, Trang Web, Website Siêu văn bản: văn có chứa siêu liên kết (hyperlink), cho phép: liên kết đến siêu văn hay nguồn tài nguyên khác (văn bản, hình ảnh, âm thanh, ) Internet truy xuất đến siêu văn khác theo cách khơng [thơng thường] có phần mở rộng html htm Trang web (web page): siêu văn Website: hệ thống trang web có liên quan với (của tổ chức hay cá nhân) VD: website Trường ĐHCT, website Khoa CNTT&TT, TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW [CT428] Chương Giới thiệu WWW Các thành phần dịch vụ WWW Các Thành Phần Của Dịch Vụ WWW WWW, tất dịch vụ khác Internet, tổ chức theo mơ hình client/server (khách hàng/phục vụ) Server: chương trình cung cấp dịch vụ Internet “lắng nghe” yêu cầu từ clients xử lý phản hồi yêu cầu clients server dịch vụ WWW gọi web server Client: chương trình sử dụng dịch vụ Internet gửi yêu cầu đến server nhận xử ký kết trả (hiển thị cho người dùng, ) client dịch vụ WWW gọi web browser TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW [CT428] Chương Giới thiệu WWW Các thành phần dịch vụ WWW Web server Web Server chương trình phục vụ yêu cầu web (yêu cầu trang web) lưu trữ trang web nhận yêu cầu web từ web client (web browser) xử lý gửi kết (trang web) cho web client cổng (port) mặc định web server 80 số web server thông dụng: Apache, Microsoft Internet Information Service (IIS) TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 10 [CT428] Chương Giới thiệu WWW Giao thức HTTP Giao Thức HTTP viết tắt HyperText Transfer Protocol, giao thức dịch vụ WWW qui định cách thức “giao tiếp” web server web browser bao gồm tập lệnh “qui ước” chung web server web browser dùng để trao đổi liệu liệu trao đổi chủ yếu siêu văn trãi qua nhiều phiên bản: HTTP 0.9, HTTP 1.0, HTTP 1.1 TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 12 [CT428] Chương Giới thiệu WWW Giao thức HTTP Thông điệp yêu cầu (HTTP Request Message) Cấu Trúc Thông Điệp Yêu Cầu method space URL header field : space version value CRLF header field : value request line CRLF header fields CRLF CRLF message body method: phương thức yêu cầu URL: đường dẫn đến đối tượng liên quan đến yêu cầu version: HTTP version mà client muốn giao tiếp với server (1.0, 1.1) header fields: mô tả thông tin khác liên quan đến yêu cầu client TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 13 [CT428] Chương Giới thiệu WWW Giao thức HTTP Thông điệp yêu cầu (HTTP Request Message) Các Phương Thức Yêu Cầu Cơ Bản GET: yêu cầu trang web từ server (chỉ định URL) Đối số cung cấp cho web server (nếu có) truyền thông qua URL POST: yêu cầu trang web từ server (chỉ định URL) Đối số cung cấp cho web server (nếu có) truyền tách biệt với URL, đặt bên thông điệp yêu cầu (message body) PUT: upload trang web lên server, đặt vị trí định URL TS Trần Cơng Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 14 [CT428] Chương Giới thiệu WWW Giao thức HTTP Thông điệp yêu cầu (HTTP Request Message) Các Header Fields Thông Dụng dùng để định số ràng buộc web server việc phục vụ yêu cầu web browser cú pháp field: : [,]∗ số fields (phân biệt chữ hoa, chữ thường): Accept: loại media chấp nhận browser (text/html, image/jpeg) Content-Length: kích thước message body (bytes) Content-Encoding: mã hóa message body (gzip, ) Accept-Language: ngôn ngữ chấp nhận browser (vn, en) TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 15 [CT428] Chương Giới thiệu WWW Giao thức HTTP Thông điệp đáp ứng (Response Message) Cấu Trúc Thông Điệp Đáp Ứng version space status code space status text CRLF header field : value header field : value status line CRLF header fields CRLF CRLF message body status: bao gồm chữ số, cho biết trạng thái phục vụ yêu cầu web browser header fields: chứa thông tin web server thông tin liên quan đến trang web yêu cầu (tương tự thông điệp yêu cầu) TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 16 [CT428] Chương Giới thiệu WWW Giao thức HTTP Thông điệp đáp ứng (Response Message) Một Số Mã Trạng Thái Cơ Bản 1xx: Thông tin – Yêu cầu nhận, tiếp tục xử lý 2xx: Thành công – Yêu cầu nhận thành cơng, xử lý hay chấp nhận 3xx: Chuyển hướng – Cần thực thêm số thao tác để server hoàn tất phục vụ yêu cầu 4xx: Lỗi client – Yêu cầu không hợp lệ đáp ứng 5xx: Lỗi server – Server đáp ứng yêu cầu TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 17 [CT428] Chương Giới thiệu WWW Giao thức HTTP Minh Họa Thông Điệp Yêu Cầu/Đáp Ứng request message GET /index.html HTTP/1.1 http://www.abc.com/index.html Host: www.abc.com Connection: Keep-Alive User-Agent: Chrome/31.0 Accept: image/jpeg, -blank line (CRLF) CRLF (empty body) web server (www.abc.com) HTTP/1.1 200 OK Date: Sun, 01 Dec 2013 01:52:57 GMT Server: Apache/ web browser Content-Length: Content-Type: text/html -blank line (CRLF) [nội dung trang web] response message TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 18 [CT428] Chương Giới thiệu WWW Định vị tài nguyên WWW Tài nguyên WWW Tài Nguyên Trên WWW Tài nguyên dịch vụ WWW: trang web liệu đa phương tiện (multimedia) như: âm thanh, hình ảnh, TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 19 [CT428] Chương Giới thiệu WWW Định vị tài nguyên WWW Bộ định vị tài nguyên đồng dạng (URL) Bộ Định Vị Tài Nguyên Đồng Dạng (URL) Bộ định vị tài nguyên đồng dạng (Uniform Resource Locator URL) dùng để định vị tài nguyên WWW (và Internet) Một URL dịch vụ WWW có dạng sau: http://www.w3.org/Consortium/siteindex.html giao thức địa server đường dẫn Tổng quát: ://[:port]/ TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 20 [CT428] Chương Giới thiệu WWW Định vị tài nguyên WWW Bộ định vị tài nguyên đồng dạng (URL) Cú Pháp URL Của Một Số Dịch Vụ Cơ Bản HTTP: http://[:port]/ FTP: ftp://[uname[:pass]@][:port][/path] ftp://ctan.tug.org/ ftp://ctan.tug.org/pub/tex/tds.zip Email: mailto: mailto:tcan@cit.ctu.edu.vn File: file:// file://192.186.1.106/Users/Shared/readme.txt file:///c:/Windows/clock.avi TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 21 [CT428] Chương Giới thiệu WWW Định vị tài nguyên WWW Bộ định vị tài nguyên đồng dạng (URL) URL Tương Đối địa không đầy đủ tới tài nguyên bao gồm đường dẫn đến tài ngun cần truy xuất, khơng có giao thức địa host giao thức địa host suy từ trang web chứa URL tương đối ví dụ, trang web có URL “http://www.w3c.org/Consortium/siteindex.html”: URL “membership.html” tương đương với: “http://www.w3c.org/Consortium/membership.html” URL “/Help/Webmaster.html” tương đương với: “http://www.w3c.org/Help/Webmaster.html” TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 22 [CT428] Chương Giới thiệu WWW Các loại siêu văn Các Loại Siêu Văn Bản Web tĩnh (static web): trang web có nội dung cố định, khơng thay đổi theo ngữ cảnh có phần mở rộng html htm Web động (dynamic web): trang web có nội dung thay đổi tùy theo ngữ cảnh (đối số kèm theo yêu cầu người dùng) nội dung tạo ngôn ngữ script, bao gồm loại: client-side: mã script thực thi web browser server-side: mã script thực thi web server (hay application server) TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 23 [CT428] Chương Giới thiệu WWW Các loại siêu văn Web động Ngôn Ngữ Script Client-Side “nhúng” vào tập tin html thực thi web browser sau nhận trang web từ web server đoạn script thay đổi nội dung trang web tùy vào ngữ cảnh (context) số ngôn ngữ script client-side: JaveScript, ActionScript, TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 24 [CT428] Chương Giới thiệu WWW Các loại siêu văn Web động Ngôn Ngữ Script Server-Side đoạn script dùng để tạo trang web thực thi web server (thường application server) sau script thực thi, trang web tạo script web server gửi trả cho web browser số ngôn ngữ script server-side: ASP(.NET), JSP, PHP, application server gin /lo (2) (1) www.abc.com/login.php ph p (2’) (3) e l fil htm html file (4) web browser Internet web server (www.abc.com) TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW database server 25 ... Tim Berners-Lee (CERN) vào đầu năm 90s (19 89 -1 9 91) hình thức trao đổi/chia sẻ thông tin tiện lợi phổ biến Internet TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW [CT428] Chương Giới... file cần truy xuất> file:/ /19 2 .18 6 .1. 106/Users/Shared/readme.txt file:///c:/Windows/clock.avi TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 21 [CT428] Chương Giới thiệu WWW Định... yếu siêu văn trãi qua nhiều phiên bản: HTTP 0.9, HTTP 1. 0, HTTP 1. 1 TS Trần Công Án (Khoa CNTT&TT) [CT428] Chương Giới thiệu WWW 12 [CT428] Chương Giới thiệu WWW Giao thức HTTP Thông điệp yêu cầu