1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng website du lịch Angkor

87 623 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây dựng website du lịch Angkor
Trường học Trường Đại Học Công Nghệ Thông Tin - Đại Học Quốc Gia Hà Nội
Chuyên ngành Công Nghệ Thông Tin
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 87
Dung lượng 2,46 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Xây dựng website du lịch Angkor Đồ án gồm có 4 chương 1. Tổng quan về Internet và Intranet 2. Các công cụ phát triển ngôn ngữ lập trình trên Web 3. Thiết kế và xây dựng website Angkor 4. Kết luận chung Đồ án dành cho các bạn nghiên cứu xây dựng website du lịch trên mạng.

Trang 1

Mục lục

Trang

Mục lục 1

Mở đầu 4

Chơng I tổng quan về internet 5

1.1 Khái quát chung về Web 5

1.1.1 Sự ra đời của Internet và Intranet 5

1.1.2 Các dịch vụ Internet 6

a/ Dịch vụ th điện tử 6

b/ Dịch vụ Mailling List 7

c/ Dịch vụ Telnet 7

d/ Dịch vụ Truyền tệp (FTP) 8

e/ Dịch vụ Gopher 8

f/ Dịch vụ WWW 9

1.2 Cấu trúc và mô hình hoạt động của dịch vụ WWW 10

1.2.1 Web Browser 11

a) Netscape Navigator : 11

b)Internet Explorer : 12

1.2.2 Web Server 12

a) Hoạt động của Web Server 13

b) Phần mềm của Web Server 15

1.3 Một số giao thức thờng gặp 15

1.3.1 Họ giao thức TCP/IP 15

a) Mô hình OSI 15

b) Kiến trúc phân lớp trong họ giao thức TCP/IP 18

c) Giao thức liên mạng IP 20

d) Giao thức TCP 22

e) Giao thức UDP 22

f) Giao thức FTP 23

1.3.2) Giao thức HTTP (HyperText Transfer Protocol) 23

1.4 Bộ định vị tài nguyên tổng quát url (Uniform 25

Resource Locator) 25

Trang 2

Chơng II Các công cụ phát triển và Ngôn ngữ lập trình 27

2.1 Ngôn ngữ HTML 27

2.1.1 Giới thiệu 27

2.1.2 Cấu trúc của một văn bản HTML 27

2.1.3 Những thẻ chính đợc dùng trong ngôn ngữ HTML 27

a) Loại định nghĩa các danh sách có thứ tự hoặc không thứ tự 28

b) Loại tag định nghĩa liên kết giữa tài liệu này với tài liệu khác 28

c) Loại tag định nghĩa bảng 29

d) Loại tag định nghĩa Khung (Frame) 29

e) Loại tag định nghĩa Form 31

2.1.4 HTML Động 32

2.1.5 Ưu nhợc điểm của ngôn ngữ HTML 33

2.2 Ngôn ngữ ASP (Active Server Pages) 34

2.2.1 Giới thiệu chung 34

2.2.2 ASP và HTML 34

2.2.3 ASP và Script 34

2.2.4 ASP và sự phát triển Web 34

2.2.5 Mô hình ASP 35

2.2.6- Sử dụng các Script trong ASP 35

a) Sử dụng ngôn ngữ Script 35

b) Sử dụng biến 36

c) Sử dụng hằng 38

d) Viết các chơng trình con (Procedures) 38

2.2.7 Sử dụng định hớng ASP (ASP Directives) 43

2.2.8 Sử dụng các Thành phần và Đối tợng (Components and Objects) 45

a.) Tạo ra các Instance của một đối tợng thuộc Component 45

b.) Tạo ra một Instance từ Java Class 46

c.) Các Component của ActiveX : 46

2.2.9 Sử dụng Collection 47

a.) Khái niệm 47

Trang 3

b.) Truy nhập đến các phần tử của Collection 48

c/ Ví dụ chơng trình xử lý Form 51

2.2.10 Try nhập cơ sở dữ liệu 56

a) Tạo một data source 58

b Kết nối với CSDL 59

c) Truy vấn dữ liệu với đối tợng Connection 59

2.3 Các công cụ phát triển trang Web 61

2.3.1 Microsoft Visual InterDev 61

2.3.2 Microsoft FrontPage 2000 63

Chơng III Thiết kế, xây dựng, và cài đặt Web Site du lịch angkor 64

3.1 Mục tiêu của việc thiết kế một Web site 64

3.2 Các thành phần để tạo trang Web 64

3.2.1 Thông tin yêu cầu từ khách hàng 64

3.2.2 Xác định tổng thể 64

3.2.3 Xác định mục tiêu chi tiết 65

3.2.4: Phạm vi thông tin 65

3.2.5 Trang Web cụ thể 65

3.2.6 Trình bày trang Web 65

3.3 Các quá trình phát triển Web site 66

3.4 Thiết kế giao diện 67

3.5 Thiết kế hớng tới ngời sử dụng 68

3.6 Tính ổn định thiết kế 69

3.7 Thiết kế và xây dựng Web site Du lịch Angkor 69

3.7.1 Mục đích của Web site 70

3.7.3 Thiết kế chi tiết cho từng Modul 72

a) Thiết kế cho trang chủ (default.htm) 72

b) Thiết kế cho trang Lịch sử Angkor 73

c) Thiết kế trang tìm kiếm (Search.asp) 79

Kết luận 85

Tài liệu tham khảo 86

Bảng chú giải các từ viết tắt Tiếng anh 87

Trang 4

Mở đầu

Sự ra đời và phát triển của tin học là một trong những thành quả vĩ

đại nhất của con ngời Tin học, một công cụ đắc lực giúp con ngời tăng khảnăng làm việc, giúp công việc thuận tiện và nhanh chóng hơn

Ngày nay những đổi mới trong công nghệ, trong quản lý kinh doanh,trong lĩnh vực du lịch đều có sự góp phần quan trọng của tin học và kếthợp với sự ra đời Web của Internet đã mang lại những lợi ích thiết thực, dovậy trong kỳ làm đồ án tốt nghiệp này em đã chọn đề tài là :

"Xây dựng Web site Du lịch Angkor "

Em xin chân thành cám ơn GS.TS Nguyễn Thúc Hải đã hớng dẫn,

giúp đỡ tận tình trong quá trình làm đồ án Đồng thời Em cũng xin cám ơncác thầy cô giáo trong Khoa Công nghệ thông tin đã giảng dạy cho Emnhững kiến thức cơ bản và cũng xin cám ơn các bạn đã góp ý kiến quý báu

để cho Em thực hiện đề tài này thành công

Đồ án gồm có 4 chơng:

Chơng I: Tổng quát về Internet và Intranet

Giới thiệu chung về Internet và Intranet, lịch sử phát triển, các dịch

vụ Internet, giới thiệu về WWW các kiến trúc và mô hình hoạt động củaWWW

Chơng II: Các công cụ phát triển và ngôn ngữ lập trình tren Web

Chơng III: Thiết kế và xây dựng Web site Angkor

Chơng IV: Kết luận chung

Sinh viên

Bou Chan Than

Trang 5

chơng I

tổng quan về internet

1.1 Khái quát chung về Web

1.1.1 Sự ra đời của Internet và Intranet

Internet có thể định nghĩa nh là một mạng toàn cầu của các máy tính

và các mạng, đợc nối với nhau theo giao thức TCP/IP Mặc dù đã xuất hiện

đợc hơn 20 năm, nhng Internet cũng chỉ bùng nổ vào những năm gần đây,nhất là từ khi công nghệ Web ra đời

Tiền thân của Internet hiện nay là ARPANET, mạng máy tính dựatrên kỹ thuật chuyển mạch gói đợc xây dựng bởi Bộ Quốc phòng Mỹ vàonăm 1969 vừa để thử nghiệm độ tin cậy của mạng, vừa nhằm kết nối nhữngcơ sở nghiên cứu với mục đích quân sự Khởi đầu với quy mô nhỏ nhngARPANET đã nhanh chóng thu hút đợc sự chú ý của giới quân sự và khoahọc và đã nhanh chóng bành trớng ra khắp nớc Mỹ

Ban đầu, Giao thức truyền thông đợc sử dụng trong ARPANET làNCP (Network control protocol) Tuy nhiên, xuất phát từ nhu cầu thực tế,các nhà thiết kế ngay từ đầu đã nhận thức đợc rằng ARPANET phải là mộtmạng của các mạng máy tính chứ không chỉ đơn thuần là một mạng máytính bình thờng Với mục đích này, từ giữa những năm 70, một họ giao thứcmới đợc phát triển cho ARPANET và dần dần đã thay thế hoàn toàn NCP

Đó chính là họ giao thức TCP/IP

Ban đầu, TCP/IP đợc tích hợp vào hệ điều hành Unix Đến khi cácmáy PC xuất hiện thì TCP/IP lại đợc chuyển sang môi trờng PC, cho phépcác máy PC chạy DOS (và Windows sau này) có thể liên kết với các trạmUnix trên cùng một mạng

Mạng ARPANET về sau đợc tách ra thành 2 mạng: MILNET cho cácmục đích quân sự và ARPANET mới, nhỏ hơn cho các mục đích phi quân

sự Hai mạng này liên kết với nhau theo nghi thức TCP/IP - đó chính là

Trang 6

mạng Internet ngày nay Internet là một mạng toàn cầu của các mạng sửdụng giao thức TCP/IP.

Khi Internet đã phát triển mạnh mẽ và đợc sử dụng rộng rãi thì ngời

ta mới nhận ra một số nhợc điểm của nó: Thứ nhất là thông tin di chuyểntrên Internet hoàn toàn không đợc bảo vệ hữu hiệu Những kẻ với mu đồxấu có nhiều cách để đọc đợc các thông tin quan trọng lu chuyển trên đờngtruyền tín hiệu Thứ hai Internet chính thức không quản lý bởi bất cứ một cơquan hay tổ chức nào (trừ địa chỉ đợc quản lý bởi InterNic) Do đó từ hạtầng mạng cho đến phần mềm sử dụng trên Internet và thông tin trên đóhoàn toàn không bảo đảm đợc tính trật tự và đồng nhất Chính vì vậy, nhiều

tổ chức lớn có nhiều chi nhánh trên toàn cầu đã xây dựng một mạng riêngcủa mình theo mô hình và các tiêu chuẩn của Internet Những mạng này cóthể hoàn toàn không nối với Internet hay đợc ngăn cách với Internet bởi một

“bức tờng lửa” (fire wall) bảo đảm an ninh xây dựng bởi phần cứng hoặcphần mềm hay thông thờng hơn - tổ hợp của cả hai Những mạng nh vậy đ-

ợc gọi là Intranet Intranet là một mạng TCP/IP sở hữu bởi một tổ chức, đợcxây dựng theo các tiêu chuẩn kỹ thuật của Internet

1.1.2 Các dịch vụ Internet

Một trong các lý do làm nên sự thành công rực rỡ của Internet là các dịch

vụ hữu ích của nó Dịch vụ nổi tiếng nhất, và cũng phổ biến nhất hiện naycủa Internet là Web Tuy Internet ra đời và trở nên phổ biến trớc Web rấtlâu Dới đây là một vài dịch vụ quan trọng của Internet (ngày nay nhữngdịch vụ vẫn đợc sử dụng và Web đã thay thế đợc chức năng của một vàidịch vụ trong số đó )

Trang 7

b/ Dịch vụ Mailling List

Là cách tốt nhất cung cấp thông tin tới tay nhiều ngời cùng một lúc.Một "Mailling List" là một danh sách các địa chỉ điện th của những ngờidùng trong nhóm Khi có một bức th đợc gửi cho nhóm thì mọi ngời trongnhóm đều nhận đợc Qua dịch vụ "Mailling List" ngời ta có thể tạo ra cácnhóm thảo luận Khi một ngời trong nhóm đa ra ý kiến của mình thì mọingời trong nhóm đều nhận đợc ý kiến đó Hiện nay có một số chơng trìnhdùng để quản lý những "Mailling List" lớn nh Majordomo, ListSer

Khi dùng dịch vụ Telnet để đăng nhập (Login) vào một hệ thống ở

xa, ngời sử dụng không những truy nhập đợc các tài nguyên về đĩa và cáctệp trên hệ thống mà còn tận dụng đợc tài nguyên về bộ nhớ và khả năng về

bộ vi xử lý trên hệ thống đó

Dùng dịch vụ Telnet để đăng nhập vào một hệ thống ở xa, ngời sửdụng sẽ đợc hỏi về tên và mật khẩu để kiểm tra quyền truy nhập hệ thốngcủa họ Nh vậy để đăng nhập vào một hệ thống thì ngời sử dụng phải có tàikhoản (Account) trong hệ thống Hệ thống ở xa luôn sẵn sàng khởi tạophiên làm việc (Session) cho ngời sử dụng mọi khi họ đăng nhập Sau đóngời sử dụng có thể làm việc, sử dụng các tài nguyên ở xa Khi ngời sửdụng thoát khỏi (Logout) hệ thống thì hệ thống sẽ tự động kết thúc phiênlàm việc đó

d/ Dịch vụ Truyền tệp (FTP)

Trang 8

FTP là một điển hình của hệ thống Client/Server trong đó ngời sửdụng chơng trình trên máy tính của mình (Client) để liên kết với chơngtrình chạy trên máy tính ở xa (Server) cho phép Client truy cập lấy tệp tin từServer về hay truyền tệp tin tới Server Trên Internet có rất nhiều FTP Server(tất nhiên trên đó chạy chơng trình FTP) và Client muốn truy cập lấy tệp tin

từ FTP Server ở đâu đó trên Internet cần phải đăng ký quyền sử dụng (nghĩa

là có Login Account trên FTP Server) FTP Server sẽ quyết định cho phépClient đợc quyền lấy những tệp tin nào

Đặc biệt có một loại FTP Server gọi là FTP Server nặc danh(Anonymous) Nó kết nối với máy tính chủ ở xa và thực hiện việc tải tệp về

mà không cần phải đăng ký quyền sử dụng trên máy đó Tuy nhiên ngời sửdụng cần lấy tài nguyên thông tin vẫn phải đăng ký trên các FTP Server nặcdanh FTP Server nặc danh là một trong những phơng tiện chính để phânphát phần mềm và các nguồn tài nguyên thông tin có trên mạng Internet

Có một số lớn các phần mềm đủ loại khác và cho nhiều chủng loại hệ thốngmáy tính khác nhau lu trữ trên các FTP Server nặc danh và những phầnmềm đó thờng đợc cấp cho ngời sử dụng miễn phí

FTP cung cấp tất cả các dạng tệp, trên thực tế nó không quan tâm tớidạng tệp cho dù đó là tệp ASCII hay tệp nhị phân (binary) Sự khác biệtgiữa các tệp ASCII text và tệp nhị phân ở chỗ đối với tệp ASCII khi truyền,

đòi hỏi bên gửi và bên nhận phải chú ý tới các cặp ký tự CR-LF còn với tệpnhị phân thì đợc chuyển thành một dòng các bít liên tục

FTP cũng có một số nhợc điểm Điểm chính là việc truy nhập vàotừng th mục để tìm tệp là một quá trình chậm chạp Kỹ thuật truyền thống

mà một quản trị mạng dùng để giúp ngời sử dụng tìm tệp là cung cấp mộtdanh sách đệ quy các điều mà điều này không phải là không rắc rối

e/ Dịch vụ Gopher

Tra cứu thông tin theo thực đơn (Gopher) dịch vụ này cho phép tìmkiếm thông tin theo chủ đề dựa trên hệ thống thực đơn (Menu) Dịch vụGopher hoạt động theo mô hình Khách/Chủ (Client/Server) ở phía khách

Trang 9

hàng, ngời sử dụng dùng một phần mềm gọi là "Gopher Client" để tuynhập và tra cứu thông tin trên máy phục vụ gọi là "Gopher Server”.

Khi ngời sử dụng có một yêu cầu đối với Gopher Server, thì GopherServer sẽ trả cho ngời sử dụng một danh sách các chủ đề thông tin đợc tổchức dới dạng một thực đơn Trong chủ đề thông tin có thể bao gồm nhiềudạng chủ đề thông tin nhỏ nữa Ngời sử dụng có thể chọn một mục thôngtin bất kỳ để xem hoặc duyệt qua lại giữa các đề mục thông tin bất kỳ đểchọn đề mục thích hợp

f/ Dịch vụ WWW

Ngày nay, World Wide Web (WWW hay Web) và Internet đã trởthành những khái niệm quen thuộc trên thế giới Trong các quảng cáo trêncác chơng trình TV và trong các báo, tạp chí của chúng ta đã bắt đầu xuấthiện cả địa chỉ các trang Web (địa chỉ này đợc gọi là các URL-UniformResource Locators) Nh vậy Web là gì ?

 Web là gì ?

Để hiểu đợc Web, trớc hết phải hiểu qua về Hypertext Hypertext lànhững dữ liệu gồm những phần liên kết với các dữ liệu khác Từng phần cóthể liên kết bất cứ nơi nào, trong một tài liệu hầu nh không kết thúc Trongngôn ngữ của Web, một tài liệu của Hypertext gồm phần dữ liệu và phần cóthể liên kết với những tài liệu khác Chơng trình dùng để đọc một tài liệuHypertext gọi là Browser

Nh vậy Web là một sự cố gắng tổ chức tất cả các thông tin trênInternet bằng việc cài đặt các tài liệu ở dạng Hypertext

 Sự ra đời và phát triển của Web

Web đã đợc phát triển tại Thuỵ sỹ, tại trung tâm nghiên cứu CERN

T tởng này đợc đa ra nhằm giúp các nhà vật lý học của CERN chia sẻ côngviệc của họ và dùng chung những thông tin trong nhóm Chẳng bao lâusau, t tởng của Web đã đợc mở rộng và áp dụng vào Internet nh một kỹ xảocủa việc truy cập thông tin và các dịch vụ của Internet

Trang 10

Dịch vụ World Wide Web (Gọi tắt là dịch vụ Web) là một dịch vụmới nhất trên Internet nhng đã khẳng định đợc tầm quan trọng cũng nh khảnăng lớn mạnh của nó Web đợc xây dựng theo mô hình Khách/Chủ, trong

đó ngời sử dụng có thể truy cập tra cứu thông tin ở nhiều dạng khác nhau

nh văn bản, âm thanh, hình ảnh khả năng trình bày của Web rất linh động

đẹp mắt Đặc biệt Web cho phép liên kết các tài nguyên khác nhau trênmạng cũng nh khả năng tích hợp nhiều các dịch vụ khác nhau nh FTP,WIAS, Gopher trên cùng một dịch vụ Web hoạt động dựa trên ngôn ngữ

đánh dấu các siêu văn bản

Web có các đặc tính u việt hơn hẳn và đồng thời khắc phục đợc cácnhợc điểm của nhiều dịch vụ thông tin khác nhau nên đợc rất nhiều ngời sửdụng Đây là dịch vụ đợc nhiều ngời sử dụng nhất hiện nay

1.2 Cấu trúc và mô hình hoạt động của dịch vụ WWW

Web đợc xây dựng và hoạt động theo mô hình Khách/Chủ(Client/Server) Hình 1.1 mô tả hoạt động của Web

Các Web khách hàng (Web Client) gửi yêu cầu tới máy phục vụ(Web Server) để lấy một t liệu hay thông tin nào đó trên máy phục vụ Máyphục vụ sau khi nhận yêu cầu đó, phân tích và tìm kiếm thông tin Nếu thấy

sẽ gửi thông tin đó cho khách hàng (thực chất khách hàng đó dùng phầnmềm Web Browser để truy cập thông tin và máy phục vụ dùng một phầnmềm gọi là Web Server)

Request URL

Máy trạm

Response(html)

Máy Web server

Hình 1.1

Trang 11

1.2.1 Web Browser

Web browser (trình duyệt Web) là công cụ truy xuất dữ liệu trênInternet/Intranet, là phần mềm giao diện trực tiếp với ngời sử dụng Nó cókhả năng thực hiện yêu cầu của ngời sử dụng Sau đó Web browser sẽ đợithông tin từ Web server, từ những máy phục vụ (Servers) của các dịch vụ đ-

ợc gọi tới, hoặc từ các Web browser khác rồi trả lại kết quả cho ngời đã yêucầu

Hiện nay trên thị trờng có rất nhiều các Web Browser khác nhau (rấtnhiều trong số đó là miễn phí) Hai Browser mạnh nhất hiện nay làNetscape Navigator của hãng Netscape và Internet Explorer của hãngMicrosoft Tính năng của hai trình duyệt này tơng đơng nhau

a) Netscape Navigator :

Là sản phẩm của Netscape Communication Corporation ra đời vàonăm 1994 Netscape Navigator là một phần mềm với đầy đủ tính năng cầnthiết Nó hỗ trợ HTTP, Email, Gopher, FTP, Telnet, WAIS, và Usenet news.Netscape có thể sử dụng FTP để nhận các File Server ở xa, có thể truy tìmcơ sở dữ liệu trên WAIS, hỗ trợ các tính năng Gopher chuẩn và thậm chí cóthể chạy các phiên Telnet từ các trạm nối với Internet

Netscape không thể thay thế cho một số tiện ích chuẩn nh WS-FTP(một phần mềm FTP thông dụng) Nhng nó có khả năng tạo cho ngời sửdụng cảm nhận các dịch vụ này là trong suốt Tơng tự nh các trình duyệtWeb khác, Netscape hỗ trợ phần mềm Viewer từ bên ngoài để xử lý cácdạng dữ liệu mà bản thân nó không xử lý đợc Các phần mềm này bao gồmkhả năng xem các tệp Video số hoá và âm thanh số

Đặc tính quan trọng nhất của Netscspe so với các phần mềm khác là

nó đa ra các chuẩn mở rộng cho ngôn gnữ HTML Các mở rộng này tạo ratính không tơng thích giữa văn bản định dạng theo kiểu Netscape và vănbản HTML thông dụng Tuy nhiên các mở rộng này lại đợc sử dụng rộngrãi

b)Internet Explorer :

Trang 12

Sau sáu tháng tập trung nỗ lực nhằm đa các khả năng của Internetvào thế giới PC, vào khoảng giữa năm 1995, Microsoft đã đa ra thị trờngphần mềm mới Internet Explorer và lập tức nó đợc chấp nhận sử dụng Tại

Mỹ, có trên 15 triệu ngời kết nối Internet sử dụng trình duyệt InternetExplorer

Internet Explorer đợc xây dựng có nhiều tính năng giống vớiNetscape Navigator Nó cũng hỗ trợ chuẩn HTML và SSL (Secure SocketsLayer - chuẩn về an toàn bảo mật thông tin trên Internet), quản lý đợc nhiềuloại tệp tin, cài đặt trình trợ giúp (helper) để hiển thị và trình bày dữ liệu, cógiao diện tiện dụng, dễ hiểu và dễ cài đặt Để cạnh tranh với Netscape, cácphiên bản của Internet Explorer đợc phát hành miễn phí kèm theoWindows

1.2.2 Web Server

Web Server là phần mềm đóng vài trò phục vụ (Server) Khi thựchiện, nó nạp vào bộ nhớ và đợi các requests từ nơi có yêu cầu Requests cóthể xuất phát từ các Web Browser hoặc có thể để từ các Web Server khác.Trong cả hai trờng hợp trên, ta quy ớc đối tợng gửi yêu cầu là khách hàng

HTTP

FTP

Quá trình xử lý yêu cầu

Hình 1.2

Trang 13

mà ta gọi chung là tài nguyên Khi nhận đợc yêu cầu, Web Server phân tíchyêu cầu để xác định xem dữ liệu mà client muốn là gì (quá trình xử lý yêucầu) Sau đó sẽ xử lý và trả kết quả cho khách hàng Nh trên hình vẽ ta thấyWeb Server có thể gọi các gateway và coi đó nh cổng ra vào nguồn thôngtin trong hệ thống hay trên mạng Internet.

Web Server cũng nh các Server khác đều trên máy tính kết nối vớimạng Điều này đòi hỏi máy phải đợc cài đặt phần mềm giao tiếp mạng vàphần cứng thích hợp Hầu hết các giao thức hệ thống thông tin, bao gồmHTTP, FTP, Wais, NNTP, đều chạy trên nền bộ giao thức TCP/IP

a) Hoạt động của Web Server

Web Server thực chất là phần mềm đợc cài đặt trên máy chủ nhằm để

xử lý và đáp ứng yêu cầu gửi đến từ máy trạm Kết quả trả về đợc thể hiệndới hình thức là những trang Web Khi thực hiện, đầu tiên Web Server thựchiện phân tích tham số dòng lệnh (command line) để xác định cổng truyềnthông, nơi đặt tệp cấu hình của Server Nếu tham số dòng lệnh không có,Web Server sẽ coi cổng ngầm định là cổng đợc khai báo trong tệp cấu hình

httpd.conf và coi nh tệp cấu hình nằm trong th mục ngầm định conf Sau

đó nó tiến hành đọc và phân tích các tệp cấu hình (configuration files) đểxác định các thông số cấu hình sẽ đợc sử dụng trong suốt quá trình hoạt

động Các thông số này bao gồm số hiệu cổng truyền thông (ServerPort),

định danh của ngời dùng, định danh nhóm (UserID và GroupID), th mụcgốc của Web Server (ServerRoot) cũng nh th mục gốc nơi đặt tất cả tài liệuHTML (DocumentRoot), tên của tệp “homepage” Các thông số thu đợc saukhi đọc và phân tích trong file cấu hình sẽ đợc lu trong bộ nhớ máy tính,sau đó Web Server ở trạng thái đợi các yêu cầu gửi đến từ khách hàng tạicổng đã chỉ định Phần mềm Web Browser sẽ thiết lập một phiên làm việc

theo giao thức TCP/IP với Web Server trên máy tính có tên Hirs0506 với số hiệu cổng làm việc là 8080 Khi Web Server nhận đợc Requests này, nó

phân tích Requests để xác định dữ liệu máy khách đòi hỏi Trong ví dụ này,máy khách yêu cầu Web Server tài liệu Test.html Nh ta đã biết tất cả tàiliệu đều phải đợc đặt tại th mục tài liệu gốc (DocumentRoot) Vì vậy ta phải

có chiến lợc sắp xếp dữ liệu một cách hợp lý trong th mục tài liệu gốc Tuy

Trang 14

nhiên, với mỗi Web Server có chiến lợc sắp xếp riêng, ví dụ nh trên Apache

Server, th mục tài liệu gốc trên Web Server là htdocs, tất cả tài liệu dùng để

phục vụ yêu cầu đều phải chứa trong th mục này Tuy nhiên ta có thể thiết

lập các tham số Alias trong tệp cấu hình httpd.cong để tạo th mục giả,

nghĩa là tài liệu phục vụ có thể nằm nơi khác (có thể nằm tại Local) vẫn đợchiểu nh nằm trong th mục gốc (vẫn đảm bảo trong suốt đối với ngời sửdụng) Khi xác định đợc nội dung yêu cầu, Web Server sẽ tìm t liệu đợc yêucầu và gửi cho Web Browser t liệu đó thông qua giao HTTP, một mặt lu trữ

t liệu đó vào cache Web Browser nhận đợc t liệu từ Web Server, hiển thịcác thông tin trên màn hình và kết thúc phiên kết nối TCP/IP đã đợc thiếtlập với Web Server Tất cả các t liệu trớc khi gửi cho máy có yêu cầu đều đ-

ợc lu vào cache để khi nhận đợc một yêu cầu mới về một dữ liệu nào đó,Web Server luôn tìm trong cache trớc Nếu trong cache có t liệu đó, nó sẽnhanh chóng lấy đợc t liệu và gửi về cho máy đã yêu cầu Còn nếu trongcache không có, lúc đó Web Server sẽ bắt đầu việc tìm kiếm tài nguyêntrong th mục gốc Với trờng hợp Web Server uỷ quyền (Proxy Server), quátrình thực hiện nh sau :

Trong hình minh họa trên khi Web Server A nhận đợc yêu cầu mà tàiliệu yêu cầu lại không có trên Server mà lại nằm trên máy tính khác thìWeb Server A phải thiết lập phiên làm việc TCP/IP với máy tính ở xa (gọi làWeb Server B), khi đó Web Server A lại đóng vài trò của máy yêu cầu KhiWeb Server A nhận đợc t liệu test.htnl từ máy Web Server B, phiên làm việcvới Web Server B này kết thúc, tài liệu sẽ đợc trả về máy yêu cầu ban đầu

b) Phần mềm của Web Server

Web Server từ xa

Yêu cầu tệp test.html

155.125.140.2

WebServer B

Web

Browser

WebServer A

Hình 1.3

Trang 15

Hiện nay có một số phần mềm Web Server đang đợc sử dụng trên thếgiới.

+ Internet Information Server : là sản phẩm của Microsoft, dùng

+ Oracle Web Server: là sản phẩm của oracle có thể chạy trên hầu

hết các môi trờng khác nhau, do vậy ngời sử dụng ít phải phụ thuộc vào cấuhình phần cứng

Trang 16

hình tham chiếu cho việc nối kết các hệ thống mở (Reference Model for

Open Systems Interconnection hay gọn hơn : OSI Referance Model) vào

năm 1984 Mô hình này đợc dùng làm cơ sở để nối kết các hệ thống mở

phục vụ cho các ứng dụng phân tán và mô hình này đợc sử dụng để qui ớc

sự biến đổi của một đơn vị dữ liệu từ dạng tín hiệu điện cho đến dạng dữliệu ngời dùng có thể hiểu đợc và ngợc lại

Quá trình biến đổi của một đơn vị dữ liệu để có thể truyền đợc từmáy này sang máy kia đợc chia thành 7 lớp từ cao xuống thấp ở máy gửi và

từ thấp lên cao ở máy nhận Để có thể hiểu rõ hơn, ta xem hình minh hoạ:

Hai máy A (Host A) và máy B (Host B) trao đổi thông tin với nhau.Gói tin đi từ tầng cao nhất của máy gửi A lần lợt xuống các lớp dới Tại cáclớp bên dới, gói tin biến đổi, nhận thêm các thông tin tơng ứng với mỗi lớpcho đến tận lớp cuối (Physical Layer) để sau đó truyền ra ngoài đờng mạngdới dạng các tín hiệu điện tử Tại máy nhận B gói tin đi ngợc lại từ dới lêntrên, làm ngợc lại những bớc đã thực hiện tại máy gửi cho đến lớp trêncùng

Trang 17

Trong mô hình OSI, mục đích của mỗi lớp là cung cấp các dịch vụcho lớp liền kề, mô tả chi tiết cách thức cài đặt của các dịch vụ này Mỗilớp chỉ giao tiếp với lớp bên nó thông qua giao diện Mỗi một lớp trên củamột máy tính hoạt động nh thể giao tiếp trực tiếp với lớp tơng ứng trên máykia, nhng thực ra nó vẫn trải qua lần lợt từng bớc tại những lớp bên dới Vìvậy ta coi liên kết giữa hai lớp tơng ứng trên hai máy tính là "liên kết tiếp

ảo (Virtual Link)" Tập các qui tắc đợc sử dụng cho giao tiếp giữa các lớp

đợc gọi là giao thức (Protocol)

Truyền gói tin giữa hai máy tính dựa theo mô hình tham chiếu OSI Hình 1.4

Session Layer Transport Layer Network Layer

Data Link Layer

Physical Layer

Đ ờng truyền vật lý

Trang 18

b) Kiến trúc phân lớp trong họ giao thức TCP/IP

Nếu mô tả kiến trúc mạng sử dụng giao thức TCP/IP theo kiến trúcmô hình phân tầng dựa trên mô hình tham chiếu OSI ta có thể vẽ hình sau:

Trong mô hình bốn tầng của mạng TCP/IP, khi truyền dữ liệu từ tầngứng dụng (Application Layer) cho đến tầng truy nhập mạng (NetworkAccess Layer) thì tại mỗi tầng đều nối thêm phần điều khiển của mình vàogói tin Thông tin điều khiển này đợc dựa vào phần Header Các thông tin

đợc đặt kế tiếp nhau tại phần Header của gói tin Việc thêm thông tin điềukhiển tại mỗi tầng vào gói tin đợc gọi là quá trình đóng gói dữ liệu(Encapsulation) Quá trình nhận dữ liệu đợc diễn ra theo chiếu ngợc lại,Mô hình tham chiếu OSI Mô hình theo kiến trúc TCP/IP

đ ờng truyền dữ liệu

(1) Network Access Layer

Biến đổi gói tin để truyền qua

đ ờng mạng

Hình 1.5

Trang 19

mỗi tầng sẽ tách thông tin điều khiển tơng ứng ra khỏi phần Header của góitin trớc khi đẩy gói tin lên tầng trên, quá trình này gọi là quá trình mở góitin(Decapsulation).

Ta xem xét nhiệm vụ từng tầng của mô hình lớp TCP/IP

 Tầng 1- Tầng truy nhập mạng (Network Access Layer)

Network Access Layer là tầng thấp nhất trong cấu trúc phân tầng củaTCP/IP Nhng giao thức ở tầng này cung cấp cho hệ thống để truyền dữ liệutrên các tầng vật lý khác nhau của mạng Nó định nghĩa cách thức truyềncác khối dữ liệu (Datagram) IP Các giao thức ở tầng này phải nắm đợc cấutrúc vật lý mạng tầng dới cũng nh cấu trúc gói tin, địa chỉ để có thể địnhdạng chính xác dữ liệu sẽ đợc truyền đi tuỳ thuộc vào từng loại mạng cụthể

Chức năng định dạng dữ liệu trớc khi truyền ở tầng này bao gồm việc

đóng gói dữ liệu IP thành các frame để truyền trên mạng và việc sắp xếp

địa chỉ IP tơng ứng với mọi địa chỉ "cứng " cho node mạng

 Tầng 2- Tầng liên mạng

Là tầng bên trên của tầng Network Access trong cấu trúc phân tầngTCP/IP Internet Protocol (IP) là giao thức điển hình của tầng Internet Mục

đích chính của IP là cung cấp khả năng kết nối mạng con thành liên mạng

để trao đổi dữ liệu

 IP bao gồm một số chức năng nh sau:

 Định nghĩa các khối đơn vị dữ liệu (Datagram)

 Định nghĩa hệ thống địa chỉ IP

 Truyền dữ liệu từ tầng Transport và tầng Network

 Tìm đờng để gửi các gói dữ liệu tới máy khác

 Thực hiện phân mảnh và tổng hợp dữ liệu

Trang 20

IP là giao thức cung cấp dịch vụ truyền thống theo kiểu "không liênkết"(connectionless) Điều đó làm đơn giản việc cài đặt hệ thống, nhngkhông đảm bảo tính đúng đắn của dữ liệu truyền.

 Tầng ba- Tầng giao vận (Transport Layer)

Hai giao thức điển hình trong tầng này là TCP (Transmission ControlProtocol) và UDP (User Datagram Protocol) TCP cung cấp dữ liệu, truyềntải dữ liệu tin cậy kèm theo khả năng phát hiện và sửa lỗi Còn UDP cungcấp các công cụ để can thiệp trực tiếp đến các dịch vụ lu chuyển datagram.Cả hai giao thức này đều truyền dữ liệu giữa tầng Internet và tầng ứng dụng.Giống nh IP, giao thức UDP thuộc loại giao thức không liên kết Trong hệthống mạng UDP, dữ liệu đợc truyền trực tiếp, UDP sử dụng 16 bit để ghinhận cổng nguồn và cổng đích trong phần Header của gói tin

 Tầng bốn- Tầng ứng dụng (Application Layer)

Tầng ứng dụng là tầng nằm trên cùng trong cấu trúc phân tầng của mạngTCP/IP Tầng này bao gồm tất cả các tiến trình sử dụng giao thức của tầngTransport để truyền dữ liệu Có nhiều giao thức ứng dụng xây dựng nên cácdịch vụ phổ biến tại tầng này nh:

- Telnet: Cung cấp khả năng truy nhập từ xa thông qua mạng

IP là một giao thức kiểu " không liên kết " (connectionless) có nghĩa

là không cần có giai đoạn thiết lập liên kết trớc khi truyền dữ liệu Đơn vịdữ liệu dùng trong IP đợc gọi là datagram Mỗi đĩa chỉ IP có độ dài 32 bits

đợc tách thành 4 vùng (mỗi vùng 1 byte), có thể đợc biểu thị dới dạng thậpphân, bát phân, thập lục phân hoặc nhị phân Cách viết phổ biến nhất là

Trang 21

dùng ký pháp thập phân có dấu chấm ( dotted decimal notation) để tách cácvùng Mục đích của địa chỉ IP là để định danh duy nhất cho một host bất kỳtrên liên mạng Do tổ chức và độ lớn của các mạng con (subnet) của liênmạng có thể khác nhau, ngời ta chia các địa chỉ IP thành 5 lớp, ký hiệu là

A, B, C, D và E Cần lu ý rằng các địa chỉ IP đợc dùng để định danh cáchost và mạng ở tầng mạng của Mô hình OSI, và chúng không phải là các

địa chỉ vật lý (hay địa chỉ MAC) của các trạm đó trên một mạng cục bộ(Ethernet, Token Ring, ) Trên một mạng cục bộ nh vậy, hai trạm chỉ cóthể liên lạc với nhau nếu chúng biết địa chỉ vật lý của nhau Nh vậy vấn đề

đặt ra là phải thực hiện ánh xạ giữa địa chỉ IP ( 32 bits) và địa chỉ vật lý (48bits) của một trạm Giao thức ARP ( Address Resolution Protocol) đã đợcxây dựng để chuyển đổi từ địa chỉ IP sang địa chỉ vật lý khi cần thiết Ngợclại, giao thức RARP (Reverse Address Resolution Protocol) đợc dùng đểchuyển đổi từ địa chỉ vật lý sang địa chỉ IP Chú ý rằng cả RARP đều khôngphải là bộ phận của IP IP sẽ dùng đến chúng khi cần Một giao thức kháccũng liên quan trực tiếp đến IP, đó là ICMP (Internet Control MessageProtocol) Giao thức này thực hiện chuyển các thông báo điều khiển ( báocáo về các tình trạng lỗi trên mạng, ) giữa các gateway hoặc trạm của liênmạng Tình trạng lỗi có thể là : một gateway không thể tới đợc đích của nóhoặc một router không đủ bộ nhớ đệm để lu và chuyển một datagram, Một thông báo ICMP đợc tạo và chuyển cho IP IP sẽ " bọc" (encapsulate)thông báo đó với một IP header và truyền đến cho router hoặc trạm đích

Để kết thúc phần trình bầy về IP, chúng ta có thể tóm tắt các bớc thực hiệnbởi một thực thể IP nh sau:

 Đối với thực thể IP ở trạm nguồn, khi nhận đợc một primitive SEND từtầng trên, nó thực hiện các bớc sau đây:

1 Tạo một IP datagram dựa trên các tham số của primitive SEND

2 Tính checksum và ghép vào header của datagram

3 Ra quyết định chọn đờng: hoặc là trạm đích nằm trên cùng mạnghoặc một gateway sẽ đợc chọn cho chặng tiếp theo

4 Chuyển datagram xuống tầng dới để truyền qua mạng

 Đối với gateway, khi nhận đợc một datagram quá cánh, nó thực hiệncác động tác sau:

Trang 22

1 Tính checksum, nếu bất cập thì loại bỏ datagram.

2 Giảm giá trị của tham số Time-to-Live Nếu thời gian đã hết thìloại bỏ datagram

3 Ra quyết định chọn đờng

4 Phân loại datagram, nếu cần

5 Kiến tạo lại IP header, bao gồm giá trị mới của các vùng Live, Fragmentation và checksum

Time-to-6 Chuyển datagram xuống tầng dới để truyền qua mạng

 Cuối cùng, khi một datagram đợc nhận bởi thực thể IP ở trạm đích, nó

sẽ thực hiện các công việc sau:

1 Tính checksum Nếu bất cập thì loại bỏ datagram

2 Tập hợp các đoạn của datagram ( nếu có phân đoạn)

3 Chuyển dữ liệu và các tham số điều khiển lên tầng trên bằng cáchdùng primitive DELIER

d) Giao thức TCP

TCP là một giao thức kiểu " có liên kết" (connection-oriented), nghĩa

là cần thiết lập liên kết (lôgic) giữa một cặp thực thể TCP trớc khi trao đổidữ liệu với nhau

Lu ý TCP data ( độ dài thay đổi) : chứa dữ liệu của tầng trên, có độ dàitối đa ngầm định là 536 bytes một cổng kết hợp với một địa chỉ IP tạothành một socket duy nhất trong liên mạng Dịch vụ TCP đợc cung cấp nhờmột liên kết lôgic giữa một cặp socket Một socket có thể tham gia nhiềuliên kết với các socket ở xa khác nhau Trớc khi truyền dữ liệu giữa 2 trạmcần phải thiết lập một liên kết TCP giữa chúng và khi không còn nhu cầutruyền dữ liệu thì liên kết đó sẽ đợc giải phóng Cũng giống nh ở các giaothức khác, các thực thể ở tầng trên sử dụng TCP thông qua các hàm dịch vụnguyên thuỷ (service primitives), hay còn gọi là các lời gọi hàm (functioncalls)

e) Giao thức UDP

Trang 23

UDP (User Datagram Protocol) là giao thức "không liên kết" đợc sửdụng thay thế cho TCP ở trên IP theo yêu cầu của ứng dụng Khác với TCP,UDP không có chức năng thiết lập và giải phóng liên kết Tơng tự nh IP nócũng không cung cấp các cơ chế báo nhận (acknowledgment), không sắpxếp tuần tự các đơn vị dữ liệu (datagram) đến và có thể dẫn đến tình trạngmất hoặc trùng dữ liệu mà không hề có thông báo lỗi cho ngời gửi Tóm lại

là nó cung cấp các dịch vụ giao vận không tin cậy nh trong TCP

UDP cung cấp cơ chế gán và quản lý các số hiệu cổng (port number)

để định danh duy nhất cho các ứng dụng chạy trên một trạm của mạng Do

ít chức năng phức tạp nên UDP có xu thế hoạt động nhanh hơn so với TCP

Nó thờng đợc dùng cho các ứng dụng không đòi hỏi độ tin cậy cao tronggiao vận

f) Giao thức FTP

FTP là một phơng pháp hỗ trợ cho các mạng ở xa Đây là giao thứccho phép chuyển các tập tin tài liệu đơn giản Có nhiều máy phục vụ FTPcung cấp một lợng thông tin lớn dới dạng tập tin Dữ liệu trong các tập tinnày không thể truy cập trực tiếp, thay vào đó toàn bộ tập tin phải đợcchuyển từ máy phục vụ FTP đến máy phục vụ cục bộ Đây là chơng trìnhchuyển tập tin cho môi trờng TCP/IP và đợc thực hiện tại tầng ứng dụng(Application Layer) trong mô hình OSI Giao thức phổ biến nhất đợc dùng

để gửi tập tin giữa các máy tính là File Transfer Protocol (FTP) FTP chophép chuyển cả hai loại tập tin dạng văn bản và dạng nhị phân

1.3.2) Giao thức HTTP (HyperText Transfer Protocol)

Web Server và Web Browser giao tiếp với nhau thông qua giao thứcHTTP

Để phát triển các ứng dụng giao tiếp trên Web tựa HTML, ngời thiết

kế Web phải nắm đợc các Browser tơng tác với các HTTP Server nh thếnào Quá trình tơng tác này bao gồm hai phần liên quan với nhau

Phần thứ nhất có thể hiểu là giao thức HTTP mà thông qua đó WebBrowser gửi thông tin đến HTTP Server HTTP cung cấp các kỹ thuật trao

Trang 24

đổi thông tin về các phiên làm việc (Transaction) nh trạng thái kết quả vàbản chất thông tin truyền tải (loại MIME ) giữa máy trạm và máy chủ Giaothức này cũng hỗ trợ một số phơng pháp giao tiếp (nh GET, POST, HEAD)nhằm để chỉ ra dữ liệu đợc truyền tải nh thế nào giữa Client và Server.

Phần thứ hai đó là cách thức HTTP Server xử lý các Request (thôngqua URL) từ máy trạm Nếu yêu cầu từ máy trạm đến là một file, Server sẽ

định vị file đó và gửi về cho máy yêu cầu, còn trờng hợp Server không tìmthấy file đó sẽ trả về một đoạn thông báo lỗi tơng ứng Trong một số trờnghợp, yêu cầu gửi không phải là chỉ tới một file xác định mà là một số yêucầu đặc biệt nh truy cập vào cơ sở dữ liệu Khi đó, HTTP Server không tự

xử lý yêu cầu mà đẩy cho chơng trình liên quan đến việc khai thác truy

nhập cơ sở dữ liệu (các chơng trình này đợc gọi là gateway program), tiến

trình xử lý request của chơng trình này là tiến trình xử lý độc lập với hoạt

động của HTTP Server Quá trình đẩy request từ HTTP Server sang gatewayprograms đợc thực hiện thông qua các ứng dụng CGI (Common GatewayInterface)

HTTP thuộc loại giao thức " không trạng thái (stateless)", nghĩa làkhi Server đã trả kết quả yêu cầu cho máy trạm, kết nối giữa máy chủ vàmáy trạm bị huỷ bỏ, đồng thời máy chủ cũng không lu vào bộ nhớ về sựkiện vừa hoàn thành

Tất cả các giao tiếp HTTP đều truyền dữ liệu dới dạng 8 bits ký tự(octets) theo từng dòng Điều này đảm bảo tính đúng đắn cho việc truyềndữ liệu dới tất cả các dạng bao gồm hình ảnh, chơng trình, tài liệu HTML

Một phiên bản làm việc dới giao thức HTTP 1.0 có 4 bớc:

1 Máy trạm yêu cầu kết nối với máy chủ - Web browser liên

lạc với máy chủ thông qua địa chỉ Internet và số hiệu cổng kết nối

2 Máy trạm thực hiện gửi yêu cầu - Máy trạm gửi yêu cầu tới

máy chủ Cấu tạo một yêu cầu gồm có: HTTP request header chứathông tin về HTTP method đợc sử dụng trong quá trình truyền thôngtin về máy trạm và dạng dữ liệu đợc truyền tới Server HTTP (là cách

Trang 25

thức truyền dữ liệu trên mạng giữa máy trạm và máy chủ và ngợclại) HTTP method là GET dùng cho việc lấy đối tợng từ máy chủ,còn nếu là POST dùng cho việc truyền dữ liệu tới một tài liệu nằmtrên máy chủ (hai tham số có tác dụng ngợc nhau) ví dụ trong trờnghợp truyền tham số tới một ứng dụng CGI

3 Server gửi trả lời - Máy chủ gửi kết quả lại cho máy trạm.

Bản tin kết quả bao gồm phần responed header miêu tả trạng thái kếtquả phiên làm việc, loại dữ liệu đợc truyền

4 Server kết thúc kết nối- kết nối đợc huỷ bỏ máy chủ không

lu lại thông tin về phiên làm việc vừa kết thúc

Qua phân tích ta thấy mỗi cuộc kết nối chỉ thực hiện một phiên làmviệc đơn, vì vậy chỉ thực hiện xử lý một yêu cầu về tài liệu từ máy trạm tớimáy chủ Đồng thời, do khi kết thúc phiên làm việc, máy chủ không lu lạitrạng thái của phiên, do đó cuộc kết nối đợc thực hiện một cách độc lập dokhông liên quan đến cuộc kết nối đợc thực hiện trớc đó

1.4 Bộ định vị tài nguyên tổng quát url (Uniform

Resource Locator)

Dịch vụ World Wide Web sử dụng Uniform Resource Locator(URLs) để định vị tài nguyên (files) trên các máy chủ khác Một URL baogồm loại tài nguyên đợc tham chiếu, địa chỉ máy chủ , và vị trí của file.Dạng của URL nh sau :

protocol://host.domain:port/path/tên

Trong đó :

 Protocol: Giao thức dùng để truy nhập tới tài nguyên Ví dụ nh

- http: Dịch vụ World Wide Web

- ftp: Dịch vụ FTP

- wais: Dịch vụ WAIS

- gopher: Dịch vụ Gopher

- file : Tham chiếu tới tài nguyên trên máy

Trang 26

 Host.domain: Tên hay địa chỉ IP của máy chứa tài nguyên trênmạng

 Port: Cổng trao đổi thông tin Số hiệu cổng là tuỳ chọn, tuy nhiênvẫn có một số quy định riêng phụ thuộc vào việc chọn loại WebServer Ví dụ đối với Apach Server, Nếu cài đặt với quyền củaadministrator (root), số hiệu cổng phải nhỏ hơn 1024 (ngầm định

là 80), còn lại số hiệu cổng phải lớn hơn 1024

 Path: đờng dẫn tới tài nguyên

 Tên: tên tài nguyên truy cập

URL đợc sử dụng trong tất cả các dịch vụ thông tin trên mạng, đặcbiệt là World Wide Web Truy nhập tới bất kỳ trang Web nào đều phải điqua một URL duy nhất Nh vậy ta thấy rằng với cách truy nhập sử dụngURL, ta không cần quan tâm đến tài nguyên nằm ở đâu, trên máy nào, vìvậy rất tiện lợi cho ngời sử dụng

Ví dụ ta xem xét một địa chỉ Web sau:

Trang 28

 First one  First two

b) Loại tag định nghĩa liên kết giữa tài liệu này với tài liệu khác

Mã nguồn HTML Thể hiện trên Web

Trang 29

c) Loại tag định nghĩa bảng.

Mã nguồn HTML Thể hiện trên Web

d) Loại tag định nghĩa Khung (Frame).

Frame mở rộng khả năng hiển thị trang Web bằng cách cho phépchia miền hiển thị thành nhiều vùng Mỗi vùng nh vậy đợc gọi là Frame và

có những đặc điểm sau:

- Nó có thể truy cập tới các Frame khác

- Mỗi Frame có thể đợc đặt tên, dùng làm đích trong liên kết

- Nó có thể tự thay đổi kích thớc khung nhìn hoặc có thể chọn

để cho phép hay không cho phép ngời thay kích thớc này

Frame đợc tạo bởi ba phần tử: Frameset, Frame và tài liệu Frame.Tài liệu Frame : Tài liệu Frame có một cấu trúc cơ bản rất giống vớitài liệu HTML, ngoại trừ phần tử BODY đợc thay bởi phần tử Frameset

Đây là phần tử miêu tả những tài liệu HTML con hoặc Frame, và nhữngFrame này sẽ tạo nên trang Web

Tài liệu Frame có cấu trúc tổng quát nh sau:

Trang 30

<FRAMESET> đợc lồng khác, các Thẻ <FRAME> hoặc phần tửNOFRAMES.

Ví dụ sau đây là kiểu giúp cho việc tạo tài liệu Frame:

<FRAME SCROLLING=" yes/no" Name=" Toc" SRC="Toc.htm">

<FRAME SCROLLING = "yes/no" Name="Buttons"SRC="Buttons.htm">

Trang 31

Cú pháp của danh sách giá trị : ROWS=Value1, value2,

Ví dụ: <FRAMESET ROWS="15%, 50%, 23%">

Thuộc tính SCROLLING đợc dùng để đặc tả Frame có thành cuộnhay không

Nếu là "Yes" thanh cuộn luôn xuất hiện trong Frame

Nếu là "No" Frame sẽ không có thanh cuộn

Thuộc tính COLS nhận những giá trị nằm trong dãy cách nhau bởidấu phẩy

Thuộc tính Name đợc dùng để gán một tên cho một Frame bởi vậy

nó đợc đặt làm đích cho các liên kết từ các tài liệu khác Thuộc tính này tuỳchọn, mặc định mọi cửa sổ đều cha đợc đặt tên

e) Loại tag định nghĩa Form

Form cho phép bạn nhận thông tin hay phản hồi từ các ngời dùng.Ngời dùng có thể đợc yêu cầu :

 Gõ vào những câu trả lời, ý kiến

 Chọn câu trả lời từ danh sách do bạn tạo

 Chọn câu trả lời từ một tuỳ chọn mà bạn đặc tả

Dữ liệu sẽ gửi đến Web Server, và đợc xử lý bởi một Script là một

ch-ơng trình nhỏ, đợc thiết kế để xử lý dữ liệu và (trong nhiều trờng hợp) tạo ramột trang HTML để phản hồi

Trang 32

hơn, nó cho phép gửi một lợng dữ liệu lớn GET, trái lại, dùng để xử lý dữliệu đơn giản, thờng trong các đáp ứng đơn, nh hộp soạn thảo văn bản Vìvậy, nếu bạn dự định tạo một Form có nhiều phần tử thông tin và menu, nêndùng POST cho FORM.

<FORM METHOD="POST" ACTION="TimKiem.asp">

Ngợc lại, bạn chỉ có một hay nhiều phần tử trên form, dùng GETthích hợp hơn:

<FORM METHOD="GET" ACTION="TimKiem.asp">

Thuộc tính thứ hai là ACTION, nhận một URL, trỏ đến trình Script

xử lý dữ liệu cho form của bạn Thông thờng, Script đợc lu trong một thmục nào đó trên Web Server của bạn

Ví dụ, Tạo Form nh sau:

<FORM METHOD="GET" ACTION ="http:/www.yourcom.com/Timkiem

/TimKiem.asp">

2.1.4 HTML Động

Trớc đây, những ngời soạn và thiết kế Web gặp rất khó khăn trongviệc bố trí, chọn font, màu, cho trang Web dù rằng điều này đã trở nênquen thuộc trong những lĩnh vực máy tính để bàn

Sau đó, bảng HTML, Frame HTML, Style Sheet xuất hiện Bây giờ,những ngời thiết kế có khả năng điều khiển hơn trên các thành phần củatrang Hơn nữa, với ngôn ngữ Script nh VB Scriptvà Java Script, ngời thiết

kế có thể đáp ứng lại những sự kiện tạo ra bởi ngời dùng, thay đổi, tínhtoán, sau đó, phản hồi kết quả Những ngôn ngữ Script có thể nạp trang mới

và tạo những hộp báo hiệu giao tiếp với ngời dùng

Nhng còn một vấn đề nữa: khi một trang đợc nạp vào trình duyệt

ng-ời dùng, nó trở nên tĩnh Bỏ quả những th nh Java Applet, các gì động, vànhững Presentation, thực sự không còn thành phần khác có thể chuyển độngtrên trang Đó là lý do tại sao phải có HTML động (Dinamic HTML)

HTML động thực hiện những việc sau:

Trang 33

 Kết hợp ngôn ngữ Script và style sheet để thay đổi động của style củavăn bản HTML và các thành phần HTML Khi đó, cửa sổ trình duyệt đợccập nhật tức thì.

 Làm việc với những thành phần style sheet mới để định vị văn bản trêntrang, và thay đổi vị trí Với HTML động có thể di chuyển các thành phầntrang, tạo nên hiệu ứng động

Cho phép tạo tầng văn bản có nghĩa là văn bản chồng lên nhau (và chồnglền những thành phần HTML khác) Bằng cách này, bạn có thể tạo hiệu ứng3-D, Hình mờ(Watermark), và những hiệu ứng hấp dẫn khác

2.1.5 Ưu nhợc điểm của ngôn ngữ HTML

 Ưu điểm: Ngôn ngữ HTML có nhiều u điểm so với ngôn ngữ khác, đólà:

- Dễ hiểu, dễ đọc, dễ sử dụng

- Không phụ thuộc nhiều vào hệ điều hành

- Công cụ viết đơn giản (text editor)

- Giảm thông lợng đờng truyền

- Liên kết nhiều dạng thông tin và các dịch vụ thông tin khác nhautrên Internet

 Nhợc điểm :

- Là ngôn ngữ thông dịch, do đó làm giảm tốc độ thực hiện cácứng dụng trên Web

- Khó đảm bảo về an toàn bảo mật thông tin

- Không hỗ trợ đa ngôn ngữ

2.2 Ngôn ngữ ASP (Active Server Pages)

Trang 34

2.2.1 Giới thiệu chung

Active Server Pages( ASP) là một môi trờng server-side scriptingmạnh để tạo trang Web hoặc các ứng dụng Web Các ứng dụng ASP dễdàng phát triển và biến đổi Đây là một công nghệ của hãng Microsoft hớngtới Web Trong đó ta có thể tạo ra, chạy, tơng tác với các ứng dụng WebServer Cùng với ASP ta có thể kết hợp với các trang HTML, nhúng trựctiếp các lệnh Script, sử dụng ActiveX

2.2.2 ASP và HTML

Khi làm việc với các trang HTML để xử lý các Form thông thờng cầnmột ngôn ngữ cụ thể ví dụ nh Common Gateway Interface (CGI), thì bâygiờ ta có thể sử dụng ASP nh một công cụ với các lệnh đơn giản nhúng trựctiếp vào các trang HTML để xử lý và lấy thông tin

Không những thế, cùng với ASP ta có thể dễ dàng sử dụng các thànhphần của ActiveX để thực hiện những thao tác phức tạp nh truy nhập tới Cơ

Sở Dữ Liệu (CSDL) để lấy, ghi hoặc khôi phục dữ liệu

2.2.3 ASP và Script

Trong các trang ASP ta có thể sử dụng bất cứ một ngôn ngữ Script nào

mà trên máy đã cài đặt động cơ Script (Scripting Engine) nh VBScript,JScript, PERL, theo các chuẩn ActiveX Scripting

2.2.4 ASP và sự phát triển Web

Có thể nói ASP là một con đờng nhanh chóng và linh hoạt để tạo các ứngdụng Web Bằng việc sử dụng các Script để tạo ra giao diện HTML Sửdụng các thành phần ActiveX để đóng gói các module chơng trình mà cóthể đợc gọi từ một Script hay các chơng trình khác

Cùng với Microsoft Transaction Server (MTS) sẽ giảm bớt độ phức tạp vàchi phí, bảo đảm an toàn khi xây dựng các ứng dụng trên Server

Trang 35

2.2.5 Mô hình ASP

Nh chung đã ta biết ASP là môi trờng sử dụng các ngôn ngữ Script đểtạo chơng trình giao tiếp có tính năng động, hiệu quả cao cho Web server.Hình 2.1 trên mình hoạ mô hình hoạt động của nó

Trang ASP bắt đầu đợc thực hiện khi browser yêu cầu một file co

phần mở rộng là ".asp" tới Web server, khi đó Web server gọi ASP và tạ

đây sẽ đọc toàn bộ file asp đợc yêu cầu đó, rồi thực hiện bát cứ câu lệnhnào để gửi trang HTML cho browser

2.2.6- Sử dụng các Script trong ASP

a) Sử dụng ngôn ngữ Script

Để sử dụng đợc các ngôn ngữ Script thì trên máy phải có một động cơScript thích hợp (Script Engine) đợc cài đặt trên Web Server Động cơ Script

là một chơng trình xử lý các lệnh đợc viết trong một ngôn ngữ riêng biệt.Active Server Pages có 2 động cơ Script là Microsoft Visual Basic ScriptingEditor (VBScript) và Microsoft Jscript Nhng cũng có thể cài đặt và sử dụngcác động cơ Script khác nh REXX, PERL Các ngôn ngữ Script có cú pháp,luật không chặt chẽ và phức tạp nh các ngôn ngữ lập trình biên dịch, dễ sửdụng và thuận tiện Với những ai đã từng học ngôn ngữ Visual Basic thì sẽ

dễ dàng thấy sự quen thuộc trong ngôn ngữ VBScript Còn với ai đã biết

Browser

- Call ASP

- Read file

- Execute ScriptCommands

Trang 36

ngôn ngữ C++, Java thì cũng tìm thấy sự giống nhau trong ngôn ngữ Jscript.Tuỳ thuộc ngời viết biết hoặc a thích ngôn ngữ nào thì có thể sử dụng ngônngữ đó.

Để thiết lập ngôn ngữ Script nào đợc sử dụng trên trang ASP cần sửdụng cú pháp đã biết ở phần trên nh sau :

b) Sử dụng biến

Trong chơng trình biến và hằng là những thành viên không thể thiếu

đợc Trong phần này sẽ đề cập đến cách khai báo, phạm vi, sử dụng cácbiến và hằng

Khai báo biến

Khai báo biến có thể không bị bắt buộc nhng việc khai báo biến sẽ là

đem lại hiệu quả tốt hơn trong một số trờng hợp nh dự báo lỗi hoặc phânbiệt về một phạm vi của biến nhất là chơng trình có sử dụng #include đểbao hàm các file include vào trong file asp

Việc khai báo biến phụ thuộc vào từng ngôn ngữ cụ thể

+ Trong ngôn ngữ VBScript khai báo biến có thể dùng các từkhoá : Dim, Public, Private Ví dụ :

<% Dim Name %>

+ Trong ngôn ngữ Jscript khai báo biến dùng từ khoá : var

Trang 37

<% var Name; %>

) Phạm vi của biến (Varialbe Scope)

Cũng nh các ngôn ngữ lập trình khác, các biến trong ASP có mộtphạm vi hay thời gian sống (lifetime) nhất định

1) Biến đợc khai báo bên trong chơng trình con gọi là biến cục

bộ (local scope ) chỉ có chơng trình con đó đợc phép truy nhập Biến

đợc khai báo bên ngoài chơng trình con có phạm vi toàn cục (globalscope) và đợc truy nhập ở mọi nơi bởi bất kỳ một Script nào trongtrang Khi biến toàn cục và biến cục bộ trùng tên nhau thì biến toàncục sẽ tạm thời bị che trong chơng trình con tơng ứng

2) Trong ASP một biến toàn cục chỉ đợc truy nhập trong một

trang ASP tơng ứng Để biến đó đợc truy nhập bởi mọi trang thì cầnphải đặt biến đó trong phạm vi khác Đó là : phạm vi phiên và phạm

vi ứng dụng ( Session et Application Scope )

- Phạm vi phiên : biến sẵn sàng truy nhập trong tất cả các trangcủa một ứng dụng nhng chỉ đợc yêu cầu bởi một ngời sử dụng (user).Biến này thích hợp trong việc lu trữ thông tin của mộ ngời sử dụng

nh Username, Identifier,

- Phạm vi ứng dụng : nh phạm vi phiên chỉ khác là biến này cóthể đợc yêu cầu từ nhiều ngời sử dụng Biến này thích hợp cho việc

lu trữ thông tin của mọi ngời sử dụng trong một ứng dụng cụ thể Ví

dụ nh các lời chào, khởi tạo các biến mức ứng dụng

Hai đối tợng đã đợc định nghĩa sẵn phục vụ cho việc khai báo cácbiến này là đối tợng Session và Application

Ví dụ để lu trữ 2 biến ở mức phiên có :

<%

Session("FirstName") = "Jeff"

Session("LastName") = "Smith"

%>

Trang 38

FirstName, LastName đợc gọi là các named entry Và để lấy thôngtin thông qua tên đối tợng và named entry Sử dụng định hớng ra (<%=)hoặc Response.Write có :

Welcome <%= Session("FirstName") %>

Tơng tự với các biến ở mức ứng dụng :

<% Application("Greeting") = "Welcome to Exploration Air" %>

component type library Nếu đã khai báo th viện kiểu (type library) trong

file Global.asa thì có thể sử dụng các hằng này trong bất cứ một Script nào

của ứng dụng

Khai báo một th viện kiểu thông qua trờng <METADATA>

Ví dụ khai báo th viện kiểu ADO :

<! METADATA TYPE="typelib"

FILE="c:\program files\common files\system\ado\msado15.dll"

>

d) Viết các chơng trình con (Procedures)

Các chơng trình con là cần thiết nhằm thực hiện một công việc xác

định Khi các chơng trình con đợc gọi bởi nhiều file asp thì nên tách riêng thành một file nên đặt tên là inc để phân biệt với các file khác Các

file asp nếu muốn sử dụng các chơng trình con này thì phảI sử dụng từ

Trang 39

khoá định hớng SSI (Server – Side Include) #include nh sau để bao hàm file chứa các chơng trình con đó :

<! #include virtual | file= "filename” >

trong đó :

+ filename : có thể là đờng dẫn tới file

+ virtual : cho biết đờng dẫn bắt đầu với một th mục ảo (virtual directory)

ví dụ : có file app1.inc nằm trong th mục ảo "/myapp"

<! #include virtual="/myapp/app1.inc” >

+ file : cho biết đờng dẫn tới file là một đờng dẫn quan hệ (relative

path) đờng dẫn quan hệ bắt đầu từ file chứa #include (tức là file bao hàm)

Giả sử có một file Name1.asp trong th mục /Myapps và file

Header1.inc

trong th mục /Myapps/Headers Khi đó trong file Name1.asp sử dụng #include nh sau :

<! #include file ="headers\header1.inc" >

Đôi khi chúng ta muốn sử dụng file inc trong một block <Script>

Một chơng trình con có thể đợc định nghĩa nh sau :

<Script RUNAT=SERVER LANGUAGE=Jscript >

Trang 40

+ LANGUAGE : để xác định ngôn ngữ đợc sử dụng trong Script Nếu không có thuộc tính này thì ngôn ngữ sẽ là ngôn ngữ Script chính.

Với những chơng trình con (CTC) sử dụng ngôn ngữ khác với ngôn

ngữ Script chính (primary scripting language) thì sử dụng trờng <Script>

</Script> còn với những CTC sử dụng ngôn ngữ Script chính thì sử dụngcặp dấu phân các (<% và %>)

 Gọi chơng trình con

CTC đợc gọi thông qua tên của CTC Một CTC Jscript đợc gọi từ VBScript thì phải sử dụng cặp ngoặc đơn sau tên CTC , nếu không có tham

số thì vẫn phải chứa ngoặc rỗng Nêu CTC là Jscript hoặc VBScript đợc gọi

từ Jscript thì luôn luôn phải chứa cặp ngoặc đơn

Gọi CTC từ VBScript bằng từ khoá Call Nếu một hàm (function) đợc gọi

thông qua từ khoá này thì giá trị trở về của hàm sẽ bị bỏ qua

Ngày đăng: 02/08/2014, 22:13

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
6. A guide to Angkor “An Introduction to the Temple” Sách, tạp chí
Tiêu đề: An Introduction to the Temple
1. Mạng máy tính và hệ thống mở Tác giả GS.TS. Nguyễn Thúc Hải 2. Internet Information Server’s Book Online Khác
7. Tìm hiểu Văn hoá nghệ thuật Cămpuchia 8. Angkor huyền thoại và sự thật9. Mạng căn bảnTác giả VN-GUIDE Khác
10. Thiết kế và xuất bản trang Web 6 trong 1 với HTML Tác giả: Trơng Công LộcMai Hồng Quý Khác
11. Các tạp chí du lịch Angkor ( Angkor The Inflight Magazine) Khác

HÌNH ẢNH LIÊN QUAN

Hình 2.1 trên mình hoạ mô hình hoạt động của nó. - Xây dựng website du lịch Angkor
Hình 2.1 trên mình hoạ mô hình hoạt động của nó (Trang 37)
Hình 2.5- Mô hình làm việc IDC - Xây dựng website du lịch Angkor
Hình 2.5 Mô hình làm việc IDC (Trang 60)
Sơ đồ luồng mức d ới đỉnh (tìm kiếm) - Xây dựng website du lịch Angkor
Sơ đồ lu ồng mức d ới đỉnh (tìm kiếm) (Trang 83)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w