Đại Học Cần Thơ-Khoa CNTT&TT
Lâm Nhựt Khang
1
Chương 1
Trình duyệtWeb &
Trình phụcvụ Web
2
Nội dung
•Tổng quan
• Các thành phầncủadịch vụ Web
•GiaothứcHTTP
• Web Cache
•URL
• HyperLink & HyperText
3
Tổng quan
• Internet là nguồncungcấp thông tin lớnnhấttrênthế
giới đượccậpnhậtthường xuyên.
•Web
– World Wide Web, Web, W3
–Làhìnhthứctổ chức thông tin phổ biếnvàtiệnlợinhất
hiệnnay.
–Làmộttàiliệuvănbản đượclưudướiphầnmở rộng .html,
.htm, …
– Cho phép tra cứu tài nguyên thông tin qua các siêu vănbản
(Hypertext) sử dụng các siêu liên kết (Hyperlink).
4
Các thành phầncủadịch vụ Web
•Sử dụng mô hình Client/Server:
– Server:
•Làmộtchương trình ứng dụng cung cấpmộtloạidịch vụ nào đó
trên mạng
•Lắng nghe yêu cầucủa Client trên mộtcổng (port) đã định trước
•ThựcthiyêucầucủaClient
•Gởikếtquả về cho Client
–Client:
•Làmộtchương trình ứng dụng sử dụng mộtloạidịch vụ do một
Server nào đó cung cấp
•Gởiyêucầu đếnServer
•Chờ nhậnkếtquả từ Server
•Nhậnkếtquả trả về và xử lý theo mục đích riêng
5
Máy chủ (server)
•Lắng nghe yêu cầu
Server
Xử
lý
yêu
cầu
Yêu cầutừ
Client
Kếtquả từ
Server
Máy khách (client)
Client
•Tạomộtyêucầu
•Gởikếtquả trả về
cho client
•Nhậnyêucầu
•Xử lý yêu cầu
•Nhậnkếtquả trả về và
xử lý theo mục đích
riêng
•Gởiyêucầu đến server
•Chờ server xử lý
6
Các thành phầncủadịch vụ Web
• MôhìnhWeb Client / Web Server
– Web browsers: Internet Explorer, Mozilla FireFox, Netscape Navigator,…
– Web Servers: IIS, Apache, JRun, …
7
Giao thức HTTP
• HyperText Transfer Protocol
•Giaothức ở tầng ứng dụng trong mô hình OSI, sử
dụng giao thứcvận chuyểnTCP
•Hoạt động trên cổng 80
•Dùngđể giao tiếpgiữa Web Browser và Web Server
•Làgiaothức “không trạng thái” (stateless)
• Thông tin trao đổichủ yếulàcáctàiliệubằng ngôn
ngữ HTML
•Cácphiênbản : HTTP 0.9, HTTP 1.0, HTTP 1.1
8
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
of message
9
Giao thức HTTP
•Cấu trúc Request / HTTP
Đượcsử dụng bởi các proxyCONNECT
Phảnhồilại thông điệpyêucầuTRACE
Xóa tài liệunằm ở vị trí URL trên serverDELETE
Tảitàiliệu lên server và đặt ở vị trí đượcxácđịnh trong URL PUT
Cung cấp thông tin cho serverPOST
Lấyvề thông tin thô về tài liệu đượcxácđịnh trong URLHEAD
Lấyvề tài liệu đượcxácđịnh trong URLGET
Yêu cầu thông tin về các tùy chọnhiệncó.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ấtbại trong việc đáp ứng mộtyêucầuhợplệLỗiserver5xx
Yêu cầucócúphápsaihoặc không thểđược đáp ứngLỗiclient4xx
Cầnthựchiện thêm thao tác để hoàn tấtyêucầu được đặtraChuyểnhướng3xx
Thao tác đã đượctiếpnhận, hiểu đượcvàchấpnhận đượcThành công2xx
Đãnhận đượcyêucầu, đang tiếptụcxử lýThông tin1xx
Lý doLoạiMã
12
Giao thức HTTP
13
Web Cache
• Đáp ứng yêu cầu Client mà không cầntruycập đến Server gốc.
• Cache tại Browser (Temporary Internet File) hoặc Server (Web
Server, Proxy Server).
•Giảmthờigianđáp ứng tới Client vì không cầntruyxuất
đếnserver gốc
•Giảmlưuthôngtrênmạng, tiếtkiệmbăng thông => hạn
chế đượctìnhtrạng nghẽn (bottleneck) đường truyền
client
Proxy
server
client
h
t
t
p
r
e
q
u
e
s
t
h
ttp
r
e
q
u
e
s
t
h
t
t
p
r
e
s
p
o
n
s
e
h
t
t
p
r
e
q
u
e
st
h
t
t
p
r
e
s
p
o
n
s
e
origin
server
origin
server
14
Web Cache
• Trong lập trình, để ngănmộ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ốnbị 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”
15
URL
•Bộđịnh vị tài nguyên (Uniform Resource
Locator).
•Làđịachỉđị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
16
URL
• HTTP:
http://server_name.domain[[:port]/directory/subdirecrory
[/document]]
Ví dụ:
:8080/cong/home.htm
• FTP:
ftp://[User_account[:password]@]server_name.domain
[[:port]/directory[/document]]
Ví dụ
:
/>ftp://ttinternet:/thuctap/file1.txt
17
URL
• Email:
mailto:email_address
Ví dụ
:
mailto:
• 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àđịachỉđầy đủ củamột tài nguyên.
–Baogồmgiaothức, vị trí mạng, đường dẫnvàtêntậptin.
–Vídụ: />•URL tương đối:
–Làmột địachỉ không đầy đủ củamột tài nguyên.
–Baogồm đường dẫn(cóthể không có) và tên tậptin.
–Vídụ:
•Người dùng đang đọc trang web:
/>• Địachỉ URL tường đối URL= chuyenmuc.php
–Phần thông tin bị mất />– Trình duyệttự xác định URL tuyệt đối:
URL= />19
URL
•URL tương đối (tt):
–Vídụ:
•Người dùng đang đọc trang web:
/>• Địachỉ URL tường đối URL= /index.php
–Phần thông tin bị mất />–Trìnhduyệttự xác định URL tuyệt đối:
URL= />Chú ý:
• / trở về thư mụcgốc
• / trở về thư mụccha
20
HyperLink & HyperText
• HyperText: hệ thống liên kết các phầntử thông tin nhờ vào các
liên kếtcóthể kích hoạthay còngọi là siêu liên kết.
–Cácphầntử thông tin trong siêu vănbản:
•Dữ liệudạng vănbảnhay dữ liệudạng Text
•Dữ liệudạng multimedia: âm thanh, hình ảnh
•Siêuvănbản
•Những chương trình thựcthiđượcviếtbằng các ngôn ngữ lập trình như
Java, Java Applet, ASP, ASP.NET, PHP…)
• HyperLink: là mốinốikếtgiữahaiphầntử thông tin trong một
siêu vănbản.
–Liênkết trong (Internal link)
–Liênkết ngoài (External link)
–Liênkếtcóthể thựcthiđược (Executable Link)
21
Siêu liên kết(HyperLink)
• Liên kếttrong:liên kếttrong
mộttàiliệuchỉđếnmộtphầntử
thông tin ngay trong chính tài
liệu đó.
• Liên kết ngoài: liên kết đến
mộttàiliệu khác bên ngoài tài
liệu đang tra cứu.
• Liên kếtcóthể thựcthiđược:
liên kết ngoài, thựcthimột
chương trình xử lý dữ liệutheo
yêu cầungười dùng Web, và
cho ra thông tin kếtquả.
Hyperlink
Hyperlink
Program
Hyperlink
Process/Data
22
03.01.2011