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.
Trang 1CT428 Lập Trình Web
Chương 1 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 và Truyền thông
Khoa Công Nghệ Thông Tin & Truyền Thông
Đại học Cần Thơ
2013 – 2014
Trang 2Nội Dung
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
Trang 3Giới thiệu Internet và dịch vụ WWW
Mạng Internet là gì?
Internet Là Gì?
I là một mạng toàn cầu, nối kết các mạng máy tính sử dụng bộ giaothức (protocol) TCP/IP
I tiền thân là mạngARPANET của Bộ quốc phòng Mỹ (60s)
I mục tiêu ban đầu là dùng để
trao đổi tập tin(FTP) và thư
Trang 4Giới thiệu Internet và dịch vụ WWW
Mạng Internet là gì?
Các Đặc Điểm Cơ Bản Của Mạng Internet
I [hầu như] không có sự kiểm soát tập trung (không có ai sở hữu
toàn bộ mạng Internet)
⇒ các “mạng con” có thể hoạt động độc lập (tương đối)
I được xây dựng dựa trên cácchuẩn “mở”
⇒ tất cả mọi người đều có thể tạo ra các thiết bị hay dịch vụ
Trang 5Giới thiệu Internet và dịch vụ WWW
Mạng Internet là gì?
Các Thuật Ngữ/Viết Tắt Thường Gặp
I TCP/IP (Transmission Control Protocol/Internet Protocol): bộgiao thức Internet
I DNS (Domain Name System): hệ thống tên miền
I Các giao thức: HTTP (WWW), SMPT/POP/IMAP (email),
Trang 6Giới thiệu Internet và dịch vụ WWW
Mạng Internet là gì?
Các Tổ Chức Quan Trọng Của Internet
I Internet Engineering Task Force (IETF): quản lýgiao thức chuẩncủa Internet
I Internet Corporation for Assigned Names and Numbers (ICANN):quản lý hệ thống tên miềncấp cao nhất
I World Wide Web Consortium (W3C): quản lý chuẩn của dịch vụWWW
Trang 7Giới thiệu Internet và dịch vụ WWW
Giới thiệu dịch vụ WWW
World Wide Web (WWW) Là Gì?
I là một dịch vụtrên Internet, dùng đểtrao đổi hay chia sẻ thông tin
dưới dạngsiêu văn bản (hypertext)
I được tạo ra bởi Tim
Berners-Lee (CERN)
vào đầu những năm
90s (1989-1991)
I là hình thức trao
đổi/chia sẻ thông tin
tiện lợi và phổ biến
trên Internet
Trang 8Giới thiệu Internet và dịch vụ WWW
Giới thiệu dịch vụ WWW
Siêu Văn Bản, Trang Web, Website
I Siêu văn bản: là các văn bản có chứa cácsiêu liên kết
(hyperlink), cho phép:
I liên kết đến các siêu văn bản hay các nguồn tài nguyên khác (văn bản, hình ảnh, âm thanh, ) trên Internet
I truy xuất đến các siêu văn bản khác theo cách không tuần tự
I [thông thường] có phần mở rộng là html hoặc htm
I Trang web (web page): là một siêu văn bản
I Website: là mộthệ thống các trang web có liên quan với nhau
(của một tổ chức hay cá nhân) VD: website Trường ĐHCT,
website Khoa CNTT&TT,
Trang 9Các thành phần của dịch vụ WWW
Các Thành Phần Của Dịch Vụ WWW
WWW, cũng như tất cả các dịch vụ khác trên Internet, được tổ chứctheo mô hình client/server (khách hàng/phục vụ)
I Server: là một chương trình cung cấp dịch vụ trên Internet
I “lắng nghe” yêu cầu từ các clients
I xử lý và phản hồi các yêu cầu của các clients
I server trong dịch vụ WWW được gọi là web server
I Client: là một chương trìnhsử dụng dịch vụ trên Internet
I gửi yêu cầu đến server
I nhận và xử ký kết quả trả về (hiển thị cho người dùng, )
I một client trong dịch vụ WWW được gọi là web browser
Trang 10Các thành phần của dịch vụ WWW
Web server
Web Server
I là một chương trìnhphục vụ yêu cầu về web(yêu cầu trang web)
I lưu trữ các trang web
I nhận yêu cầu về web từ web client (web browser)
I xử lý và gửi kết quả (trang web) về cho web client
I cổng (port) mặc địnhcủa các web server là 80
I một số web server thông dụng: Apache, Microsoft Internet
Information Service (IIS)
Trang 11Các thành phần của dịch vụ WWW
Web browser
Web Browser (Trình Duyệt Web)
I là chương trình sử dụng dịch vụ WWW:
I gửi yêu cầu trang web (của người dùng) đến web server
I nhận và hiển thị trang web trả về từ web server
I một số trình duyệt web thông dụng: Internet Explore, Chrome,
Firefox, Safari, Opera,
1 HTTP Request
2 HTTP Response
Internet web server
web browser
Trang 12Giao thức HTTP
Giao Thức HTTP
I viết tắt của HyperText Transfer Protocol, làgiao thức của dịch
vụ WWW
I qui địnhcách thức “giao tiếp” giữa web server và web browser
I bao gồm mộttập các lệnh và “qui ước” chung giữa web server vàweb browser dùng để trao đổi dữ liệu
I dữ liệu trao đổi chủ yếu là các siêu văn bản
I trãi qua nhiều phiên bản: HTTP 0.9, HTTP 1.0, HTTP 1.1
Trang 13Giao 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
request line
header fields
I method: phương thức yêu cầu
I URL: đường dẫn đến đối tượng liên quan đến yêu cầu
I version: HTTP version mà client muốn giao tiếp với server (1.0, 1.1)
I header fields: mô tả các thông tin khác liên quan đến yêu cầu của client
Trang 14Giao 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
I GET:yêu cầu một trang web từ server (chỉ định bằng URL) Đối
số cung cấp cho web server (nếu có) sẽ đượctruyền thông qua
URL
I POST: yêu cầu một trang web từ server (chỉ định bằng URL)
Đối số cung cấp cho web server (nếu có) sẽ được truyền tách
biệt với URL, đặt bên trong thông điệp yêu cầu (message body)
I PUT:upload một trang web lên server, đặt tại vị trí được chỉ
định bởi URL
Trang 15Giao thức HTTP
Thông điệp yêu cầu (HTTP Request Message)
Các Header Fields Thông Dụng
I dùng để chỉ định một sốràng buộc đối với web server trong việcphục vụ yêu cầu của web browser
I cú pháp của mỗi field:<tên field>: <giá trị> [,<giá trị>]∗
I một số fields cơ bản (phân biệt chữ hoa, chữ thường):
I Accept: loại media được chấp nhận bởi browser (text/html,
image/jpeg)
I Content-Length: kích thước của message body (bytes)
I Content-Encoding: mã hóa của message body (gzip, )
I Accept-Language: ngôn ngữ chấp nhận bởi browser (vn, en)
Trang 16Giao thức HTTP
Thông điệp đáp ứng (Response Message)
Cấu Trúc Thông Điệp Đáp Ứng
status line header fields
I status: bao gồm 3 chữ số, cho biếttrạng thái phục vụ yêu cầucủa web browser
I header fields:chứa thông tin về web servervà các thông tin liênquan đến trang web được yêu cầu (tương tự thông điệp yêu cầu)
Trang 17Giao thức HTTP
Thông điệp đáp ứng (Response Message)
Một Số Mã Trạng Thái Cơ Bản
I 1xx:Thông tin – Yêu cầu đã được nhận, đang tiếp tục xử lý
I 2xx:Thành công – Yêu cầu đã được nhận thành công, có thể xử
lý hay đã được chấp nhận
I 3xx:Chuyển hướng – Cần thực hiện thêm một số thao tác để
server có thể hoàn tất phục vụ yêu cầu
I 4xx:Lỗi client – Yêu cầu không hợp lệ hoặc không thể được đápứng
I 5xx:Lỗi server – Server không thể đáp ứng yêu cầu
Trang 18-blank line (CRLF) - CRLF (empty body) request message
HTTP/1.1 200 OK Date: Sun, 01 Dec 2013 01:52:57 GMT
Server: Apache/
Content-Length:
Content-Type: text/html
Trang 19Định vị tài nguyên trên WWW
Tài nguyên trên WWW
Tài Nguyên Trên WWW
I Tài nguyên trong dịch vụ WWW:
I các trang web
I dữ liệu đa phương tiện (multimedia) như: âm thanh, hình ảnh,
Trang 20Định vị tài nguyên trên WWW
Bộ định vị tài nguyên đồng dạng (URL)
Bộ Định Vị Tài Nguyên Đồng Dạng (URL)
I Bộ định vị tài nguyên đồng dạng (Uniform Resource Locator
-URL) được dùng đểđịnh vị các tài nguyêntrên WWW (và
Internet)
I Một URL cơ bản của dịch vụ WWW có dạng như sau:
giao thức đường dẫn địa chỉ
Trang 21Định vị tài nguyên trê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
Trang 22Định vị tài nguyên trên WWW
Bộ định vị tài nguyên đồng dạng (URL)
URL Tương Đối
I là địa chỉkhông đầy đủ tới một tài nguyên
I chỉ bao gồm đường dẫn đến tài nguyên cần truy xuất, không cógiao thức và địa chỉ host
I giao thức và địa chỉ host đượcsuy ra từ trang web chứa URL
Trang 23Các loại siêu văn bản
Các Loại Siêu Văn Bản
I Web tĩnh (static web):
I là những trang web có nội dung cố định , không thay đổi theo ngữ cảnh
I có phần mở rộng là html hoặc htm
I Web động (dynamic web):
I là những trang web có nội dung thay đổi tùy theo ngữ cảnh (đối
số kèm theo yêu cầu của người dùng)
I nội dung được tạo ra bởi một ngôn ngữ script , bao gồm 2 loại:
I client-side : mã script được thực thi bởi web browser
I server-side : mã script được thực thi bởi web server (hay một application server)
Trang 24Các loại siêu văn bản
Web động
Ngôn Ngữ Script Client-Side
I được “nhúng” vào trongtập tin html
I được thực thi bởi web browsersau khi nhận trang web về từ webserver
I đoạn script nàycó thể thay đổi nội dung của trang webtùy vàongữ cảnh (context)
I một số ngôn ngữ script client-side: JaveScript, ActionScript,
Trang 25Các loại siêu văn bản
Web động
Ngôn Ngữ Script Server-Side
I là đoạn script dùngđể tạo ra một trang web
I được thực thi bởi web server(thường là bởi 1 application server)
I sau khi script được thực thi, trang web tạo ra bởi script sẽ đượcweb server gửi trả về cho web browser
I một số ngôn ngữ script server-side: ASP(.NET), JSP, PHP,
web browser
(1)
(2)
(2’) (3)
(4)
Internet