Giáo trình Thiết kế và lập trình Web - Lê Đình Duy
Địa chỉ IP (IP Address)
Địa chỉ IP là một con số 32-bit dùng để xác định đối tượng nhận
và gửi thông tin trên Internet. Khi bạn yêu cầu một trang HTML hay
gửi e-mail, địa chỉ IP của bạn sẽ được gửi đi cùng các gói tin đến địa
chỉ IP của người nhận. Một khi người nhận nhận được yêu cầu của
bạn, họ sẽ căn cứ trên địa chỉ IP mà bạn gửi kèm để gửi kết quả trả
về.
Để đơn giản hóa người ta phân con số này thành 4 con số 8 bit
viết cách nhau bởi dấu chấm “.”. Vì mọi máy là một phần của mạng
nên người ta chia địa chỉ IP thành 2 phần là phần mô tả mạng
(network) mà máy đó thuộc về và phần mô tả máy (local host). Nếu
tất cả các bit của vùng mô tả máy bằng 0, thì địa chỉ IP dùng để mô
tả địa chỉ mạng (network address); Nếu tất cả các bit của vùng mô tả
máy bằng 1, thì địa chỉ IP này chính là địa chỉ broadcast (broadcast
address); Nếu không thuộc hai trường hợp trên, địa chỉ IP này dùng
để mô tả địa chỉ máy (host address).
Địa chỉ IP tự nó không chứa thông tin về phần nào mô tả mạng,
phần nào mô tả máy mà thành phần subnet mask đi kèm với mỗi địa
chỉ sẽ cung cấp thông tin này. Theo qui ước, vùng các bit 1 xác định
vùng mô tả mạng, và vùng các bit 0 xác định vùng mô tả máy. Trong
subnet mask chỉ gồm 2 dãy liên tục các bit 1 và dãy liên tục các bit 0
nằm liên tiếp nhau tính từ trái sang.
Tóm tắt nội dung tài liệu: Giáo trình Thiết kế và lập trình Web - Lê Đình Duy
3 Chương 1 GIỚI THIỆU MẠNG INTERNET 1. SƠ LƯỢC VỀ MẠNG INTERNET 1.1. Lịch sử mạng Internet Mạng Internet xuất phát từ mạng ARPANET của Mỹ và ngày nay đã trở thành mạng toàn cầu kết nối hàng trăm triệu người trên thế giới. Mạng máy tính toàn cầu Internet có thể được xem như là mạng của tất cả các mạng (network of networks), trong đó người dùng tại bất cứ máy tính nào đều có thể truy cập tới các thông tin của các máy khác (nếu được phép). Mạng Internet ban đầu được biết dưới tên là ARPANET do tổ chức Advanced Research Projects Agency (ARPA) của Mỹ thiết lập năm 1969. Mục đích chính của mạng này là tạo cơ sở cho các máy tính nghiên cứu của các trường đại học có thể kết nối và trao đổi với nhau. Thiết kế của ARPANET độc đáo ở chỗ là mạng vẫn có thể hoạt động khi một phần của nó bị phá hủy trong các trường hợp chiến tranh hoặc thiên tai. Ngày nay mạng Internet là một mạng công cộng kết nối hàng trăm triệu người trên thế giới. Về mặt vật lí, mạng Internet sử dụng một phần của toàn bộ các tài nguyên của các mạng viễn thông công cộng đang tồn tại (public telecommunication networks). Về mặt kĩ thuật, mạng Internet sử dụng tập các giao thức gọi chung là TCP/IP (Transmission Control Protocol/Internet Protocol). Hai mô phỏng của công nghệ mạng Internet là intranet and extranet cũng sử dụng các giao thức này. Sự ra đời của giao thức HTTP và HMTL đã đánh dấu một bước ngoặc mới trong việc sử dụng Internet. Cho tới năm 1990 các dịch vụ cơ bản của Internet vẫn chỉ là e-mail, listserv, telnet, và ftp. Năm 1992, Tim Berners-Lee, một nhà vật lí học tại CERN đã phát triển các giao thức cho World Wide Web (WWW). Trong khi tìm kiếm cách để liên kết các tài liệu khoa học lại với nhau, anh ta đã tạo ra Hypertext Markup Language (HTML), một tập con của Standard Generalized Markup Language (SGML). 4 Từ một chuẩn cho các tài liệu văn bản, HTML ngày nay có thể chứa hình ảnh, âm thanh, video, và cho phép phát triển các ứng dụng thông qua Common Gateway Interface (CGI), ASP, JSP, PHP, Java Servlet, .... Hình 1.1 – Mô hình mạng Internet 1.2. Một số kiến thức liên quan đến mạng Internet 1.2.1. Địa chỉ IP (IP Address) Địa chỉ IP là một con số 32-bit dùng để xác định đối tượng nhận và gửi thông tin trên Internet. Khi bạn yêu cầu một trang HTML hay gửi e-mail, địa chỉ IP của bạn sẽ được gửi đi cùng các gói tin đến địa chỉ IP của người nhận. Một khi người nhận nhận được yêu cầu của bạn, họ sẽ căn cứ trên địa chỉ IP mà bạn gửi kèm để gửi kết quả trả về. Để đơn giản hóa người ta phân con số này thành 4 con số 8 bit viết cách nhau bởi dấu chấm “.”. Vì mọi máy là một phần của mạng nên người ta chia địa chỉ IP thành 2 phần là phần mô tả mạng (network) mà máy đó thuộc về và phần mô tả máy (local host). Nếu tất cả các bit của vùng mô tả máy bằng 0, thì địa chỉ IP dùng để mô tả địa chỉ mạng (network address); Nếu tất cả các bit của vùng mô tả máy bằng 1, thì địa chỉ IP này chính là địa chỉ broadcast (broadcast Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org 5 address); Nếu không thuộc hai trường hợp trên, địa chỉ IP này dùng để mô tả địa chỉ máy (host address). Địa chỉ IP tự nó không chứa thông tin về phần nào mô tả mạng, phần nào mô tả máy mà thành phần subnet mask đi kèm với mỗi địa chỉ sẽ cung cấp thông tin này. Theo qui ước, vùng các bit 1 xác định vùng mô tả mạng, và vùng các bit 0 xác định vùng mô tả máy. Trong subnet mask chỉ gồm 2 dãy liên tục các bit 1 và dãy liên tục các bit 0 nằm liên tiếp nhau tính từ trái sang. Các địa chỉ IP được phân thành 3 lớp A, B, C tùy theo giá trị của 3 bytes đầu tiên. Theo đó thì: Class Available Network Address # of Networks # of Hosts Default Subnet A 1 - 126 126 16.7 million 255.0.0.0 B 128.xxx – 191.xxx 16.384 65.536 255.255.0.0 C 192.xxx.xxx – 223.xxx.xxx 2.097.152 256 255.255.255.0 Việc phân chia địa chỉ IP trên Internet do ICANN chịu trách nhiệm. Địa chỉ IP thường được quản lí bởi các nhà cung cấp dịch vụ Internet (ISP – Internet Service Provider). Các địa chỉ IP này thường được gọi nôm na là địa chỉ IP thực. Nếu bạn muốn thiết lập một website mà người dùng Internet có thể truy cập vào được, ít nhất máy chủ chứa website phải có địa chỉ IP thực. Nếu bạn không có địa chỉ IP thực, bạn phải sử dụng dịch vụ webhosting để thuê chỗ đặt website trên các máy chủ có địa chỉ IP thực được kết nối với Internet. 6 Hình 1.2 - Minh họa thiết lập giao thức TCP/IP 1.2.2. Tên miền (Domain name) Tên miền có thể được xem như là tên giao dịch của công ty hay tổ chức trên Internet. Tên miền của các công ty thương mại thường có dạng yourcompany.com. Ví dụ, công ty Intel sẽ lấy tên là miền là intel.com; công ty Microsoft lấy tên miền là microsoft.com; ... Việc đưa ra khái niệm tên miền giúp cho việc truy cập đến các tài nguyên trên Internet dễ dàng hơn. Việc ánh xạ qua lại giữa tên miền và địa chỉ IP của máy phục vụ được thực hiện bởi DNS Server. Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org 7 Ví dụ một địa chỉ www.intel.com cho ta một số thông tin sau: đây là địa chỉ của một máy thuộc tổ chức sở hữu tên miền intel.com (chính là công ty Intel). Địa chỉ IP của máy này sẽ là 192.102.198.160 (sử dụng chương trình nslookup để tra) và máy này có tên là “www” (thông thường là máy cung cấp dịch vụ web). Phần "com" trong tên miền mô tả mục đích của tổ chức (trong trường hợp này là "commercial" – thương mại) và được gọi là tên miền cấp 1 (top-level domain name). Phần ngay trước dấu “.” trong tên miền trên thông thường là tên của tổ chức (ví dụ như intel) được gọi là tên miền cấp 2 (second-level domain name). Tên miền cấp 3 thông thường được dùng để định nghĩa một máy phục vụ cụ thể nào đó và toàn bộ chúng sẽ được ánh xạ tới một địa chỉ Internet. Tên miền cấp 1 bao gồm các mã quốc gia của các nước tham gia Internet được quy định bằng hai chữ cái theo tiêu chuẩn ISO - 3166 như Việt nam là VN , Anh quốc là UK, Nhật bản là JP, ... và 7 lĩnh vực dùng chung, trong đó có 5 dùng chung cho toàn cầu và 2 chỉ dùng ở Mỹ. Năm tên miền cấp 1 dùng chung là: • .com: công ty thương mại (commercial). • .edu: các trường học, tổ chức giáo dục (education). • .net: các mạng (network) • .int: các tổ chức quốc tế (international organizations) • .org: các tổ chức khác (other organizations). Hai tên miền cấp 1 chỉ dùng ở Mỹ là: • .gov: các tổ chức chính phủ (government). • .mil: các tổ chức quân sự (military). Một địa chỉ IP có thể được ánh xạ cho nhiều tên miền. Điều này cho phép nhiều cá nhân, công ty và các tổ chức chia sẻ cùng một Internet server. Do tầm quan trọng của tên miền nên một trong các bước đầu tiên của việc xây dựng website là thiết lập tên miền bằng cách mua từ các công ty được uỷ quyền bán tên miền ( Các tên miền có đuôi là .com rất thông dụng trong các giao dịch quốc tế. Ngoài ra, các công ty Việt nam cũng thường hay lấy tên miền có đuôi là .com.vn. Để sở hữu tên miền, bạn phải trả chi phí 8 hàng năm. Nếu hết thời hạn sở hữu mà bạn không trả chi phí, tên miền này có thể bị người khác mua lại (và sẽ rất khó khăn khi bạn muốn đòi lại tên miền này từ tay người khác). Trên Internet hiện nay có nhiều người thường mua trước các tên miền của các công ty mà họ dự đoán sẽ nổi tiếng nhưng chưa lập trang web. Sau này khi các công ty này cần tên miền, họ sẽ bán lại với giá rất đắt. Tuy nhiên, bạn vẫn có thể mua trước tên miền mà chưa cần lập website. Hình 1.3 – Phân cấp của các tên miền 2. CÁC DỊCH VỤ CƠ BẢN CỦA MẠNG INTERNET 2.1. World Wide Web (WWW) Đây là dịch vụ thông dụng nhất trên Internet. Để sử dụng dịch vụ này, người dùng cần có một trình duyệt web thường được gọi là browser. Hai trình duyệt thông dụng nhất hiện nay là Internet Explorer của công ty Microsoft và Netscape Navigator của công ty Netscape. Để truy cập vào một trang web, bạn cần phải biết địa chỉ (URL - Uniform Resource Locator) của trang web đó . Ví dụ, để truy cập vào trang web của công ty Microsoft, bạn gõ vào: Do dịch vụ này sử dụng giao thức HTTP (Hypertext Transfer Protocol) nên mỗi địa chỉ trang web luôn được bắt đầu là http:// Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org 9 Hình 1.4 – Dùng IE để truy cập trang web công ty Microsoft Trong mỗi trang web mà bạn truy cập vào, bạn có thể thấy được văn bản, hình ảnh, âm thanh, ... được trang trí và trình bày hết sức đẹp mắt. Ngoài ra, để có thể di chuyển tới các trang web khác, bạn có thể sử dụng các hyperlink (siêu liên kết). Do con trỏ chuột thường thay đổi hình dạng ngang qua một đối tượng có chứa hyperlink nên đây là cách đơn giản để nhận diện chúng. Sự ra đời của www thực sự là một bước ngoặt lớn của mạng Internet bởi vì nó tạo cơ hội cho bạn truy cập đến một kho thông tin khổng lồ với hàng triệu triệu trang web. Điều này mở ra nhiều cơ hội và thách thức lớn cho công việc của bạn trong hiện tại và tương lai. 2.2. Thư điện tử - Email E-mail (electronic mail) là dịch vụ trao đổi các thông điệp điện tử bằng mạng viễn thông. Các thông điệp này thường được mã hóa dưới dạng văn bản ASCII. Tuy nhiên bạn cũng có thể gửi các tập tin hình ảnh, âm thanh cũng như các tập tin chương trình kèm theo email. E-mail là một trong những dịch vụ nguyên thủy của Internet và được sử dụng rất rộng rãi. Chiếm phần lớn thông lượng trên mạng Internet là e-mail. 10 Giao thức thường dùng để gửi/nhận e-mail là SMTP(Simple Mail Transfer Protocol)/POP3 (Post Office Protocol 3). Để sử dụng dịch vụ email, bạn cần phải có: • Địa chỉ email. Một địa chỉ email thường có dạng name@domainname. Ví dụ, trong địa chỉ email duyld@yahoo.com, duyld đóng vai trò là tên, yahoo.com là tên miền. • Địa chỉ email được quản lí bởi mail server. Tại Việt Nam, các nhà cung cấp dịch vụ email thường là các ISP như VDC, FPT, SaigonNet. Do đó, tên miền trong các địa chỉ email của bạn thường là: hcm.vnn.vn, hn.vnn.vn, hcm.fpt.vn, fpt.vn, saigonnet.vn, ... Tuy nhiên, có rất nhiều website trên Internet cung cấp dịch vụ email miễn phí. Thông dụng nhất vẫn là Yahoo, Hotmail, ... • Tên đăng nhập và mật khẩu để truy cập vào hộp thư: Điều này đảm bảo rằng chỉ có bạn mới có thể đọc và gửi các thư của chính mình. 2.3. Truyền, tải tập tin - FTP FTP (File Transfer Protocol) là dịch vụ dùng để trao đổi các tập tin giữa các máy tinh trên Internet với nhau. FTP thường được dùng để tải các trang web từ những người thiết kế đến các máy chủ. Nó cũng thường được dùng để tải các chương trình và các tập tin khác từ các máy chủ trên mạng. Một số chương trình FTP với giao diện đồ họa thân thiện hữu ích hiện nay là: • WS_FTP ( • CuteFTP ( • FTP Explorer ( 2.4. Tán gẫu - Chat Dịch vụ tán gẫu cho phép người dùng có thể trao đổi trực tuyến với nhau qua mạng Internet. Cách thông dụng nhất là trao đổi bằng văn bản. Nếu đường truyền tốt, bạn có thể trò chuyện tương tự như nói chuyện điện thoại. Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org 11 Các chương trình hỗ trợ tán gẫu thông dụng hiện nay là: • AOL Instant Messenger • Yahoo Messenger Các chương trình này không những hỗ trợ tán gẫu qua văn bản thông thường mà còn hỗ trợ trò chuyện bằng âm thanh (voice chat) và hình ảnh (webcam) 3. KHAI THÁC CÁC TÀI NGUYÊN CỦA MẠNG INTERNET 3.1. Một số website hữu ích 3.1.1. Tra cứu thông tin Yahoo ( 12 Google ( Altavista ( Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org 13 3.1.2. Thư viện phần mềm ZDNet ( CNet ( 14 3.1.3. Nghiên cứu, khoa học, giáo dục Codeguru ( CodeProject ( Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org 15 MSDN ( Expert exchange ( 16 ProgrammersHeaven ( 3.1.4. Mua bán trực tuyến Amazon ( Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org 17 eBay ( Yahoo Shopping ( 18 3.2. Một số công cụ khai thác tài nguyên Internet 3.2.1. Teleport Pro ( Công cụ rất hữu ích cho phép tải toàn bộ website. Điều này giúp chúng ta xem website offline ngay trên máy của mình, tiết kiệm thời gian truy cập Internet. Teleport Pro hoạt động hoàn toàn tự động, chương trình tự chia làm nhiều nhánh hoạt động đồng thời (multithreaded). Ngoài ra chương trình này còn có chế độ tự động tải theo lịch (schedule) Hình 1.5 - Màn hình giao diện của Teleport Pro 3.2.2. FlashGet ( FlashGet là công cụ nhằm hỗ trợ cho tải các tập tin trên Internet và quản lí chúng một cách hiệu quả. Thông thường, việc tải một tập tin từ Internet không thành công do đường truyền chậm hay một sự cố nào đó. FlashGet đặc biệt hiệu quả ở hai khả năng đó là tải các tập tin lớn và quản lí các tập tin đã tải về để phục vụ cho nhu cầu cập nhật hoặc tải lại sau này. FlashGet tải các tập tin bằng cách chẻ nhỏ (split) các tập tin thành các phần nhỏ và tải các phần này đồng thời. Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org 19 Điều này tận dụng tối đa đường truyền rảnh và giảm thời gian tải một tập tin rất đáng kể. Trong trường hợp đường truyền chậm hoặc hay bị đứt quãng nửa chừng, FlashGet duy trì được trạng thái hiện hành các tập tin này để có thể tiếp tục tải một khi đường truyền hoạt động tốt trở lại. FlashGet tích hợp với các trình duyệt để một khi bạn click vào một hyperlink có tải tập tin, chương trình FlashGet sẽ tự động bật lên và tự động tải tập tin về. Hình 1.6 - Màn hình giao diện của FlashGet 3.2.3. Copernic ( Copernic là phần mềm tìm kiếm thông minh và đa năng vì nó cho phép người dùng điều khiển nhiều máy tìm kiếm (search engines) cùng một lúc để tìm kiếm thông tin mà mình yêu cầu. Copernic có thể sử dụng đến 1000 máy tìm kiếm nổi tiếng và quan trọng nhất trên Internet. Copernic tìm kiếm cùng một lúc trên tất cả các máy tìm kiếm trong nhóm nên có kết quả rất nhanh.Trong khi tìm kiếm nó tự động loại bỏ các kết quả trùng lặp. Khi có kết quả, người dùng có thể 20 nhấn nút Validate để loại bỏ các links; các websites không còn hoạt động và nút Refine để tinh chỉnh kết quả tìm kiếm hơn nữa. Kết quả tìm thấy được trình bày trong cửa sổ bên dưới trong những ô theo thứ tự mức độ liên quan với chủ đề tìm kiếm, có tên và địa chỉ các trang web, thứ tự, ngày tìm được và hệ thống dò tìm nào đã tìm được, và vài dòng văn bản mô tả các trang web đó. Các font chữ và màu sắc trong các ô này có thể được điều chỉnh theo ý người dùng. Kết quả được tự động lưu lại để sau này xem lại hoặc để cập nhật (update), tức là tìm kiếm lại nhưng chỉ tìm những thông tin mới nên có kết quả rất nhanh. Khi có kết quả, Copernic đề nghị ta xem bằng trình duyệt có sẵn được gọi là Results Explorer, hoặc khi ta nhấn vào nút Results. Lúc này kết quả tìm thấy được trình bày chi tiết hơn và đẹp hơn dưới dạng HTML.Trong Results Explorer, các địa chỉ tìm được có thể ... ruy cập được từ Internet. Để một website có thể truy cập được từ Internet, website phải được đặt trên một máy có cấu hình mạnh và có kết nối Internet thường xuyên. Vì chi phí để có được một máy như vậy không nhỏ nên mới xuất hiện các công ty cung cấp dịch vụ thuê chỗ phục vụ cho các công ty có nhu cầu đưa website của mình lên Internet. Có hai hình thức thuê chỗ là miễn phí và phải trả tiền. Nếu sử dụng dịch vụ miễn phí, bạn sẽ phải chịu quảng cáo của người khác chen vào, đồng thời không thể sử dụng địa chỉ truy cập với tên miền đã đăng kí. Ví dụ, nếu bạn đăng kí dịch vụ thuê chỗ miễn phí của công ty Brinkster (www.brinkster.com) thì địa chỉ truy cập website của bạn có dạng: Dịch vụ thuê chỗ miễn phí chỉ phù hợp cho các website của các cá nhân với mục đích thử nghiệm, không thể dùng cho các công ty muốn kinh doanh trên Internet. Dịch vụ thuê chỗ có trả tiền cho phép bạn sử dụng tên miền đã đăng kí để truy cập vào website của mình, không có quảng cáo, có độ tin cậy cao và được bảo trì nâng cấp thường xuyên. Các website chuyên nghiệp đều tìm đến các dịch vụ hosting có chất lượng cao để đặt website của mình. Có hai dạng thuê chỗ, một dạng là gọi là shared (virtual) hosting trong đó nhiều website cùng chia sẻ tài nguyên một server. Một dạng Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org 279 khác bao gồm dedicated hosting và colocated hosting là thuê nguyên một máy tính và có toàn quyền thực hiện các thao tác trên máy này. Hiện nay, thông dụng nhất chiếm đến 99% vẫn là shared hosting vì nó phù hợp cho hầu hết các công ty vừa và nhỏ với chi phí hợp lí. Khi chọn dịch vụ webhosting cần lưu ý đến các tính năng mà các nhà cung cấp đưa ra: • Dung lượng đĩa cứng (Space) là dung lượng tối đa cho phép dữ liệu website của bạn. Đơn vị tính được liệt kê trong các bảng thông tin dịch vụ thường là megabytes. Các tập tin chiếm dung lượng đĩa nhiều thông thường là các tập tin nhạc, video như .mp3, .avi, .mpeg, • Băng thông (Transfer/Bandwidth) là tổng số những gì mà người dùng đã tải từ website của bạn khi truy cập. Thông thường nếu vượt quá giới hạn cho phép, bạn phải trả thêm tiền cho nhà cung cấp dịch vụ. Ví dụ: nếu một khách vào website của bạn xem 3 trang HTML mỗi trang có kích thước trung bình khoảng 20KB và 8 tấm hình nhúng trong đó mỗi tấm hình 10 KB thì với 500 khách truy cập một ngày, bạn sẽ cần ít nhất (3 * 20 + 8 * 10) * 500 * 30 = 2,100,000 KB = 2.1 GB băng thông mỗi tháng. • Uptime là phần trăm thời gian một server làm việc. Ví dụ nếu bạn đặt website tại một server có uptime trung bình là 99.86%, điều này có nghĩa là website của bạn sẽ bị down khoảng 1h mỗi tháng. Hầu như không có dịch vụ thuê chỗ dạng shared hosting nào có thể đảm bảo uptime 100%. Sau khi trả tiền cho dịch vụ thuê chỗ xong, các thao tác mà bạn thường phải làm đó là: • Upload website lên server • Quản lí các thông tin về truy cập website Với các nhà cung cấp chất lượng cao, bạn sẽ được hỗ trợ các thao tác này hết sức thuận tiện thông qua giao tiếp trên web cũng như bằng FTP mà không cần đòi hỏi nhiều kiến thức về lĩnh vực này. 280 2. Các bước cơ bản để lựa chọn phương án thuê chỗ thích hợp 2.1. Lựa chọn hệ điều hành mà server sử dụng Việc lựa chọn hệ điều hành tuỳ thuộc vào những nhu cầu của bạn. Nếu bạn đang sử dụng IIS, ASP, VBScript, Windows Media, Microsoft Access, Microsoft SQL Server, or Visual InterDev và không có nhiều thời gian cho việc tìm hiểu về các giải pháp dựa trên Unix, Linux, hãy chọn Windows NT hoặc Windows 2000. Tuy nhiên bạn phải trả giá cho sự lựa chọn này vì các phần mềm của Microsoft đều đòi hỏi phải trả tiền bản quyền. Nếu bạn muốn sử dụng SQL server, bạn phải trả thêm khá nhiều tiền trong đó một phần là tiền bản quyền. Bạn cũng nên biết rằng hiện nay hệ điều hành Linux và Apache Web servers được sử dụng rất nhiều trong các công ty cung cấp dịch vụ thuê chỗ. Sở dĩ có như vậy vì Apache' cung cấp rất nhiều tính năng hỗ trợ dạng thuê chỗ này, đồng thời rất ổn định và hiệu suất thi hành cao. Ngoài ra, Linux và Apache là miễn phí. 2.2. Nhu cầu về băng thông Bạn nên chi tiết hóa nhu cầu về băng thông của bạn trước khi đăng kí. Cần ước lượng kích thước của dữ liệu website thông qua việc lượng giá kích thước trung bình của trang, số trang trong website, và số lần xem các trang này trong một tháng. Một số nhà cung cấp webhosting thường quảng cáo có thể hỗ trợ không giới hạn băng thông (unlimited bandwidth). Tuy nhiên điều này thường là thủ thuật mà thôi bởi vì nên nhớ rằng họ cũng phải trả tiền thuê băng thông. Sở dĩ có quảng cáo trên bởi những nhà cung cấp ước lượng rằng băng thông của từng người dùng thay đổi khác nhau và có thể bù qua sớt lại mà bạn không biết. Hơn nữa, đa số các nhà cung cấp dạng này đều yêu cầu bạn chấp nhận chính sách của họ trước khi sử dụng (bạn rất ít khi đọc kĩ chính sách này) mà trong đó cũng nêu rõ điều kiện sẽ yêu cầu bạn trả thêm tiền hoặc ra đi nếu lạm dụng tài nguyên. 2.3. Nhu cầu về không gian đĩa Tiếp đến là ước lượng kích thước không gian đĩa cần cho website. Với các website nhiều ảnh đồ họa, kích thước cần nhiều hơn các website chỉ có văn bản. Tuy nhiên với sự tiến bộ của phần Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org 281 cứng, hầu hết các dung lượng đĩa mà nhà cung cấp hỗ trợ vượt quá nhu cầu thông thường, ví dụ như 5GB, 10GB, 100GB. 2.4. Các ngôn ngữ lập trình được hỗ trợ Với các website có lập trình, ngôn ngữ lập trình server-side cũng cần phải được xem xét đến một cách thận trọng. Hiện nay thông dụng nhất trên web vẫn là các ngôn ngữ PHP, JSP, ASP. Sử dụng ASP đòi hỏi hệ điều hành phải là Windows và thông thường là chi phí cao hơn so với PHP do PHP được tích hợp sẵn trong Apache và Linux. 2.5. Hệ quản trị cơ sở dữ liệu hỗ trợ Một ứng dụng web thật sự đòi hỏi phải có sự ước lượng giữa chi phí bỏ ra và nhu cầu cần có khi bàn đến việc chọn hệ quản trị CSDL nào để hỗ trợ. Nếu dùng Microsoft thì có Microsoft Access hay Microsoft SQL Server, còn nếu dùng Unix hay Linux thì có mSQL, MySQL, hay PostgreSQL. MS SQL Server thì rất mạnh hơn nhiều so với Access cũng như MySql và PostgreSQL so với mSQL. Tuy nhiên cần chú ý đến vấn đề giá cả, ví dụ như nếu dùng MS. Access thì được cung cấp miễn phí, trong khi dùng MS. SQL Server thì phải trả tiền bản quyền, bảo trì hệ thống, 2.6. Hỗ trợ kĩ thuật Vấn đề này cũng rất quan trọng vì nếu trục trặc trong lúc vận hành hệ thống của bạn không được sửa chữa kịp thời, có thể sẽ dẫn đến mất nhiều cơ hội kinh doanh. Các hình thức hỗ trợ kĩ thuật được cung cấp thường là email, chat hay điện thoại trực tiếp tư vấn. Lưu ý rằng chi phí sẽ tỉ lệ thuận với chất lượng và hình thức tư vấn,. 2.7. Các tính năng khác Ngoài ra cũng cần xem xét đến các tính năng khác như: • Hỗ trợ SSL cho các giao tác an tàn tên mạng như trả tiền, chuyển tiền hay không. • Hỗ trợ việc truy xuất đến các dữ liệu thống kê cho phép tổng hợp và đánh giá các khách hàng tham quan website • Hỗ trợ nghe nhạc và xem video trực tiếp trên mạng mà không cần tải toàn bộ về. • Số email accounts cung cấp và hỗ trợ mailing lists. 282 • Giá cả cho việc sử dụng vượt quá băng thông và dung lượng cho phép • Hỗ trợ giao tiếp (control panel for graphical access) thuận tiện trong việc quản lí website. • Hỗ trợ và tư vấn an ninh của hệ thống • Các component được hỗ trợ sẵn 2.8. Các nhà cung cấp dịch vụ hosting hàng đầu thế giới hiện này • Lunarpages.com • iPowerWeb.com • ICDSoft • Globat.com Tham khảo tại • • • • • Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org 283 TÀI LIỆU THAM KHẢO 8. Active Server Page Unleashed, Stephan Walth 9. Xây dựng trang web động với ASP, Nhóm tác giả ELICOM 10. ASP Database, Nhóm tác giả SAIGONBOOK 11. Tự học Lập trình Thương mại Điện tử với ASP trong 21 ngày, Nhóm tác giả SAIGONBOOK 12. 13. 14. 15. 16. 284 MỤC LỤC CHƯƠNG 1: GIỚI THIỆU MẠNG INTERNET................................3 1. Sơ lược về mạng Internet............................................................3 2. Các dịch vụ cơ bản của mạng Internet........................................8 3. Khai thác các tài nguyên của mạng Internet .............................11 4. Một số thuật ngữ thông dụng ....................................................20 5. Một số câu hỏi thường gặp .......................................................21 Câu hỏi ..........................................................................................28 Thực hành .....................................................................................29 CHƯƠNG 2: THIẾT LẬP WEBSITE.............................................37 1. Cài đặt webserver......................................................................37 2. Cấu hình webserver...................................................................43 3. Một số vấn đề liên quan đến an toàn ........................................49 4. Một số câu hỏi thường gặp .......................................................51 Câu hỏi ..........................................................................................54 Thực hành .....................................................................................55 CHƯƠNG 3: THIẾT KẾ TRANG WEB .........................................61 1. Giới thiệu về HTML....................................................................61 2. Một số tag cơ bản của HTML ....................................................63 3. Định dạng bảng biểu..................................................................69 4. Form và các thành phần của form.............................................71 5. Frame ........................................................................................77 6. Cascading Style Sheet ..............................................................79 Thực hành .....................................................................................83 Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org 285 CHƯƠNG 4: CÁC NGÔN NGỮ SCRIPT HỖ TRỢ LẬP TRÌNH WEB .....................................................................................................129 1. Giới thiệu về VBScript và JavaScript.......................................129 2. Sử dụng VBScript ....................................................................130 3. Sử dụng JavaScript .................................................................139 4. Sử dụng VBScript và JavaScript trong các trang web ............144 5. Dấu mã VBScript/JavaScript ...................................................147 6. Một số ví dụ minh họa .............................................................148 Thực hành ...................................................................................157 CHƯƠNG 5: NHẬP MÔN ASP...................................................159 1. Giới thiệu về ASP ....................................................................159 2. Các khái niệm cơ bản về ASP.................................................160 3. Xử lí dữ liệu nhập từ người dùng............................................163 4. Xử lí các kết xuất dữ liệu.........................................................165 5. Kết nối với cơ sở dữ liệu .........................................................172 6. Những câu hỏi thường gặp .....................................................180 Thực hành ...................................................................................184 Bài tham khảo: Lập trình Web ASP với tiếng Việt Unicode ........185 Bài tham khảo: Kết xuất dữ liệu ra dạng Excel từ trang ASP .....195 CHƯƠNG 6: ASP NÂNG CAO...................................................199 1. Đối tượng Response ...............................................................199 2. Đối tượng Request ..................................................................201 3. Application và Session ............................................................208 4. Cookies....................................................................................213 5. Đối tượng Server .....................................................................216 6. Xử lí lỗi với đối tượng ASPError..............................................218 7. ADO nâng cao .........................................................................219 8. Đối tượng FileSystemObject ...................................................225 286 9. Gửi email bằng CDONTS........................................................227 10. Một số kĩ thuật khác...............................................................233 Bài tham khảo: Hiển thị hình ảnh từ cơ sở dữ liệu trong các ứng dụng web .......................................................................236 Bài tham khảo: Phương pháp hỗ trợ giới hạn truy cập trang web.... .....................................................................................................241 Bài tham khảo: Bảo vệ cơ sở dữ liệu Access trong các ứng dụng web..............................................................................245 Bài tham khảo: Bảo vệ ứng dụng web chống tấn công kiểu SQL Injection........................................................................248 CHƯƠNG 7: ỨNG DỤNG MINH HỌA CỬA HÀNG SÁCH TRỰC TUYẾN .............................................................................253 1. Giới thiệu về ứng dụng............................................................253 2. Tổ chức website ứng dụng......................................................253 3. Thiết kế cơ sở dữ liệu..............................................................253 4. Kết nối với cơ sở dữ liệu .........................................................255 5. Thao tác truy vấn trên cơ sở dữ liệu .......................................256 6. Thao tác thêm một mẩu tin vào cơ sở dữ liệu.........................258 7. Thao tác cập nhật một mẩu tin trên cơ sở dữ liệu ..................259 8. Thao tác xóa một mẩu tin trên cơ sở dữ liệu ..........................262 9. Sử dụng Cookies.....................................................................262 10. Những câu hỏi thường gặp ...................................................274 Thực hành ...................................................................................276 Đồ án ...........................................................................................277 Bài tham khảo: Web Hosting – Dịch vụ thuê chỗ website trên Internet ........................................................................................278 TÀI LIỆU THAM KHẢO...............................................................283 MỤC LỤC ....................................................................................284 Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org Lê Đình Duy - ĐH KHTN Tp. HCM Email: ledduy@ieee.org
File đính kèm:
- giao_trinh_thiet_ke_va_lap_trinh_web_le_dinh_duy.pdf