– Là một tài liệu văn bản được lưu dưới phần mở rộng .html, .htm, … – Cho phép tra cứu tài nguyên thông tin qua các siêu văn bản Hypertext sử dụng các siêu liên kết Hyperlink.. 4 Các th
Trang 1Đại Học Cần Thơ-Khoa CNTT&TT Lâm Nhựt Khang
1
Chương 1
Trình duyệt Web &
Trình phục vụ Web
2
Nội dung
• Tổng quan
• Các thành phần của dịch vụ Web
• Giao thức HTTP
• Web Cache
• URL
• HyperLink & HyperText
3
Tổng quan
• Internet là nguồn cung cấp thông tin lớn nhất trên thế
giới được cập nhật thường xuyên.
• Web
– World Wide Web, Web, W3
– Là hình thức tổ chức thông tin phổ biến và tiện lợi nhất
hiện nay.
– Là một tài liệu văn bản được lưu dưới phần mở rộng html,
.htm, …
– Cho phép tra cứu tài nguyên thông tin qua các siêu văn bản
(Hypertext) sử dụng các siêu liên kết (Hyperlink).
4
Các thành phần của dịch vụ Web
• Sử dụng mô hình Client/Server:
– Server:
• Là một chương trình ứng dụng cung cấp một loại dịch vụ nào đó trên mạng
• Lắng nghe yêu cầu của Client trên một cổng (port) đã định trước
• Thực thi yêu cầu của Client
• Gởi kết quả về cho Client
– Client:
• Là một chương trình ứng dụng sử dụng một loại dịch vụ do một Server nào đó cung cấp
• Gởi yêu cầu đến Server
• Chờ nhận kết quả từ Server
• Nhận kết quả trả về và xử lý theo mục đích riêng
Trang 2Máy chủ (server)
• Lắng nghe yêu cầu
Server
Xử
lý
yêu
cầu
Yêu cầu từ Client
Kết quả từ Server
Máy khách (client) Client
• Tạo một yêu cầu
• Gởi kết quả trả về
cho client
• Nhận yêu cầu
• Xử lý yêu cầu
• Nhận kết quả trả về và
xử lý theo mục đích riêng
• Gởi yêu cầu đến server
• Chờ server xử lý
6
Các thành phần của dịch vụ Web
• Mô hình Web Client / Web Server
– Web browsers: Internet Explorer, Mozilla FireFox, Netscape Navigator,…
– Web Servers: IIS, Apache, JRun, …
Giao thức HTTP
• HyperText Transfer Protocol
• Giao thức ở tầng ứng dụng trong mô hình OSI, sử
dụng giao thức vận chuyển TCP
• Hoạt động trên cổng 80
• Dùng để giao tiếp giữa Web Browser và Web Server
• Là giao thức “không trạng thái” (stateless)
• Thông tin trao đổi chủ yếu là các tài liệu bằng ngôn
ngữ HTML
• Các phiên bản : HTTP 0.9, HTTP 1.0, HTTP 1.1
Giao thức HTTP
• Cấu trúc Request / HTTP
GET /somedir/page.html HTTP/1.0 User-agent: Mozilla/4.0
Accept: text/html, image/gif,image/jpeg Accept-language:fr
(extra carriage return, line feed)
request line (GET, POST, HEAD commands)
header lines Carriage return, line feed indicates end
Trang 3Giao thức HTTP
• Cấu trúc Request / HTTP
Được sử dụng bởi các proxy CONNECT
Phản hồi lại thông điệp yêu cầu TRACE
Xóa tài liệu nằm ở vị trí URL trên server DELETE
Tải tài liệu lên server và đặt ở vị trí được xác định trong URL PUT
Cung cấp thông tin cho server POST
Lấy về thông tin thô về tài liệu được xác định trong URL HEAD
Lấy về tài liệu được xác định trong URL GET
Yêu cầu thông tin về các tùy chọn hiện có
OPTIONS
Mô tả Hành động
10
Giao thức HTTP
• Cấu trúc Response / HTTP
HTTP/1.0 200 OK Date: Thu, 06 Aug 1998 12:00:15 GMT Server: Apache/1.3.0 (Unix)
Last-Modified: Mon, 22 Jun 1998 … Content-Length: 6821
Content-Type: text/html data data data data data
status line (protocol status code status phrase)
header lines
data, e.g., requested html file
11
Giao thức HTTP
• Cấu trúc Response / HTTP
Server thất bại trong việc đáp ứng một yêu cầu hợp lệ Lỗi server
5xx
Yêu cầu có cú pháp sai hoặc không thể được đáp ứng Lỗi client
4xx
Cần thực hiện thêm thao tác để hoàn tất yêu cầu được đặt ra Chuyển hướng
3xx
Thao tác đã được tiếp nhận, hiểu được và chấp nhận được Thành công
2xx
Đã nhận được yêu cầu, đang tiếp tục xử lý Thông tin
1xx
Lý do Loại
Mã
12 Giao thức HTTP
Trang 4Web Cache
• Đáp ứng yêu cầu Client mà không cần truy cập đến Server gốc
• Cache tại Browser (Temporary Internet File) hoặc Server (Web
Server, Proxy Server)
• Giảm thời gian đáp ứng tới Client vì không cần truy xuất
đến server gốc
• Giảm lưu thông trên mạng, tiết kiệm băng thông => hạn
chế được tình trạng nghẽn (bottleneck) đường truyền
client
Proxy server
client
http request http req uest http re sponse
http req uest http res ponse
origin server
origin server
14
Web Cache
• Trong lập trình, để ngăn một trang Web bị cache trên Client Î thêm dòng mã sau vào trang Web:
<META HTTP-EQUIV=“PRAGMA” CONTENT=“NO-CACHE”>
• Người dùng IE không muốn bị Cache, thực hiện các thao tác sau:
Mở IE / Menu Tools / Internet Options / General / Browsing history / Settings / Click “Every time I visit the webpage”
URL
• Bộ định vị tài nguyên (Uniform Resource
Locator).
• Là địa chỉ định vị nguồn tài nguyên trên
Internet.
• Cú pháp tổng quát:
<protocol>://<host>.<domain_name>/directory_path/file_name
URL
• HTTP:
http://server_name.domain[[:port]/directory/subdirecrory
[/document]]
Ví dụ:
http://www.microsoft.com http://www.ctu.edu.vn:8080/cong/home.htm
• FTP:
ftp://[User_account[:password]@]server_name.domain
[[:port]/directory[/document]]
Ví dụ:
ftp://ftp.cit.ctu.edu.vn/giaotrinh/
ftp://ttinternet:ttinternet@172.18.211.19/thuctap/file1.txt
Trang 5URL
• Email:
mailto:email_address
Ví dụ:
mailto:tttgiang@cit.ctu.edu.vn
• File trên đĩa:
file://server_name/directory/subdirecrory/document
file://<ổ đĩa:>/directory/subdirecrory/document
Ví dụ:
file://internet_server/course/index.htm
file://c:/course/test.html
18
URL
• URL tuyệt đối:
– Là địa chỉ đầy đủ của một tài nguyên
– Bao gồm giao thức, vị trí mạng, đường dẫn và tên tập tin
– Ví dụ: http://www.cit.ctu.edu.vn/student/index.htm
• URL tương đối:
– Là một địa chỉ không đầy đủ của một tài nguyên
– Bao gồm đường dẫn (có thể không có) và tên tập tin
– Ví dụ:
• Người dùng đang đọc trang web:
http://www.cit.ctu.edu.vn/student/homepage.php
• Địa chỉ URL tường đối URL= chuyenmuc.php
– Phần thông tin bị mất http://www.cit.ctu.edu.vn/student/
– Trình duyệt tự xác định URL tuyệt đối:
URL= http://www.cit.ctu.edu.vn/student/chuyenmuc.php
19
URL
• URL tương đối (tt):
– Ví dụ:
• Người dùng đang đọc trang web:
http://www.cit.ctu.edu.vn/student/homepage.php
• Địa chỉ URL tường đối URL= /index.php
– Phần thông tin bị mất http://www.cit.ctu.edu.vn/student/
– Trình duyệt tự xác định URL tuyệt đối:
URL= http://www.cit.ctu.edu.vn/index.php
Chú ý:
• / trở về thư mục gốc
• / trở về thư mục cha
20
HyperLink & HyperText
• HyperText: hệ thống liên kết các phần tử thông tin nhờ vào các liên kết có thể kích hoạt hay còn gọi là siêu liên kết
– Các phần tử thông tin trong siêu văn bản:
• Dữ liệu dạng văn bản hay dữ liệu dạng Text
• Dữ liệu dạng multimedia: âm thanh, hình ảnh
• Siêu văn bản
• Những chương trình thực thi được viết bằng các ngôn ngữ lập trình như Java, Java Applet, ASP, ASP.NET, PHP…)
• HyperLink: là mối nối kết giữa hai phần tử thông tin trong một siêu văn bản.
– Liên kết trong (Internal link)
– Liên kết ngoài (External link) – Liên kết có thể thực thi được (Executable Link)
Trang 6Siêu liên kết (HyperLink)
• Liên kết trong: liên kết trong
một tài liệu chỉ đến một phần tử
thông tin ngay trong chính tài
liệu đó
• Liên kết ngoài: liên kết đến
một tài liệu khác bên ngoài tài
liệu đang tra cứu
• Liên kết có thể thực thi được:
liên kết ngoài, thực thi một
chương trình xử lý dữ liệu theo
yêu cầu người dùng Web, và
cho ra thông tin kết quả
-Hyperlink
-Hyperlink
-Program Hyperlink
Process/Data
22
03.01.2011