Đồ án Thực trạng tìm hiểu về các Web server thông dụng hiện nay

Tài liệu Đồ án Thực trạng tìm hiểu về các Web server thông dụng hiện nay: A. YÊU CẦU CỦA ĐỀ TÀI: Bao gồm các phần sau: Tìm hiểu về các Web server thông dụng hiện nay: + Microsoft Internet Information Server + Apache Web Server Trình bày về đặc điểm về khả năng, cài đặt, vận hành, hỗ trợ các ứng dụng Web và so sánh các điểm mạnh, yếu, các ưu nhược điểm giữa chúng. Tìm hiểu về hệ thống mailing list: Tìm hiểu về các nghi thức truyền nhận mail cơ bản như SMTP và POP3. Tìm hiểu cách vận hành và cài đặt của các hệ thống mail trên các hệ điều hành thông dụng: + Internet Mail. + Linux Mail. B. CƠ SỞ LÝ THUYẾT: CHƯƠNG I TÌM HIỂU VỀ CÁC WEB SERVER THÔNG DỤNG I. GIỚI THIỆU VỀ HỆ ĐIỀU HÀNH WINDOWS NT 1. Thếâ nào là một hệ điều hành mạng: Mạng bao gồm các tài nguyên (máy trạm, máy in…) và các thiết bị truyền thông (router, bridge). Với việc ghép nối các máy tính thành mạng thì cần thiết phải có một hệ thống phần mềm có chức n...

doc100 trang | Chia sẻ: hunglv | Lượt xem: 1147 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Đồ án Thực trạng tìm hiểu về các Web server thông dụng hiện nay, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
A. YEÂU CAÀU CUÛA ÑEÀ TAØI: Bao goàm caùc phaàn sau: Tìm hieåu veà caùc Web server thoâng duïng hieän nay: + Microsoft Internet Information Server + Apache Web Server Trình baøy veà ñaëc ñieåm veà khaû naêng, caøi ñaët, vaän haønh, hoã trôï caùc öùng duïng Web vaø so saùnh caùc ñieåm maïnh, yeáu, caùc öu nhöôïc ñieåm giöõa chuùng. Tìm hieåu veà heä thoáng mailing list: Tìm hieåu veà caùc nghi thöùc truyeàn nhaän mail cô baûn nhö SMTP vaø POP3. Tìm hieåu caùch vaän haønh vaø caøi ñaët cuûa caùc heä thoáng mail treân caùc heä ñieàu haønh thoâng duïng: + Internet Mail. + Linux Mail. B. CÔ SÔÛ LYÙ THUYEÁT: CHÖÔNG I TÌM HIEÅU VEÀ CAÙC WEB SERVER THOÂNG DUÏNG I. GIÔÙI THIEÄU VEÀ HEÄ ÑIEÀU HAØNH WINDOWS NT 1. Theáâ naøo laø moät heä ñieàu haønh maïng: Maïng bao goàm caùc taøi nguyeân (maùy traïm, maùy in…) vaø caùc thieát bò truyeàn thoâng (router, bridge). Vôùi vieäc gheùp noái caùc maùy tính thaønh maïng thì caàn thieát phaûi coù moät heä thoáng phaàn meàm coù chöùc naêng quaûn lyù taøi nguyeân, tính toaùn vaø xöû lyù truy caäp moät caùch thoáng nhaát treân maïng, heä nhö vaäy ñöôïc goïi laø heä ñieàu haønh maïng. Moãi taøi nguyeân cuûa maïng nhö file, ñóa, thieát bò ngoaïi vi ñöôïc quaûn lyù bôûi moät tieán trình nhaát ñònh vaø heä ñieàu haønh maïng ñieàu khieån söï töông taùc giöõa caùc tieán trình vaø truy caäp ñeán caùc tieán trình ñoù. Quaûn lyù caùc taøi nguyeân: taäp tin ôû xa, naïp vaø chaïy caùc App duøng chung, I/O vôùi caùc thieát bò maïng duøng chung, chæ caáp phaùt CPU trong tieán trình NOS. Caên cöù vaøo vieäc truy caäp taøi nguyeân treân maïng maø ngöôøi ta chia thöïc theå trong maïng thaønh hai loaïi chuû vaø khaùch, trong ñoù maùy khaùch (Client) truy caäp ñöôïc vaøo taøi nguyeân cuûa mình nhöng khoâng chia xeû taøi nguyeân cuûa noù vôùi maïng, coøn maùy chuû (Server) laø maùy tính naèm treân maïng vaø chia xeû taøi nguyeân cuûa noù vôùi ngöôøi duøng maïng. Hieän nay caùc heä ñieàu haønh maïng thöôøng ñöôïc chia laøm hai loaïi laø heä ñieàu haønh maïng ngang haøng vaø heä ñieàu haønh maïng phaân bieät (clent/server). Vôùi heä ñieàu haønh maïng ngang haøng, moãi maùy tính treân maïng vöøa coù theå ñoùng vai troø chuû laãn khaùch töùc laø chuùng coù theå söû duïng taøi nguyeân cuûa maïng laãn chia xeû taøi nguyeân cuûa noù cho maïng. Ví duï: Lantastic cuûa Artisoft, Netware cuûa Novell, Windows (for Workgroup, 95, NT client) cuûa Microsoft. Vôùi heä ñieàu haønh maïng phaân bieät caùc maùy tính ñöôïc phaân bieät chuû vaø khaùch, trong ñoù maùy chuû maïng (Server) giöõ vai troø chuû vaø caùc maùy ngöôøi duøng giöõ vai troø khaùch (caùc traïm). Khi coù nhu caàu truy caäp taøi nguyeân treân maïng caùc traïm taïo ra yeâu caàu vaø göûi chuùng tôùi server vaø sau ñoù server thöïc hieän vaø göûi traû lôøi. 2. Heä ñieàu haønh maïng Windows NT Windows NT laø heä ñieàu haønh maïng cao caáp cuûa haõng Microsoft. Phieân baûn ñaàu tieân coù teân laø Windows NT 3.1 phaùt haønh naêm 1993 vaø phieân baûn server laø Windows NT Advanced Server (tröôùc ñoù laø LAN manager for Windows NT). Naêm 1994 phieân baûn Windows NT Server vaø Windows NT Workstation phieân baûn 3.5 ñöôïc phaùt haønh. Tieáp theo ñoù laø söï ra ñôøi caùc phieân baûn 3.51. Caùc phieân baûn Workstation coù theå söû duïng ñeå thaønh laäp maïng ngang haøng, coøn caùc phieân baûn Server daøng cho quaûn lyù file taäp trung, in aán vaø chia seû caùc öùng duïng. Naêm 1995, Windows NT Workstation phieân baûn 4.0 vaø Windows NT Server 4.0 ra ñôøi ñaõ keát hôïp vôùi caáu truùc khung cuûa ngöôøi anh em Windows 95 noåi tieáng phaùt haønh tröôùc ñoù khoâng laâu (tröôùc ñaây caáu truùc khung cuûa Windows NT gioáng Windows 3.1) ñaõ ñöôïc keát hôïp giao dieän quen thuoäc, deã söû duïng cuûa Windows 95 vaø söï maïnh meõ, an toaøn, baûo maät cao cuûa Windows NT. Windows NT coù hai baûn maø noù ñi ñoâi vôùi hai caùch tieáp caän maïng khaùc nhau. Hai baûn naøy goïi laø Windows NT Workstation vaø Windows NT server. Vôùi heä ñieàu haønh chuaån cuûa NT ta coù theå xaây döïng maïng ngang haøng, server maïng vaø moïi coâng cuï quaûn trò caàn thieát cho server maïng, ngoaøi ra coøn coù theå coù nhieàu giaûi phaùp veà xaây döïng maïng dieän roäng. Caû hai baûn Windows NT Workstation vaø Windows NT server cuøng ñöôïc xaây döïng treân cô sôû nhaân NT chung vaø caùc giao dieän vaø caû hai cuøng coù nhöõng ñaëc tröng an toaøn theo tieâu chuaån C2. Windows NT Workstation ñöôïc söû duïng ñeå keát noái nhöõng nhoùm ngöôøi söû duïng nhoû, thöôøng cuøng laøm vieäc trong moät vaên phoøng. Tuy nhieân vôùi Windows NT server ta coù moät khaû naêng choáng hoûng hoùc cao, nhöõng khaû naêng cung caáp dòch vuï maïng lôùn vaø nhöõng löïa choïn keát noái khaùc nhau, Windows NT server khoâng haïn cheá soá ngöôøi coù theå thaâm nhaäp vaøo maïng. Vôùi Windows NT server ta cuõng coù nhöõng coâng cuï quaûn trò töø xa vaøo maïng maø coù theå thöïc hieän vieäc quaûn trò nhöõng maùy tính ôû xa. Noù tích hôïp vôùi taát caû nhöõng sô ñoà maïng BUS, STAR, RING vaø hoãn hôïp. Windows NT laø heä ñieàu haønh coù söùc maïnh coâng nghieäp ñaàu tieân cho soá löôïng khoång loà caùc maùy tính IBM compatible, Windows NT laø moät heä ñieàu haønh thöïc söï daønh cho ngöôøi duøng, caùc cô quan, caùc coâng ty xí nghieäp. Windows NT laø moät heä ñieàu haønh ña nhieäm, ña xöû lyù vôùi ñòa chæ 32 bit boä nhôù. Noù yeåm trôï caùc öùng duïng cuûa DOS, Windows, Win 32 GUI vaø caùc öùng duïng döïa treân kyù töï. Windows NT server laø heä ñieàu haønh maïng, ñaùp öùng cho maïng cuïc boä (LAN) vöøa ñaùp öùng cho maïng dieän roäng (WAN) nhö Intranet, Internet. Windows NT server hôn haún caùc heä ñieàu haønh khaùc bôûi tính meàm deûo, ña daïng trong quaûn lyù. Noù vöøa cho pheùp quaûn lyù maïng theo moâ hình maïng phaân bieät (Client/Server) vöøa quaûn lyù theo moâ hình maïng ngang haøng (Peer to Peer). Windows NT server ñaùp öùng toát nhaát caùc dòch vuï vieãn thoâng, moät dòch vuï ñöôïc söû duïng roäng raõi trong töông lai. Windows NT server caøi ñaët ñôn giaûn, nheï nhaøng vaø ñieàu quan troïng nhaát laø noù töông thích vôùi haàu nhö taát caû caùc heä maïng, noù khoâng ñoøi hoûi ngöôøi ta thay ñoåi nhöõng gì ñaõ coù. Cho pheùp duøng caùc dòch vuï truy caäp töø xa, coù khaû naêng phuïc vuï ñeán 64 coång truy nhaäp töø xa. Ñaùp öùng cho caùc maùy traïm Macintosh noái vôùi Windows NT server. Windows NT server yeåm trôï moïi nghi thöùc maïng chuaån nhö NETBUEI, IPX/SPX, TCP/IP … vaø caùc nghi thöùc khaùc. Windows NT cuõng töông thích vôùi nhöõng maïng thoâng duïng hieän nay nhö Novell netware, Banyan VINES vaø Microsoft LAN Manager. Ñoái vôùi maïng lôùn vaø khaû naêng thaâm nhaäp töø xa, saûn phaåm Windows NT server cuõng cung caáp caùc chöùc naêng boå sung nhu caàu , khaû naêng keát noái vôùi maùy tính lôùn vaø maùy Macintosh. III. TOÅNG QUAN VEÀ WEB SERVER : Web Server: Web server laø moät phaàn meàm server ñaèng sau WWW. Noù laéng nghe nhöõng yeâu caàu töø phía client, chaúng haïn nhö moät trình duyeät nhö Netscape hoaëc Microsoft Internet Explorer. Khi nhaän ñöôïc moät yeâu caàu töø phía client, noù seõ xöû lyù nhöõng yeâu caàu ñoù vaø traû veà moät vaøi döõ lieäu döôùi daïng moät fom chöùa caùc trang ñöôïc ñònh daïng döôùi daïng vaên baûn hoaëc hình aûnh. Trình duyeät Web traû laïi döõ lieäu naøy vôùi khaû naêng toát nhaát coù theå vaø trình ñeán ngöôøi söû duïng. Khaùi nieäm veà Web server ñôn giaûn chæ laø moät chöông trình maø chuùng chôø ñôïi nhöõng yeâu caàu töø phía client vaø ñaùp öùng nhöõng yeâu caàu ñoù khi nhaän ñöôïc. Web server keát noái vôùi caùc trình duyeät hoaëc caùc client söû duïng giao thöùc HTTP, ñoù laø moät giao thöùc ñaõ ñöôïc chuaån hoùa caùc phöông thöùc cuûa caùc yeâu caàu göûi ñi vaø xöû lyù caùc yeâu caàu ñoù. Noù cho pheùp raát nhieàu caùc client khaùc nhau keát noái vôùi caùc server cung caáp maø khoâng gaëp baát kyø moät trôû ngaïi naøo trong vaán ñeà töông thích. Haàu heát caùc taøi lieäu yeâu caàu hoaëc ñaùp öùng ñeàu phaûi ñöôïc ñònh daïng baèng ngoân ngöõ HTML. HTML laø moät phaàn cuûa moät ngoân ngöõ ñaùnh daáu khaùc goïi laø SGML, noù ñöôïc söû duïng roäng raõi bôûi nhieàu toå chöùc vaø trong caùc chính phuû lieân bang. HTML laø nguoàn soáng cuûa Web. Noù laø moät ngoân ngöõ ñaùnh daáu ñôn giaûn ñöôïc söû duïng ñeå ñònh daïng vaên baûn. Trình duyeät thoâng dòch caùc thoâng tin ñaùnh daáu naøy vaø hieån thò caùc thoâng tin caàn ñaùp öùng naøy vôùi khaû naêng toát nhaát coù theå. Quan troïng hôn nöõa, HTML cho pheùp lieân keát vôùi caùc taøi lieäu vaø taøi nguyeân khaùc, ñaây laø söï theå hieän tính sieâu vaên baûn cuûa Web. Sieâu vaên baûn cho pheùp ngöôøi söû duïng xem moät taøi lieäu khaùc löu tröõ ôû treân cuøng moät maùy hoaëc trong moät maùy khaùc ñaët ôû moät nôi khaùc treân theá giôùi. Noù cho pheùp thoâng tin toàn taïi haàu nhö döôùi daïng ba chieàu. Ngöôøi söû duïng khoâng nhöõng chæ coù theå ñoïc taøi lieäu maø coøn coù theå chuyeån ñeán moät choã khaùc. Tieán trình tìm vaø mang thoâng tin veà hoaøn toaøn trong suoát ñoái vôùi ngöôøi söû duïng. Noù laø moät ngoân ngöõ uyeån chuyeån vaø deã söû duïng. Söï ñieàu höôùng thoâng tin qua nhieàu thoâng tin theo moät caùch ñaëc bieät. Noù cho pheùp ngwôøi söû duïng thu thaäp thoâng tin moät caùch deã daøng vaø hieån thò chuùng theo caùch maø ngöôøi söû duïng deã löïa choïn nhaát. Neáu baát ngôø ngöôøi söû duïng hoûi baèng caùch naøo ñeå taïo ra moät trang Web. Thì hoï seõ giaùp maët vôùi haøng loaït caùc vaán ñeà coù lieân quan maø hoï caàn phaûi tìm hieåu tröôùc khi baét ñaàu vieát maõ moät trang HTML ñaàu tieân. Vaán ñeà quan troïng nhaát vaø laø lyù do cô baûn nhaát laø phaûi löïa choïn phaàn meàm server naøo ñeå söû duïng, vôùi nhöõng thoâng tin cô baûn nhaát maø cuoán baùo caùo naøy cung caáp, söï löïa choïn coù leõ laø khoâng khoù. Caùc vaán ñeà maø caàn phaûi quan taâm khi löïa choïn moät Web server ñeå giao phoù coâng vieäc cho noù. - Phaàn meàm traû tieàn hay ñöôc mieãn phí. - Deã caøi ñaët. - Deã caáu hình. - Deã môû roäng hoaëc tuyøbieán moät vaøi dieän maïo cuûa server. - Caùc ñaëc tröng cô baûn. - Söï phaùt trieån lieân tuïc. - Hoã trôï baûo maät. - Maõ nguoàn saün coù. - Hoã trôï coâng ngheä. - Hoã trôï neàn taûng. - Hoã trôï ñoái vôùi caùc phaàn meàm thöù ba. IV. INTERNET INFORMATION SERVER (IIS): IIS laø moät dòch vuï tuyø choïn cuûa Windows NT server cung caáp caùc tính naêng veà Web site. Giaûi phaùp phoå bieán nhaát cuûa Microsoft cho moät Web site laø chaïy IIS treân neàn Windows NT server. IIS laø moät thaønh phaàn cô baûn ñeå xaây döïng moät Internet hoaëc Intranet server treàn neàn Windows NT 4.0, Workstation vaø Win 95. IIS ñöôïc tích hôïp ñaày ñuû trong Windows NT 4.0. Vôùi moät boä ñaày ñuû IIS vaø Windows NT 4.0 ngöôøi söû duïng seõ nhaän ñöôïc söï thuaän tieän khi xaây döïng moät cô cheá baûo maät treân Windows NT server vaø Windows NT File System (NTFS). Ngöôøi söû duïng coù theå söû duïng caùc kyû thuaät Internet theâm vaøo ñöôïc cung caáp bôûi IIS ñeå naâng cao caùc tính naêng Microsoft Back Office, bao goàm caùc thaønh phaàn sau: - Heä thoáng quaûn trò cô sôû döõ lieäu Microsoft SOL Server Client/Server. - Heä thoáng thoâng baùo Microsoft Exchange Server Client/Server. - Microsoft Proy Server. - Microsoft SNA Server keát noái vôùi maïng IBM enterprise. - Heä thoáng quaûn lyù Server cuûa Microsoft (taäp trung quaûn lyù caùc heä thoáng phaân taùn). -Microsoft Commercial Internet Server (MCIS). Vôùi IIS ngöôøi söû duïng coù theå trieån khai lieân tuïc caùc öùng duïng maïng leân caùc server ra ñôøi muoän caùc noäi dung Web môi nhaát. IIS ñaày ñuû hoã trôï caùc heä thoáng ngoân ngöõ laäp trình VB, VB Script, J ScriptTM ñöôïc phaùt trieån bôûi Microsoft vaø Java Component Noù cuõng hoã trôï caùc öùng duïng CGI daønh cho caùc ngoân ngöõ laäp trình Web cô sôû vaø ISAPI môû roäng vaø caùc boä loïc. 1. Caøi ñaët IIS treân Windows NT server: Microsoft cung caáp caùc chöông trình caøi ñaët khaù thaân thieän ñeå caøi ñaët IIS treân Windows NT server. Caùc böôùc cô baûn laø laáy chöông trình töø NT Option Pack hoaëc taûi töø Internet vaø chaïy Setup.exe. Windows NT Option Pack: IIS laø moät thaønh phaàn cuûa Windows NT Option Pack. Moät boä Windows NT Option Pack sau khi caøi ñaët ñaày ñuû phaûi bao goàm caùc thaønh phaàn sau: Microsoft Transaction Server. (MTC) Microsoft Management Console. (MMC) Microsoft Index Server. Microsoft Certificate Server. Microsoft Site Server Express. (SSE) - MTS laø moät thaønh phaàn cô baûn giaûi quyeát caùc tieán trình heä thoáng cho caùc quaù trình phaùt trieån, phaù huyû vaø quaûn lyù söï thi haønh ôû möùc cao vaø caùc öùng duïng server maïnh. - MMC laø moät öùng duïng xuyeân suoát phaân chia caùc coâng cuï quaûn lyù maø noù coù theå ñöa ra caùc caùch ñeå quaûn trò caùc chöông trình maïng, theâm vaøo ñoù MMC ñöôïc keát hôïp vôùi caùc saûn phaåm cuûa Microsoft nhö: Windows NT vaø taát caû caùc saûn Office.phaåm thuoäc MS Back Trong khi MMC töï noù khoâng ñöa cho ngöôøi söû duïng baát kyø moät chöùc naêng naøo ñöôïc theâm vaøo caû maø chæ cung caáp moät moâi tröôøng chung cho snap-ins. Snap-ins cung caáp moâi tröôøng quaûn trò aûo cho moãi saûn phaåm töông thích cuûa noù. Snap-ins ñöôïc trình baøy trong IIS nhö laø moät dòch vuï quaûn lyù Internet (ISN). Khi IIS khôûi ñoäng, MMC cuõng seõ ñöôïc khôûi ñoäng vaø naïp vaøo snap-ins. Trong töông lai taát caû caùc saûn phaåm cuûa MS Back Office bao goàm caû Windows, Windows NT, caùc coâng cuï quaûn trò maïnh seõ ñöôïc chuyeån sang MMC. Moät boä IIS phaûi bao goàm ñaày ñuû caùc thaønh phaàn sau: Content Index (Index Server). FTP Publishing Service. IIS Admin Service (Internet Service Manager snap-in). Microsoft Network News Transfer Protocol (NNTP) Service. Microsoft Simple Mail Transfer Protocol (SMTP) Service. MSDTC (Microsoft Distributed Transaction Coordinator). World Wide Web Publishing Service. 2. Quaûn lyù IIS Web server: + HTTP server: Dòch vuï naøy taïo moät WWW server coâng coäng. Server naøy taïo nhieàu trang HTML cho pheùp ngöôøi söû duïng coù theå chaïy caùc öùng duïng CGI ñeå thi haønh caùc coâng vieäc theâm vaøo ôû server döïa treân caùc yeâu caàu cuûa client. Vaên baûn, hình aûnh, aâm thanh vaø caùc taøi nguyeân khaùc coù theå ñöôïc taûi xuoáng WWW client. + Gopher Server: Dòch vuï naøy cung caáp caùc taøi nguyeân cho caùc Gopher client. Server göûi caùc file, caùc danh saùch thö muïc vaø caùc muïc choïn trình ñôn khaùc ñeán Gopher client. + FTP server: Dòch vuï naøy laø moät caäp nhaät ñeán server ñöôïc caøi ñaët saün treân Windows NT (TM), noù chuyeån caùc file coù saün ñeán FTP client. Maëc duø WWW ñaõ thay theá haàu heát caùc chöùc naêng cuûa FTP, tuy nhieân chæ FTP môùi coù theå ñöôïc söû duïng ñeå sao cheùp caùc file töø moät maùy client ñeán moät maùy server. Neáu nhöõng ngöôøi truy caäp töø xa caàn laøm vieäc ñoù, hoï phaûi söû duïng FTP. + Söï deã daøng chia xeû: Taát caû caùc dòch vuï treân laø moät phaàn cuûa moät tieán trình nhö nhau vôùi muïc ñích laø laøm haïn cheá söû duïng boä nhôù ngoaøi vaø taêng hieäu quaû. IIS cuõng hoã trôï thi haønh söï giaùm saùt caùc boä ñeám vaø kieåm tra SNMP vôùi FTP, Gopher, HTTP… Boä ñeám SNMP naèm döôùi nuùt IIS cuûa caây teân MIB. + Internet Server API: Caùc API naøy cung caáp caùc öùng duïng cho giao dieän vôùi IIS. Coù 2 caùch ñeå caùc API naøy söû duïng: + Caùc phaàn môû roäng CGI: Caùc API naøy cho pheùp ngöôøi söû duïng vieát caùc CGI DLL maø noù ôû trong vuøng boä nhôù gioáng nhö IIS. Ñaây laø söï khaùc bieät töø moät CGI bình thöôøng coù theå thi haønh, maø noù laø moät tieán trình rôøi raïc. Söû duïng caùc phaàn môû roäng naøy laøm taêng khaû naêng thi haønh cuûa server vaø laøm giaûm boä nhôù yeâu caàu. + Boä loïc: Caùc API naøy coù theå ñöôïc söû duïng ñeå vieát caùc DLL maø noù ngaên chaën taát caû khaûng naêng taûi HTTP ñang ñöôïc nhaän bôûi server. Moät öùng duïng coù theå ñöôïc vieát maø noù thöïc hieän neùn, giaûi neùn, maõ hoùa, giaûi maõ hoaëc theâm vaøo caùc xaùc thöïc. + Internet Service Manager: Coâng cuï naøy ñöôïc söû duïng ñeå caáu hình vaø theo doõi taát caû caùc IIS treân moät maïng. Noù söû duïng RPC ñeå caáu hình IIS treân moät maùy khaùc. + Caùc öùng duïng client: IIS hoã trôï caùc giao thöùc HTTP, Gopher, FTP vaø caùc client nhöõng giao thöùc naøy nhö laø caùc trình duyeät : Internet Explorer, Netscape. + Internet Database Connector (IDC): - Vôùi IDC ngöôøi söû duïng coù theå: - Truy caäp ODBC töông thích vôùi caùc cô sôû döõ lieäu. - Taïo trang Web quaûn lyù cô sôû döõ lieäu. - Cheøn, caäp nhaät vaø xoùa thoâng tin cô sôû döõ lieäu do ngöôøi söû duïng muoán nhaäp vaøo töø trang Web. - Thöïc hieän caùc caâu leänh SQL khaùc. 3. IIS WWW Server: WWW laø moät boä taäp hôïp caùc thoâng tin cuûa client vaø server. Döõ lieäu sieâu vaên baûn (hyper text) ñöôïc chia xeû bôûi caùc server ñang chaïy phaàn meàm Web vaø ñöôïc truy caäp bôûi caùc client ñang chay moät phaàn meàm öùng duïng Web goïi laø trình duyeät Web. WWW server cung caáp caùc thoâng tin phaân taùn vaø phaàn meàm, nhöng theo höôùng site hôn laø höôùng thö muïc. Taøi lieäu Web laø moät taøi lieäu sieâu vaên baûn ñöôïc vieát baèng ngoân ngöõ ñaùnh daáu sieâu vaên baûn (HTML), vaø vôùi caùc theû ñaëc bieät ñeå lieân keât ñeán noäi dung caùc taøi lieäu khaùc, chuùng ñöôïc goïi laø sieâu lieân keát (hypelink). Vôùi sieâu lieân keát, xuaát phaùt töø moät trang taøi lieäu ngöôøi söû duïng coù theå ñi ñeán moïi nôi treân theá giôùi ñeå xem nhöõng trang taøi lieäu khaùc chæ baèng böôùc kích chuoät vaøo lieân keát maø trình duyeät theå hieän. WWW ñi keøm vôùi moâ hình maïng client/server vaø söû duïng giao thöùc HTTP giöõa client vaø server. Taøi lieäu ñöôïc chöùa treân nhieàu caùc server töï trò treân Internet vaø ñöôïc truy caäp bôûi HTTP client goïi laø trình duyeät Web. Ñeå truy caäp vaøo taøi nguyeân WWW, client phaûi: + Chaïy moät trình duyeät WWW chaúng haïn nhö Internet Explorer(TM) Masaic(TM) hoaëc Netscape(TM)… Coù vaøi WWW client coù saün vaø chuùng coù theå ñöôïc taûi xuoáng tröïc tieáp töø Internet. + Keát noái ñeán moät WWW server baèng caùch cung caáp moät ñòa chæ URL vaø göûi yeâu caàu HTTP. Ñieån hình nhö client yeâu caàu moät file (trang HTML, hình aûnh…) hoaëc thö muïc ñang hieån thò töø server, client cuõng coù theå göûi moät öùng duïng ñeán server. Server seõ ñaùp öùng vôùi traïng thaùi hoaït ñoäng hoaëc thaønh coâng hoaëc bò loãi vaø döõ lieäu traû veà cho yeâu caàu cuûa client. Sau khi döõ lieäu ñöôïc göûi ñi, keát noái seõ ñoùng laïi vaø khoâng coù phaàn naøo cuûa taøi lieäu ñaõ göûi ñöôïc giöõ laïi treân server. Moãi ñoái töôïng trong moät taøi lieäu HTTP ñoøi hoûi moät keát noái khaùc nhau. WWW vôùi giao thöùc HTTP ñaõ trôû thaønh moät caùnh thoâng duïng ñeå truy caäp taøi lieäu treân Internet. WWW cung caäp moät caùch deã daøng nhaát ñeå truy caäp döõ lieäu treân Internet hoaëc treân maïng Intranet cuûa caùc coâng ty. A) CAÙC TIEÄN LÔÏI CUÛA VIEÄC SÖÛ DUÏNG DÒCH VUÏ WWW: - Trình duyeät WWW hoã trôï nhieàu kieåu döõ lieäu. Moät trình duyeät WWW coù theå töï ñoäng taûi xuoáng vaø hieån thò caùc file vaên baûn, hình aûnh, chaïy video, sound clip vaø khôûi chaïy caùc öùng duïng trôï giuùp cho taát caû caùc loaïi file phoå bieán. Ngöôøi söû duïng khoâng caàn bieát trình duyeät taûi xuoáng hoaëc söû duïng caùc file döõ lieäu ôû xa nhö theá naøo chæ ñôn giaûn laø trình duyeät ñaõ giuùp ta trong vieäc taûi xuoáng vaø hieån thò caùc file. Moät ví duï: Moät WWW client ñang môû moät file aûnh BMP, ngöôøi söû duïng seõ thaáy noù hieån thò ngay laäp töùc noù trong cöûa soå öùng duïng cuûa WWW client. Neáu söû duïng moät öùng duïng khaùc, chaúng haïn nhö FTP seõ chæ taûi file xuoáng vaø löu treân ñóa, ngöôøi söû duïng seõ phaûi chaïy moät öùng duïng khaùc chaúng haïn nhö Paint Bruh ñeå xem noù. - Trình duyeät WWW hoã trôï nhieàu giao thöùc. Trình duyeät WWW khoâng coù giôùi haïn ñeå truy caäp chæ moät kieåu server. Trình duyeät WWW hoã trôï nhieàu giao thöùc ñeå truy caäp file treân moät FTP server, caùc baûng choïn treân Gopher server, Newgroups vaø taøi nguyeân WWW. B) GIÔÙI THIEÄU VEÀ GIAO THÖÙC HTTP: HTTP laø moät giao thöùc ñöôïc söû duïng chuû yeáu treân Internet ngaøy nay. HTTP laø moät giao thöùc ñi tieân phong trong söï phaùt trieån Web. Noù coù moät ñaëc ñieåm chung laø tính khoâng bieân giôùi. Giao thöùc höôùng ñoái töôïng naøy ñöôïc sinh ra töø söï caàn thieát cho moät giao thöùc toaøn caàu ñeå laøm ñôn giaûn vieäc truy caäp vaøo Internet. HTTP laø moät giao thöùc client/server naèm ôû taàng öùng duïng cuûa moâ hình phaân taàn Internet. Baèng vieäc môû roäng nhöõng phöông thöùc hay doøng leänh, ngöôøi söû duïng coù theå söû duïng HTTP cho nhieàu chöùc naêng khaùc nhau, keå caû chöùc naêng quaûn lyù heä thoáng teân server vaø caùc ñoái töôïng phaân taùn. HTTP khoâng ngöøng ñöôïc caûi tieán, daãn ñeán vieäc W3C ñöôïc ñöa ra vaøo naêm 1994 ñaõ phaùt trieån thaønh moät tieâu chuaån chung cho Web. C) HOAÏT ÑOÄNG CUÛA HTTP: Caùc tieán trình xaûy ra khi Client môû moät taøi lieäu HTNL treân moät WWW server: 1/ Keát noái TCP: Maëc ñònh HTTP server seõ laéng nghe ôû coång 80. Trình duyeät löïa choïn moät coång cuïc boä (>1024) vaø thöïc hieän moät keát noái TCP ñeán coång moät server tröôùc khi döõ lieäu ñöôïc göûi. Moät HTTP server coù theå laéng nghe ôû moät coång khaùc, tuy nhieân client caàn phaûi cung caáp soâ thöù töï coång chính xaùc ôû URL ñeå coù theå keát noái. 2/ Yeâu caàu phía Client: Doøng yeâu caàu: Chöùa moät caâu leänh yeâu caàu goïi laø phöông thöùc vaø ñòa chæ URL cuûa ñoái töôïng ñöôïc giaûi quyeát yeâu caàu bôûi phöông thöùc. + Phöông thöùc: Ñöôïc söû duïng ñeå chæ thò cho server thi haønh moät coâng vieäc ñaëc bieät. Haàu heát caùc server bao goàm caû IIS chæ hoã trôï 3 phöông thöùc bôûi vì caùc phöông thöùc khoâng ñöôïc thi haønh bôûi haàu heát caùc trình duyeät. GET: Phöông thöùc naøy chæ thò cho HTTP server göûi ñeán moät ñoái töôïng (caùc Web site, file, hình aûnh…) baèng ñòa chæ URL. Phöông thöùc naøy chæ duøng treân HTTP client. HEAD: Phöông thöùc naøy cuõng gioáng nhö GET, tuy nhieân noù chæ traû veà thoâng tin header cuûa ñoái töôïng chöù khoâng phaûi toaøn boä döõ lieäu. POST: Phöông thöùc naøy ñöôïc söû duïng bôûi HTTP client ñeå göûi moät ñoái töôïng leân server. Ví duï: GET www.microsoft.com/HTTP + Tröôøng tieâu ñeà cuûa goùi tin: Ñaây laø moät taäp caùc tröôøng moâ taû client vaø kieåu döõ lieäu ñöôïc göûi. + Döõ lieäu: Neáu moät client göûi moät döõ lieäu chaúng haïn moät form ñeán moät server, noù seõ naèm trong phieân naøy cuûa yeâu caàu. 3/ Server traû lôøi: WWW server nhaän moät yeâu caàu vaø quaù trình naøy caên cöù treân phöông thöùc yeâu caàu chöùa trong doøng leänh yeâu caàu. Server sau ñoù seõ traû lôøi. Doøng Status : Chæ ra yeâu caàu thaønh coâng hoaëc bò loãi. Message Header Field: Noù cung caáp caùc thoâng tin veà server vaø kieåu döõ lieäu traû veà. Döõ lieäu traû lôøi: Ñaây laø döõ lieäu yeâu caàu ôû daïng bit. 4/ Ñoùng keát noái. D) GIÔÙI THIEÄU VEÀ SECURE SOCKETS LAYER (SSL) SSL cung caáp moät keát noái baûm ñaûm baèng caùch maõ hoùa vaø giaûi maõ döõ lieäu. Moät SSL-enable server gioáng nhö IIS coù theå keát noái vôùi moät SSL-enable client chaúng haïn nhö trình duyeät Internet Explorer. Giao thöùc SSL naèm ôû taàng trình dieãn OSI vaø di chuyeån döõ lieäu töø taàng öùng duïng HTTP ñeán taàng chuyeån vaän TCP. Noù chòu traùch nhieäm cho vieäc chöùng nhaän, maõ hoùa vaø kieåm tra tính toaøn veïn cuûa döõ lieäu. Chöùc naêng chöùng nhaän baûo ñaûm raèng döï lieäu ñöôïc göûi ñeán ñuùng moät server caàn göûi vaø server thì baûo ñaûm. Vieäc maõ hoùa döõ lieäu baûo ñaûm döõ lieäu khoâng theå bò ñoïc bôûi baát kyø moät ngöôøi naøo khaùc ngoaøi server nhaän. Giaûi maõ döõ lieäu baûm ñaûm döõ lieäu khoâng bò söûa ñoåi hoaëc thay theá trong quaù trình truyeàn ñi. Khi moät client keát noái ñeán moät WWW server söû duïng SSL seõ xaûy ra caùc tieán trình sau: Client daønh laáy chöùng nhaän server: Client vaø Server töï giôùi thieäu veà chuùng laãn nhau baèng thoâng ñieäp HELLO vaø trao ñoåi thoâng tin (chöùa caùc phöông thöùc maõ hoùa) ñeå söû duïng, taïi phieân trao ñoåi thoâng tin, chöùng nhaän server (chöùa moät khoaù coâng khai uûa server) vaø döõ lieäu ngaãu nhieân seõ ñöôïc truyeàn ñi. Client xaùc minh server: Client xaùc minh chöùng nhaän server töø moät chöùng thöïc vaø sau ñoù söû duïng noù ñeå göûi moät thoâng ñieäp ñeå xaùc thöïc server. Neáu server khoâng chuyeån laïi vieäc xaùc thöïc laø ñuùng, client seõ caûnh baùo cho ngöôøi söû duïng “server is not who it claims to be “ hoaëc coù theå laø moät “trojan” server. Client/server xaùc nhaän khoùa chöùng thöïc ñeå söû duïng cho phieân naøy: Neáu server traû lôøi laïi thaønh coâng, client vaø server seõ taïo ra moät khoùa bí maät ngaãu nhieân (chæ ra nhö moät Master Key trong ñaëc taû SSL) töø vieäc trao ñoåi döõ lieäu ngaãu nhieân vaø phöông thöùc maõ hoùa ñieån hình (chaúng haïn nhö RSA) Giaûi maõ döõ lieäu vôùi moät khoùa: Taát caû caùc döõ lieäu göûi ngoaøi keânh SSL thì ñöôïc maõ hoùa vôùi moät khoùa bí maät. 4. Toå chöùc Web site: Caùc Web site phaûi töï nhaäp moät mình coù nghóa laø noù töï hoã trôï chính noù. Moãi Web site coù theå di chuyeån deán moät maùy khaùc ñeå caân baèng vieäc taûi xuoáng hoaëc chæ laø cho muïc ñích löu thoâng treân maïng. Ñeå laøm ñöôïc vieäc naøy, chuùng phaûi töï hoã trôï mình, töï coù caùc baûo maät rieâng vaø caùc phaïm vi öùng duïng rieâng. Neáu ngöôøi söû duïng laø moät nhaø cung caáp Internet, hoï seõ muoán thieát keá, di chuyeån vaø coù ngöôøi söû duïng caäp nhaät caùc Web site maø khoâng quaáy raày ñeán caùc site khaùc treân cuøng moät maùy. Giao thöùc HTTP söû duïng caùc URL ñeå yeâu caàu caùc file töø Web server. Töø khi haàu heát caùc file ñeàu chöùa trong heä thoáng file, IIS caàn chuyeån moät URL sang moät teân ñaày ñuû cuûa file, IIS laøm coâng vieäc naøy cho moãi yeâu caàu. Tuy nhieân, noù seõ ñöa leân ngöôøi quaûn trò ñeå caáu hình server maø URL aùnh xaï ñeán thö muïc ñoù. Ñeå thieát keá caáu truùc heä thoáng file treân moät maùy maø noù host nhieàu Web site, ngöôøi söû duïng caàn bieát söï khaùc nhau giöõa thö muïc goác (Home Dir), thö muïc goác aûo (Virtual Root) vaø thö muïc con (Sub Dir). Ngöôøi söû duïng cuõng caàn bieát khi naøo thì phaûi söû duïng chuùng. Home Dir: Moät URL chöùa moät teân mieàn ñang yeâu caàu thö muïc chuû. Ví duï, URL döôùi ñaây yeâu caàu moät file maëc ñònh trong thö muïc chuû: Coâng vieäc cuûa ngöôøi quaûn trò caàn phaûi laøm laø giuùp ñôõ Web server aùnh xaï URL ñeán thö muïc chuû. Trong ví duï treân, thö muïc chuû cuûa Web site naøy seõ ñöôïc aùnh xaï ñeán: C:\inetpub\wwwroot Sub Dir: Sub Dir laø moät thö muïc keá thöøa moät aùnh xaï URL töø moät caáu truùc heä thoáng file. Ví duï, neáu thö muïc naøy ñaõ toàn taïi: C:\intetpub\wwwroot\sale3 Sau ñoù, URL naøy cuõng ñaõ toàn taïi: Thö muïc con khoâng caàn ñöôïc ñònh nghóa ñeán Web server bôûi ngöôøi quaûn trò heä thoáng. Bôûi vì chæ caàn taïo ra moät thö muïc cha baèng Explorer laø thö muïc seõ ñöôïc taïo, khoâng caàn phaûi ñieàu chænh trong caáu hình IIS. Virtual Root: Virtual Root laø moät thö muïc con cuûa moät URL maø noù ñöôïc aùnh xaï ñeán caùc thö muïc trong heä thoáng file maø khoâng thöøa keá söï toàn taïi cuûa caùc heä thoáng file naøy. Ví duï: Neáu ngöôøi söû duïng muoán site cuûa hoï chöùa trong moät URL ñeán: C:\inetpub\maketing\website\extenal Thö muïc aûo seõ taïo ra moät Web site hieån thò nhö theå noù laø moät caáu truùc thö muïc khaùc hôn hieän taïi noù coù trong heä thoáng file. Khi naøo thì caàn söû duïng thö muïc aûo: Thö muïc aûo ñöôïc söû duïng khi thö muïc con khoâng ñöôïc söû duïng. Bôûi vì thö muïc con khoâng gioáng nhö moät Web server vaø chuùng khoâng coù taát caû chöùc naêng cuûa moät thö muïc aûo, chuùng coù theå ñöôïc duøng ôû moïi nôi. Theâm vaøo ñoù, thö muï con coøn toå chöùc taát caû caùc file chöùa trong moät nôi trung taâm cho caùc Web site. Caùc thö muïc aûo döôïc duøng khi taát caû caùc file trong thö muïc aûo khoâng theå chöùa ñöôïc treân cuøng moät oå ñóa. Ví duï: Neáu ngöôøi söû duïng coù moät Web site maø lôùn hôn 2 Gb hoï khoâng theå chöùa taát caû chuùng treân cuøng moät oå ñóa. Trong tröôøng hôïp naøy hoï seõ caàn ñeán caùc Web site phaân taùn trong nhieàu thö muïc aûo treân caùc thö muïc ôû moãi oå ñóa. Ñeå laøm ñöôïc ngöôøi söû duïng phaûi chia Web site cuûa hoï leân nhieàu ñóa. Veà maët lyù thuyeát, caùc truy caäp ngaãu nhieân ngang qua nhieàu oå ñóa seõ nhanh hôn caùc truy caäp treân cuøng moät ñóa. Neáu ngöôøi söû duïng coù nhieàu Web site vaø ñang chia xeû thoâng tin, caùc thö muïc aûo coù theå söû duïng ñeå hoaøn thaønh coâng vieäc naøy. Ví duï, neáu phaûi chia xeû hình aûnh, caû hai Web site cuøng coù moät thö muïc aûo goïi laø Graphic maø noù aùnh xaï tôùi cuøng moät vò trí treân oå ñóa. Ñieàu naøy seõ khoâng laøm ñöôïc vôùi thö muïc con. Söï caäp nhaät caùc file trong thö muïc Graphic seõ aûnh höôûng ñeán caû hai site. 5. Caùc kieåu cuûa baûng thuoäc tính cuûa dòch vuï WWW Coù 3 kieåu (hoaëc coøn goïi laø lôùp) khaùc nhau cuûa baûng thuoäc tính: Master, Default vaø File. Ngöôøi söû duïng coù theå ñònh caáu hình rieâng cho töøng site cuûa mình moät trong 3 kieåu treân. Nhöng moïi söï thay ñoåi ñeàu coù raøng buoäc vôùi nhau, noù seõ aûnh höôûng ñeán caùc site con vaø caùc file. Caùc loaïi baûng khaùc nhau cuûa baûng thuoäc tính seõ coù ích veà khía caïnh phaân caáp. Vôùi baûng thuoäc tính Master naèm ôû phaân caáp cao nhaát vaø baûng thuoäc tính File naèm ôû caáp thaáp nhaát. Master: Caùc baûng thuoäc tính Master quyeát ñònh caùc thuoäc tính maëc ñònh cuûa caùc Web site aûo ñaõ taïo vôùi söï thieát laäp cuûa IIS, maø caùc Web site naøy quyeát ñònh caùc thuoäc tính cuûa caùc file ñaõ ñöôïc taïo ra trong moãi Web site. Trong suoát quaù trình caøi ñaët, IIS seõ naïp caùc thuoäc tính maëc ñònh cho caùc baûng thuoäc tính Master. Moãi site aûo maø ngöôøi söû duïng taïo ra seõ keá thöøa vieäc thieát laäp naøy. Neáu hoï thay ñoåi thieát laäp ban ñaàu cuûa baûng thuoäc tính Master, caùc Web site aûo con seõ keá thöøa caùc thieát laäp môùi naøy nhöng caùc Web site aûo taïo tröôùc ñoù seõ giöõ nguyeân. Default: Quaù trình caøi ñaët seõ taïo ra caùc Web site vôùi caùc thuoäc tính maëc ñònh cuûa noù. Nhöõng caùc file naøo maø ñöôïc taïo ra vôùi Web site maëc ñònh seõ keá thöøa caùc thieát laäp naøy. File: Caùc file taïo ra trong thö muïc aûo seõ keá thöøa caùc thieát laäp cuûa thö muïc aûo ñoù, öùng vôùi caùc file ñöôïc taïo ra trong caùc trang Web maëc ñònh seõ keá thöøa caùc baûng thuoäc tính cuûa Web site ñoù. Sau khi moät file ñöôïc taïo ra thì caùc thuoäc tính ñöôïc caáu hình ôû möùc file. 6. Baûng thuoäc tính WWW: Dòch vuï WWW treân IIS coù theå caáu hình 9 baûng thuoäc tính sau: Web Site: Söû duïng baûng thuoäc tính Web Site ñeå thieát laäp söï nhaän bieát Web site, chæ roõ soá keát noái cho pheùp vaø cho pheùp hoaëc caám truy caäp vaøo moät Web site. Operators: Söû duïng baûng thuoäc tính Operators ñeå ñieàu khieån caùc taøi khoaûn ngöôøi duøng naøo coù quyeàn quaûn trò caùc Web site cuûa ngöôøi söû duïng. Performance: Söû duïng baûng thuoäc tính Performance ñeå ñieàu chænh cho thaät toát söï thi haønh cuûa caùc Web site. ISAPI filter: Söû duïng baûng thuoäc tính ISAPI filter chöùa caùc boä loïc ISAPI. Ngöôøi söû duïng coù theå söû duïng ISAPI ñeå chaïy caùc öùng duïng töø xa. Yeâu caàu moät URL maø noù aùnh xaï ñeán moät boä loïc ñang hoaït ñoäng taïi caùc öùng duïng ñoù. Coù theå söû duïng caùc thoâng soâ caøi ñaët cuûa noù ñeå aùnh xaï moät teân file ñeán boä loïc cho pheùp treân moät Web server. Home Direcory: Söû duïng baûng thuoäc tính Home Direcory ñeå thay ñoåi thö muïc chöùa caùc Web site vaø ñieàu chænh caùc thuoäc tính cuûa noù. Document: Söû duïng baûng thuoäc tính Document ñeå chæ ñònh moät taøi lieäu maëc ñònh vaø gaùn caùc chöùc naêng maëc ñònh cho Web site. Directory Security: Söû duïng baûng thuoäc tính Directory Security ñeå caáu hình caùc tính naêng baûo maät cho Web server. HTTP Header: Söû duïng baûng thuoäc tính HTTP Header ñeå thieát laäp caùc gia trò traû veà cuûa trình duyeät trong phaàn header cuûa moät trang HTML. Custom Error: Söû duïng baûng thuoäc tính Custom Error ñeå lieät keâ caùc thoâng baùo traû veà trình duyeät daønh cho caùc loãi HTTP. 7. Caáu hình WWW - Chia xeû thö muïc, file: Baûng thuoäc tính cuûa thö muïc WWW trong Internet Service Manager (ISM) cho pheùp ngöôøi quaûn trò chia xeû caùc thö muïc vaø file cho WWW client. Nhöõng thö muïc naøy laø nhöõng thö muïc cuï boä töø phaân vuøng FAT/NTFS hoaëc laø caùc thö muïc töø nhöõng server khaùc maø IIS coù theå truy caäp ñöôïc. WWW chia xeû keát noái maëc ñònh: Khi maø moät client chæ cung teân server ngay taïi ñòa chæ URL goïi laø thö muïc chuû. Ví duï, neáu moät client môû moät ñòa chæ: dòch vuï IIS traû veà moät taøi lieäu maëc ñònh trong thö muïc chuû treân www.microsofts server. Caùc thö muïc chia xeû khaùc vôi thö muïc chuû ñöôïc tham chieáu ñeán thö muïc aûo. - Söû duïng ISM ñeå chia xeû thö muïc: Coù hai hoäp thoaïi hieän ra cuøng vôùi ISM khi ta caáu hình vieäc chia xe thö muïc WWW. Theû Directory, WWW hieän thò danh saùch taát caû caùc caáu hình thö muïc aûo WWW. Noù cuõng cho pheùp ngöôøi söû duïng thieát laäp caùc thuoäc tính keàm theo cho taát caû caùc thö muïc chia xeû. + Taøi lieäu maëc ñònh: File naøy ñöôïc traû veà khi ngöôøi söû duïng môû moät thö muïc vaø khoâng chæ ñònh teân file. Ñieån hình cho file naøy laø caùc file teân default.htm hoaëc index.htm. + Thö muïc ñang duyeät: Neáu ngöôøi söû duïng môû moät thö muïc maø khoâng chöùa moät taøi lieäu maëc ñònh, server seõ traû veà moät danh saùch caùc file trong thö muïc. + Baûo maät: IIS coù nhieàu chöùc naêng baûo maät ñeå giöõ gìn server vaø döõ lieäu cuûa ngöôøi söû duïng khoûi nhöõng cuoäc xaâm nhaäp baát hôïp phaùp vaø hacker. IIS döïa vaøo söï thieát laäp cuûa Windows NT (TM) vaø moät heä thoáng chöùng nhaän C2. Giöõ an toaøn cho IIS server laø moät söï keát hôïp cuûa vieäc thieát laäp baûo maät cho Windows NT vaø caùc chöùng naêng baûo maät cuûa dòch vuï IIS. Theâm vaøo ñoù neáu server keát noái vôùi Internet, moät boä choïn keânh (rooter) hoaëc böùc töôøng löûa coù theå ñöôïc thieát laäp ñeå cung caáp theâm ñoä an toaøn. 8. Thö muïc aûo: Thö muïc aûo laø moät thö muïc phi vaät lyù chöùa trong thö muïc chuû cuûa dòch vuï IIS (WWW hoaëc FTP) nhöng noù xuaát hieän trong suoát ñoái vôùi ngöôøi söû duïng vaøo caùc Web site naøy. Thö muïc aûo taêng khaû naêng linh hoaït cho vieäc ngöôøi söû duïng quyeát ñònh löu tröõ file ôû ñaâu treân server cuûa hoï. Baèng caùch söû duïng caùc thö muïc aûo ñeå coù theå caäp nhaät vaø truy caäp deã daøng nhaát. Noù cuõng cho pheùp taêng theâm dung löôïng löu tröõ cho Web site maø khoâng caàn phaûi taét server. Thö muïc aûo coù theá thieát laäp cho caû dòch vuï WWW laãn FTP chaïy treân IIS. Thö muïc aûo coù theå taïo ra caùc thö muïc ñònh vò ôû: - Treân cuøng moät ñóa: Nhö laø caùc thö muïc chuû WWWroot hoaëc FTProot. - Moät ñóa ôû moät maùy khaùc trong maïng cuïc boä. - ÔÛ moät ñóa cuûa maùy khaùc treân maïng, maø maùy naøy phaûi cuøng teân mieàn vôùi maùy coù dòch vuï IIS. a) Thö muïc aûo cuïc boä: Ngöôøi söû duïng coù theå taïo ra caùc thö muïc aûo cuïc boä cho caùc thö muïc ñöôïc löu tröõ treân baát kyø ñóa naøo treân moät maùy tính ñöôïc caøi ñaët IIS. Khi caáu hình moäït thö muïc aûo cuïc boä, ngöôøi söû duïng phaûi caøi ñaët moät bieät danh cho thö muïc. Bieät danh naøy coù theå laø teân thö muïc hoaëc moät teân baát kyø naøo khaùc maø noù nhaän dieän moät Web site ñeán ngöôøi söû duïng. Hoï cuõng phaûi cung caáp moät ñöôøng daãn ñaày ñuû cho thö muïc aûo. b) Thö muïc aûo töø xa: Söû duïng thö muïc aûo töø xa cho caùc thö muïc ñaõ ñöôïc caøi ñaët treân caùc maùy khaùc vôùi teân mieàn cuûa maùy ñaõ caøi ñaët IIS. Cuõng nhö ñoái vôùi caùc thö muïc aûo cuïc boä, khi ngöôøi söû duïng caáu hình moät thö muïc aûo töø xa, hoï ñöôïc yeâu caàu taïo moät bieät danh cho thö muïc vaø phaûi cung caáp moät moät ñia chæ cho thö muïc tuaân theo quy öôùc UNC (quy öôùc ñaët teân ñòa chæ toaøn cuïc). Ñeå truy caäp thö muïc vôùi moät UNC, phaûi nhaäp vaøo moät teân cuûa ngöôøi söû duïng vaø password phuø hôïp. Teân ngöôøi söû duïng vaø password seõ ñöôïc söû duïng bôûi ngöôøi truy caäp vaøo döõ lieäu chöùa trong thö muïc aûo. Chuù yù: Chaéc chaén raèng taøi khoaûn cuûa ngöôøi söû duïng maø ñaõ thieát laäp seõ cho pheùp truy caäp Internet ñeán moät thö muïc aûo töø xa maø chæ cung caáp moät quyeàn toái thieåu cho vieäc söû duïng site naøy. Ñöøng neân duøng taøi khoaûn cuûa nhaø quaûn trò ñeå truy caäp caùc thö muïc aûo. c) Thö muïc aûo töø xa vaø FrontPage: Coâng cuï quaûn lyù vaø soaïn thaûo FrontPage töï ñoäng quaûn lyù vieäc söû duïng caùc thö muïc aûo. Khi ñöôïc caøi ñaët, FrontPage seõ khôûi taïo caùc thö muïc aûo cho caùc thö muïc chöùa caùc phaàn môû roäng coù theå thöïc thi. Theâm vaøo ñoù, ban coù theå cho pheùp caùc phaàn môû roäng cuûa file chuyeån thaønh caùc ñoái töôïng coù theå thöïc thi ñöôïc baèng caùch ñaùnh daáu vaøo caùc thö muïc chöùa chuùng, chaúng haïn nhö caùc ñoái töôïng môû roäng sau: Active Server Pages (.ASP) Caùc file Internet database connector (.idc) CGI Phaàn môû roäng ISAPI (.dll) Perl Script (.pl) Chuù yù: bôûi vì FrontPage khoâng hoã trôï ñoái vôùi caùc vuøng coù noäi dung khoâng lieàn nhau vì vaäy khoâng theå duøng thö muïc aûo ñeå troän caùc vuøng coù noäi dung khoâng lieàn nhau trong FrontPage. 9. Server aûo: Nhieàu teân mieàn coù theå ñöôïc host leân moät maùy ñôn ñang chaïy IIS baèng chaùch söû duïng server aûo. Vôùi nhieàu server aûo ngöôøi söû duïng coù theå host nhieàu site Web vaø site FTP leân moät maùy ñôn ñang chaïy IIS, ñieàu naøy coù nghóa laø khoâng caàn caáp moät maùy vaø moät phaàn meàm troïn goùi cho moãi site naøy. Ngöôøi söû duïng ñôn giaûn chæ caàn moät ñòa chæ IP duy nhaát cho moãi teân mieàn ñöôïc phaân coâng ñeán server vaø baèng caùch söû duïng Host Header ngöôøi söû duïng coù theå söû duïng moät ñòa chæ IP cho nhieàu teân mieàn. Tuy nhieân chæ site WWW môùi coù theå söû duïng Host Header. Server aûo cuõng taäp trung hoùa vieäc aùp duïng vaø ñôn giaûn hoùa vieäc naâng caáp caùc phaàn meàm server. Vieäc host nhieàu server aûo leân cuøng moät maùy coù theå giaûm bôùt söï thi haønh cuûa phía server noùi chung vaø server aûo söû duïng Host Header ñoøi hoûi moät giao thöùc HTTP phieân baûn 1 töông hôïp vôùi trình duyeät Web. Host Header: Khaû naêng cuûa caùc Host Header cuûa HTTP phieân baûn 1 cho pheùp ngöôøi söû duïng keát hôïp nhieàu teân cuûa maùy Host vôùi chæ moät ñòa chæ IP. IIS söû duïng thoâng tin Host Header ñeå ñoåi ñòa chæ caùc teân khaùc nhau cuûa server aûo. Ñeå söû duïng Host Header ngöôøi söû duïng phaûi chuyeån ñoåi töø Host name thaønh ñòa chæ IP söû duïng caû heä thoáng teân mieàn (DNS) server hoaëc caùc file cuûa caùc Host. Chöùc naêng cuûa file host laø hoã trôï söï chuyeån ñoåi töø caùc teân Host thaønh caùc ñòa chæ IP. Chuù yù: IIS cung caáp caùc trình duyeät Web khoâng töông thích vôùi moät danh saùch caùc server töông thích vôùi ñòa chæ IP cho tröôùc. Khi ngöôøi söû duïng choïn moät server, moät cookie môùi seõ ñöôïc thay theá treân oå ñóa cuûa ngöôøi söû duïng vaø cookie naøy seõ ñöôïc söû duïng cho nhöõng laàn truy caäp sau ñeán server aûo. 10. IIS FTP Server: FTP laø moät giao thöùc ñöôïc duøng ñeå truyeàn nhaän file giöõa hai maùy treân maïng Internet. FTP laø moät giao thöùc ra ñôøi sôùm nhaát ñöôïc söû duïng treân maïng TCP/IP vaø maïng Internet. Maëc duø WWW ñaõ thay theá haàu heát caùc chöùc naêng cuûa FTP, FTP vaãn coøn ñöôïc söû duïng ñeå cheùp moät file töø moät client ñeán moät server treân Internet. Khoâng nhö HTTP, FTP söû duïng 2 coång, moät ñeå truyeàn vaø moät ñeå nhaän file. Nhö vaäy FTP vaãn coøn coù hieäu löïc hôn HTTP cho nhöõng taùc vuï ñaëc bieät cuûa vieäc truyeàn file. Ñeå söû duïng FTP truyeàn file giöõa hai maùy, caû hai maùy ñeàu phaûi coù vai troø rieâng, moät laø FTP Client, moät laø FTP Server. FTP Client ra leänh cho server taûi xuoáng hoaëc ñöa leân moät file cuõng nhö taïo vaø thay ñoåi caùc thö muïc. FTP söû duïng giao thöùc TCP nhö moät phöông tieän cho taát caû caùc keát noái vaø döõ lieäu trao ñoåi giöõa client vaø server. TCP laø moät phöông thöùc keát noái coù ñònh höôùng, coù nghóa laø coù moät phieân keát noái ñöôïc thaønh laäp giöõa client vaø server tröôùc khi döõ lieäu ñöôïc truyeàn ñi. Söï keát noái coøn laïi naøy hoaït ñoäng trong toaøn boä phieân hoaït ñoäng cuûa FTP. Giao thöùc coù ñònh höôùng naøy raát noåi tieáng veà ñoä tin caäy vaø söï phuïc hoài loãi öùng vôùi caùc ñaëc ñieåm sau: - Ñieàu khieån luoàng: Bôûi vì caùc client vaø server ñeàu tham gia trong vieäc truyeàn caùc goùi tin vì vaäy caùc vaán ñeà veà vieäc truyeàn tin nhö laø caùc goùi tin laøm traøn boä nhôù vaø laïc maát caùc goùi tin laø khoâng theå xaûy ra. - Söï chöùng nhaän: Maùy tính göûi caùc goùi döõ lieäu vaø mong chôø moät tín hieäu chöùng nhaän töø caùc maùy tính nhaän. Söï chöùng nhaän naøy kieåm tra xem maùy ñoù ñaõ nhaän ñöôïc goùi tin hay chöa. - Söï truyeàn laïi: Neáu vieäc truyeàn ñi cuûa maùy tính khoâng nhaän ñöôïc moät tín hieäu ACK öùng vôùi moät khoaûng thôøi gian ñaõ ñònh tröôùc, noù seõ giaû ñònh raèng goùi tin ñoù ñaõ bò maát hoaëc bò thaát laïc thì sau ñoù noù seõ truyeàn laïi goùi tin ñoù. Tính tuaàn töï: Taát caû caùc goùi tin seõ ñöôïc ñaùnh soá vaø göûi cuøng luùc, vì theá maùy nhaän seõ bieát caùch toå chöùc döõ lieäu nhaän ñöôïc. - Checksum: Taát caû caùc goùi tin ñöôïc chöùa trong moät checksum ñeå ñaûm baûo tính toaøn veïn cuûa döõ lieäu. Neáu döõ lieäu bò thaát laïc ôû moät nôi naøo ñoù trong suoát quaù trình truyeàn, checksum seõ chæ ra raèng döõ lieäu nhaän ñöôïc khoâng gioáng vôùi döõ lieäu göûi. a) Caùc thuoäc tính cuûa FTP treân IIS: Moãi site FTP maø ngöôøi söû duïng taïo ra ñeàu coù moät baûng thuoäc tính rieâng cuûa noù. Nhöõng caøi ñaët chung hoaëc caùc thuoäc tính cho moãi site ñöôïc hieån thò trong caùc baûng thuoäc tính naøy. Dòch vuï FTP söû duïng 5 baûng thuoäc tính ñeå caáu hình cho caùc dòch vuï FTP, cuï theå nhö sau: FTP Site. (Site FTP) Security Account. (Baûo maät taøi khoaûn) Messages. (Thoâng baùo) Home Directory. (Thö muïc goác) Directory Secuity. (Baûo maät thö muïc) Trong suoát quaù trình caøi ñaët, IIS gaùn caùc giaù trò maëc ñònh cho vieäc thieát laäp treân caùc baûng thuoäc tính khaùc nhau. Ngöôøi söû duïng coù theå duøng chung caùc taøi lieäu treân site FTP cuûa hoï maø khoâng phaûi thay ñoåi caùc thieát laäp maëc ñònh naøy nhöng cuõng deã daøng trong vieäc thay ñoåi caùc thuoäc tính ñöôïc thieát laäp theo yù thích. Moãi site FTP ñöôïc taïo ra vaø moãi file öùng vôùi moãi site FTP ñeàu coù moät thuoäc tính rieâng maø ngöôøi söû duïng coù theå ñieàu chænh ñeå tuyø bieán nhöõng caáu hình thieát laäp teân töøng site moät hoaëc töøng file moät. Hoï cuõng coù theå ñieàu chænh vieäc thieát laäp caùc thuoäc tính maëc ñònh caùc site vaø caùc file con ñaõ thieát laäp tuyø bieán tröôùc ñoù. Coù 3 kieåu (hoaëc caùc lôùp) cuûa caùc baûng thuoäc tính FTP vôùi IIS vaø chuùng töông töï nhö 3 lôùp cuûa baûng thuoäc duøng treân caùc site WWW. Caùc lôùp thuoäc tính FTP goàm: Master, Dedault vaø File. Ngöôøi söû duïng coù theå tuyø bieán caáu hình cuûa 3 kieåu thuoäc tính naøy cuûa baûng thuoäc tính nhöng khi thay ñoåi caáu hình ôû moät nôi naøo ñoù thì noù cuõng aûnh höôûng ñeán caùc site vaø caùc file con maø hoï ñaõ taïo. b) Baûo maät FTP Caùc ñaëc tröng baûo maät cuûa dòch vuï FTP cuõng gioáng nhö dòch vuï WWW. Khaùc nhau cô baûn ôû choã khoâng coù giao thöùc cho vieäc thieát laäp baûo maät döõ lieäu cuûa FTP gioáng nhö HTTP vaø SSL - Truy caäp phía server: Dòch vuï i coù theå ñöôïc caáu hình treân trang thuoäc tính Security Account cho caùc keát noái ñeán client vaø nhöõng ñòa chæ IP ñaëc bieät. Ñaây laø moät caùch toát ñeå ngaên chaën nhöõng ngöôøi söû duïng khoâng mong muoán truy caäp vaøo server. - Truy caäp phía ngöôøi duøng: Daønh cho caùc server vôùi caùc file chung, caùc client thöôøng keát noái döôùi moät teân ngöôøi duøng aån danh. Neáu dòch vuï FTP ñöôïc caáu hình cho pheùp ñieàu naøy trong thuoäc tính Security Account, noù seõ aùnh xaï teân ngöôøi duøng aån danh ñeán moät caáu hình taøi khoaûn cuûa ngöôøi söû duïng Windows NT. Taøi khoaûn maëc ñònh taïo ra laø IUSR_computername vaø ñöôïc söû duïng bôûi IIS. Neáu cho pheùp söû duïng teân ngöôøi duøng aån danh bò taét. Ngöôøi söû duïng seõ ñöôïc cung caáp moät teân ngöôøi duøng chính xaùc. Teân ngöôøi duøng naøy phaûi ñuùng laø moât taøi khoaûn Windows NT ôû FTP Server hoaëc trong moät mieàn maø FTP Server cung caáp. - Truy caäp taøi nguyeân FTP: Dòch vuï FTP coù theå caáu hình treân trang thuoäc tính Security Directory ñeå cho pheùp Client chæ coù theå ñoïc hoaëc ghi leân file trong moät thö muïc ñöôïc chia xeû. - Truy caäp File: Neáu caùc yeâu caàu ñaõ qua caùc kieåm tra baûo maät tröôùc ñoù, dòch vuï FTP seõ ñöa caùc yeâu caàu naøy ñeán heâ thoáng file ñeå ñaït ñöôïc taøi nguyeân. Dòch vuï FTP ñoùng vai troø cuûa ngöôøi söû duïng FTP Client khi taïo ra caùc yeâu caàu. Neáu heä thoáng file töø choái truy caäp ñeán taøi nguyeân, FTP server seõ traû veà khoaûng 550 teân file “Access Denied” (töø choái truy caäp). Caùc truy caäp file ñöôïc caáu hình baèng caùch söû duïng File Manager hoaëc caùc thuoäc tính file trong Explorer. V. APACHE WEB SERVER: 1. Giôùi thieäu veà Apache Web Server: Apache laø moät phaàn meàm Web server ñöôïc cung caáp bôûi taäp ñoaøn Apache Group. Ñaây laø moät Web server ñöôïc hoã trôï ñeå chaïy chuû yeáu treân UNIX va LINUX vaø raát ñöôïc phoå bieán bôûi tính chaët cheõ, uyeån chuyeån vaø linh hoaït. Hieän nay Apache laø moät Web server ñang quaûn lyù hôn 50% soá Web site ñang coù treân theá giôùi. 2. Toå chöùc Web site: Tröôùc khi baét ñaàu xaây döïng moät Web site, ngöôøi söû duïng coù theå muoán tìm hieåu toå chöùc cuûa noù. Khi coù nhieàu hôn caùc khaû naêng suy nghó veà caùc caùch toå chöùc caáu truùc moät Web site, ngöôøi söû duïng coù theå suy nghó veà noù nhö moät vieãn caûnh ñi laïi. Trong nhöõng suy nghó theâm cuûa noù veà khía caïnh naøy, seõ naûy sinh ra nhöõng caâu hoûi: Ngöôøi söû duïng coù theå laøm gì ñeå deã daøng giöõ gìn Web site cuûa mình? Caùc quy öôùc naøo seõ laøm ñôn giaûn Web site cuûa hoï? 3. Caøi ñaët Apache treân Windows: Chaïy file Apache.msi ñaõ taûi Apache veà, ngöôøi söû duïng seõ phaûi nhaäp caùc thoâng tin sau: - Coù hay khoâng vieäc chaïy Apache cho taát caû moïi ngöôøi söû duïng (nhö moät dòch vuï) hoaëc caøi ñaët Apache ñeå chaïy treân moät cöûa soå giao tieáp khi choïn shortcut khôûi ñoäng Apache. - Teân Server, teân mieàn vaø taøi khoaûn email cuûa ngöôøi quaûn trò. - Teân thö muïc ñeå caøi Apache vaøo (maëc ñònh laø C:\Program Files\Apache Group\Apache maëc duø ngöôøi söû duïng coù theå thay ñoåi sang moät thö muïc baát kyø maø hoï muoán) - Kieåu caøi ñaët. Chöùc naêng “Complete” seõ caøi ñaët moïi thöù, bao goàm caû maõ nguoàn neáu ngöôøi söû duïng ñaõ taûi veà goùi –srm.msi. Choïn caøi ñaët “Custom” neáu khoâng muoán choïn caøi ñaët taøi lieäu hoaëc maõ nguoàn töø goùi caøi ñaët naøy. Trong suoát quaù trình caøi ñaët Apache seõ caáu hình caùc file trong thö muïc conf cho thö muïc löïa choïn caøi ñaët cuûa ngöôøi söû duïng, tuy nhieân neáu baát kyø nhöõng file naøo trong thö muïc naøy ñaõ toàn taïi chuùng seõ khoâng bò cheùp choàng leân. Sau khi caøi ñaët xong, ngöôøi söû duïng seõ phaûi söûa ñoåi caùc file caáu hình trong thö muïc conf. Nhöõng file naøy seõ ñöôïc caáu hình trong suoát quaù trình caøi ñaët ñeå saün saøng cho Apache chaïy töø thö muïc maø hoï ñaõ caøi ñaët vaøo vôùi caùc taøi lieäu phuïc vuï töø thö muïc con htdocs. Coù raát nhieàu chöùc naêng tröôùc khi baét ñaàu thöïc söï söû duïng Apache. Tuy nhieân, ñeå vieäc khôûi ñoäng nhanh choùng caùc file naøy neân laøm vieäc theo caùc caøi ñaët maëc ñònh. Neáu ngöôøi söû duïng thaùo caøi ñaët Apache khoûi heä thoáng, caùc caáu hình vaø caùc file log seõ khoâng ñöôïc gôõ ra. Ngöôøi söû duïng phaûi seõ caàn phaûi xoùa caùc caây thö muïc ñaõ caøi ñaët (maëc ñònh laø C:\Program File\Apache Group\Apache) neáu ngöôøi söû duïng khoâng muoán giöõ caùc caáu hình cuûa hoï vaø caùc file Web khaùc. Töø khi fie httpd.conf ñaõ ñöôïc caáu hình ñeå söû duïng Apache, ngöôøi söû duïng cuõng phaûi phaûi gôõ boû noù vaø caùc file khaùc maø ñaõ ñöôïc taïo cuõng nhö baát kyø caùc file log naøo maø Apache ñaõ taïo. 4. Chaïy Apache treân Windows: a) Chaïy nhö moät dòch vuï: Ñaây laø caùc toát nhaát neáu muoán Apache töï ñoäng khôûi ñoäng khi khôûi ñoäng maùy vaø giöõ Apache vaãn chaïy khi ñaõ log-off. Ñeå khôûi ñoäng Apache nhö moät dòch vuï, tröôùc heát caàn phaûi caøi ñaët Apache nhö moät dòch vuï. Nhieàu dòch vuï Apache coù theå ñöôïc caøi ñaët vôùi moãi teân vaø caáu hình khaùc nhau. Ñeå caøi ñaët moät dòch vuï Apache maëc ñònh coù teân “Apache”. Choïn “Install a Sevice for All User” khi baét ñaàu bung goùi caøi ñaët Apache. Sau khi caøi xong coù theå khôûi ñoäng dòch vuï Apache baèng caùch môû cöûa soå Service, choïn Apache, nhaép chuoät vaøo Start, Apache seõ baét ñaàu chaïy, aån treân maøn hình. Sau ñoù coù theå ngöøng Apache baèng caùch nhaép chuoät vaøo Stop. Coù moät löïa choïn khaùc ñeå söû duïng dòch vuï Apache töø caùc doøng leänh sau taïi cöûa soå giao tieáp: Net start Apache Net Stop Apache Sau khi khôûi ñoäng Apache, ngöôøi söû duïng coù theå kieåm tra noù baèng caùch söû duïng thuû tuïc nhö sau ñeå chaïy treân cöûa soå giao tieáp: Apache –n “service name” Ñeå chaéc chaén vieäc ñang söû duïng caùc dòch vuï ñöôïc caáu hình maëc ñònh cuûa Apache. Coù nhieàu dòch vuï khaùc cuûa Apache ñöôïc caøi ñaët vaø chaïy nhö moät dòch vuï. Caùc doøng leänh sau seõ khôûi ñoäng, khôûi ñoäng laïi, Taét vaø Ngöøng caùc dòch vuï: - Apache –n “service name” –k start. - Apache –n “service name” –k restart. - Apache –n “service name” –k shutdown. - Apache –n “service name” –k stop. Kyù hieäu chuyeån ñaûo –n ñeå chæ caùc dòch vuï Apache maëc ñònh, coøn khi khoâng coù –n maø chæ coù –k doøng leänh seõ chæ ñònh raèng Apache ñang chaïy treân moät cöûa soå giao tieáp, tröôøng hôïp naøy chæ yeâu caàu ñoái vôùi caùc teân dòch vuï cuûa Apache coù chöùa khoaûng traéng. Ngoaøi ra ñeå Stop Apache treân cöûa soå giao tieáp coøn coù theå aán toå hôïp phím Ctrl + C hoaëc Ctrl + Break. b) Chaïy Apache treân cöûa soå giao tieáp: Moät khi ñoùng cöûa soå giao tieáp seõ keát thuùc vieäc chaïy Apache. Taïi bieåu töôïng Start menu vaø trình Windows NT Service Manager coù theå cung caáp moät giao dieän ñôn giaûn ñeå quaûn trò Apache. Nhöng deã daøng nhaát ñeå laøm vieäc laø töø doøng leänh. Khi laøm vieäc vôùi Apache ñieàu quan troïng nhaát laø vieäc tìm caùc file caáu hình. Ngöôøi söû duïng coù theå chæ ra file caáu hình baèng hai caùch (duøng caùc doøng leänh): * -f chæ ñeán ñöôøng daãn moät file caáu hình: apache –f c:\myserver\conf\my.conf apache –f test\test.conf * -n ñöôøng daãn ñeán moät file caáu hình cuûa moät dòch vuï Apache ñaõ ñöôïc caøi ñaët. apache –n “service name” Trong caùc tröôøng hôïp treân, Server Root phaûi ñöôïc thieát laäp trong file caáu hình. Neáu ngöôøi söû duïng chæ ra moät teân file caáu hình vôùi –n vaø –f. Apache seõ söû duïng teân file ñöôïc bieân dòch ôû trong server, thöôøng laø “conf/httpd.conf”. Goïi ñeán Apache vôùi kyù hieäu chuyeån ñaûo –v seõ hieån thò caùc giaù trò ñaõ ñaùnh nhaõn SERVER-CONFIG-FILE. Apache seõ quyeát ñònh ServerRoot cuûa noù baèng caùc caùch sau: - Moät chæ thò SeverRoot qua kyù hieäu chuyeån ñaûo –c. - Kyù hieäu chuyeån ñaûo –d treân doøng leänh. - Thö muïc ñang laøm vieäc hieän thôøi. - Moät khoùa registry ñöôïc taïo neáu ngöôøi söû duïng caøi ñaët nhò phaân. - SeverRoot ñöôïc bieân dòch beân trong server. SeverRoot ñöôïc bieân dòch beân trong server thöôøng laø “/apache”. Neáu goïi ñeán Apache vôùi kyù hieäu chuyeån ñaûo –v seõ hieån thò caùc giaù trò ñöôïc ñaùnh nhaõn gioáng nhö laø cuûa “HTTPD Root”. Khi goïi ñeán Apache töø trình ñôn Start. Apache thöôøng boû qua caùc thoâng soá vì theá söû duïng khoaù registry laø moät kyõ thuaät vaãn ñöôïc öa thích hôn cho Apache. Trong quaù trình caøi ñaët, moät khoùa registry seõ ñöôïc taïo, ví duï: HKEY_Local_machine\Sofware\ApacheGroup\Apache\1.3.13\ServerRoot Khoùa naøy ñöôïc bieân dòch vaøo trong server vaø coù theå cho pheùp kieåm tra caùc phieân baûn môùi maø khoâng taùc ñoäng ñeán phieân baûn hieän thôøi. Dó nhieân, phaûi chaéc raèng khoâng caøi ñeø phieân baûn môùi leân phieân baûn cuõ trong heä thoáng file. Giaù trò cuûa khoùa naøy laø thö muïc “ServerRoot” chöùa trong thö muïc Conf. Khi Apache khôûi ñoäng, noù seõ ñoïc file httpd.conf töø thö muïc naøy. Neáu thö muïc naøy chöùa chæ thò ServerRoot maø noù khaùc vôùi thö muïc ñang toàn taïi trong khoùa registry, Apache seõ queân khoùa registry vaø söû duïng thö muïc ñöôïc thieát laäp trong file caáu hình. Neáu ngöôøi söû duïng cheùp moät thö muïc Apache hay caùc file caáu hình ñeán moät nôi khaùc, noù seõ vaãn coøn cho ñeán khi caäp nhaät laïi thö muïc ServerRoot trong file httpd.conf ñeán moät nôi khaùc. Ñeå chaïy Apache töø doøng leänh nhö moät öùng duïng giao tieáp, söû duïng doøng leänh: apache Apache seõ ñöôïc baét ñaàu vaø seõ vaãn chaïy cho ñeán khi ngöôøi söû duïng nhaán toå hôïp phím Ctrl – C. Ñeå kieåm tra vieäc thieát laäp caùc thoâng soá cho file caáu hình duøng leänh: apache –t Leänh naøy ñöôïc söû duïng ñeå thay ñoåi caùc file caáu hình khi Apache vaãn coøn ñang chaïy. Ngöôøi söû duïng coù theå taïo ra caùc thay ñoåi, xaùc nhaän vieäc thay ñoåi laø toát baèng leänh “apache –t”, sau ñoù khôûi ñoäng laïi Apache vôùi “apache –k restart”. Apache seõ ñoïc laïi caùc file caáu hình cho pheùp thöïc hieän baát kyø moät tieán trình naøo ñeå hoaøn thaønh maø khoâng xaûy ra giaùn ñoaïn. Baát kyø moät yeâu caàu naøo cuõng seõ ñöôïc phuïc vuï vôùi vieäc söû duïng caáu hình môùi. 5. Kieåm tra Apache treân Windows: Chaïy Command Prompt danh saùch Program cuûa trình ñôn Start. Choïn thö muïc ñaõ caøi ñaët Apache vaøo vaø goõ leänh apache vaø ñoïc caùc thoâng baùo loãi (neáu coù). Sau ñoù xem laïi file error.log cho caùc caáu hình bò thieát laäp sai. Neáu ngöôøi söû duïng chaáp nhaän maëc ñònh khi caøi ñaët Apache, caùc doøng leänh seõ laø: c: cd "\program files\apache group\apache" apache Wait for Apache to exit, or press Ctrl+C more <logs\error.log Sau khi xem file error.log ngöôøi söû duïng seõ thaáy moät vaøi vaán ñeà bò loãi vaø hoï coù theå söûa chöõa vaø khôûi ñoäng laïi moät laàn nöõa. Sau khi khôûi ñoäng, Apache seõ chaïy (nhö ôû cöûa soå giao tieáp hoaëc nhö moät dòch vuï) vaø seõ baét ñaàu laéng nghe ôû coång 80, tröø phi ngöôøi söû duïng thay ñoåi Port, Listen hoaëc BindAddress (trong file caáu hình). Haõy thöïc hieän keát noái ñeán server vaø truy caäp trang Web maëc ñònh baèng caùch môû trình duyeät vaø nhaäp vaøo URL sau: Trình duyeät seõ traû laïi moät trang Welcome vaø moät lieân keát ñeán soå höôùng daãn Apache nhö sau: Neáu khoâng ngöôøi söû duïng seõ nhaän ñöôïc moät thoâng baùo loãi, coù theå xem laïi file error.log trong thö muïc log. Neáu maùy tính khoâng noái maïng, hoï coù theå söû duïng URL sau ñaây: Moät khi caùc caøi ñaët cô sôû ñang laøm vieäc, ngöôøi söû duïng phaûi caáu hình caùc thuoäc tính cuûa noù baèng caùch söûa ñoåi noäi dung caùc file trong thö muïc conf. 6. Virtual Host: Vitual Host laø moät söùc maïnh thaät söï cuûa Apache. Virtual Host cho pheùp Apache Web Server chaïy cuøng luùc nhieàu Web site. Apache laø moät HHTP server ñaàu tieân cung caáp caùc hoã trôï cho vieäc xaây döïng moät virtual site. Trong khi caùc server cuûa NCSA vaø caùc server khaùc cuõng cung caáp söï hoã trôï virtual site nhöng Apache cung caáp moät khaû naêng thi haønh toát hôn vaø coù nhieàu ñieåm ñaëc tröng hôn caùc server khaùc. Chæ môùi nhìn qua, döôøng nhö söï thuaän lôïi chính cuûa virtual site laø chæ ñeå toâ ñieåm, noù cho pheùp nhieàu Web site ñöôïc ñaùnh ñòa chæ teân mieàn cuûa noù treân caùc maùy ñôn ñaõ ñöôïc chia xeû. Tuy nhieân söï thuaän lôïi cuûa noù nhieàu keát quaû roõ raøng naèm trong caùch quaûn trò Web site vaø caùch nhöõng maùy khaùc söû duïng noù. Moät Virtual host thöôøng ñöôïc taïo ra nhaèm muïc ñích nhö sau: - Khaùch haøng coù theå deã daøng truy caäp caùc Web site cuûa mình treân caùc server cho thueâ. Töø khi ngöôøi thueâ server coù theå söû duïng teân mieàn cuûa chính mình, caùc ñòa chæ coù khuynh höôùng ngaén ñi. Ñieàu naøy ñaõ giuùp ñôõ vieäc ñöa ra tính chuyeân nghieäp ñoàng nhaát treân theá giôùi. Nhöõng ngöôøi söû duïng thích nhôù nhöõng ñòa chæ ngaén hôn töø khi teân mieàn coù moät vaøi söï thích hôïp vôùi teân cuûa caùc taäp ñoaøn coâng ty. - Ruùt goïn toái ña caùc maùy tính vaø phaàn cöùng maïng, nhieàu site toác ñoä chaäm coù theå naèm ôû taïi moät maùy ñôn, ñieàu naøy laøm giaûm bôùt giaù thaønh cuûa vieäc ñöa moät site leân maïng. - Giaûm bôùt giaù thaønh veà con ngöôøi keát hôïp vôùi caùc heä thoáng quaûn trò. Thay cho vieäc quaûn lyù vaø caáu hình moät server chuyeân duïng cho caùc teân mieàn. Moät Web server chæ caàn duy trì vaøi file caáu hình vaø moät soá caùc box. Ñieàu naøy seõ daãn ñeán vieäc giaûm moät soá heä thoáng caàn ñeå duy tu noù, nhö vaäy vieäc duy trì moät maûng seõ ñôn giaûn hôn vaø ít toán keùm hôn. Bôûi vì haàu heát caùc Web site khi taïo ra ñeàu khoâng ñuû ñöôøng truyeàn löu thoâng ñeå söû duïng heát caùc taøi nguyeân treân moät maùy ñôn, ñieàu ñoù laø söï khaùt khao töø moät ngöôøi quaûn trò caù nhaân cho pheùp moät server ñôn giaûn treân maïng vaø chaïy nhö nhieàu maùy khaùc nhau thay vì daønh cho phaàn cöùng vaø tieàn baïc ñeå moãi site ñöôïc ñöa leân, moät vaøi server caáu hình caùc leänh ñeå ñöa ra caùc keát quaû nhö nhau: moät virtual site. Bôûi vì phí toån ñeå caøi ñaët moät server coù theå chia xeû cho nhieàu site, thôøi gian ñeå caáu hình vaø quaûn lyù Web site ñöôïc giaûm ñi raát nhieàu. Virtual host ñaõ ñem laïi moät khía caïnh chaéc chaén cuûa vieäc taïo ra moät trang Web di ñoäng. Khi moät site laø aûo, noù deã daøng di chuyeån ñeán moät Web server khaùc trong cuøng moät maïng hoaëc ôû moät nôi naøo khaùc. Ñaây chính laø vaán ñeà cuûa vieäc chuyeån choã caùc trang HTML cuûa caùc site ñeán moät maùy môùi vaø ñieàu chænh caùc thoâng tin DNS (Domain Name Server) cuûa site ñöa leân moät server môùi. Ñeå vieäc thích nghi vôùi DNS ñöôïc caäp nhaät, ñôn giaûn chæ caàn taïo ra söï ñoåi höôùng treân server cuõ . Ñieàu naøy cho pheùp söï löu thoâng ñöôïc troâi chaûy maø khoâng coù söï sai soùt, ñoù laø moät vaán ñeà quan troïng vôùi caùc site ñang lôùn maïnh ñang ñöôïc löu thoâng ñeå taïo ra kinh doanh. Veà maët lòch söû, khi ngöôøi söû duïng muoán moät site ñang host söû duïng teân mieàn cuûa hoï, söï löïa choïn coù theå ñöôïc laø mua hoaëc thueâ moät maùy tính vaø duøng noù ñeå caáu hình nhö moät Web server. Phaûi chòu caùc phí toån ñeå tieâu toán cho vieäc quaûn lyù server naøy. Caùc phí toån naøy deã thöôøng laø raát lôùn, vieäc naøy ñaõ thuùc ñaåy caùc nhaø cung caáp dòch vuï Internet (ISP) theâm vaøo caùc caùch ñeå hoã trôï nhieàu Web site treân moät host, ñieàu naøy daãn ñeán moät vaøi giaûi phaùp gaàn ñaây, chaúng haïn nhö Home Page Approach. Home Page Approach taïo ra moät ñòa chæ gioáng nhö: Home Page Approach laø moät caùch thích hôïp ñeå phuïc vuï caùc trang ngöôøi duøng cuïc boä. Nhöng khi duøng noù ñeå phuïc vuï cung caáp thoâng tin lôùn vaø ñang ñöôïc truy caäp thöôøng xuyeân bôûi moät soá lôùn ngöôøi söû duïng thì vieäc naøy seõ taïo ra moät ñòa chæ toài maø raát khoù nhôù, teân nhaïp vaøo daøi, deã xaûy ra sai soùt phía ngöôøi söû duïng vaø troâng khoâng ñöôïc chuyeân nghieäp laém. Xaây döïng moät virtual host: Caùc phaïm vi lieân quan cuûa virtual host, virtual site vaø multihomed server thoâng thöôøng ñöôïc söû duïng thay theá cho nhau. Ñeå deã hieãu hôn, chæ caàn suy nghó chuùng nhö sau: Ñeå taïo moät virtual site, thì caàn phaûi caáu hình moät virtual host, ñeå virtual host laøm vieäc caàn phaûi taïo moät mutihomed server, nhö vaäy roõ raøng laø coù söï khaùc nhau giöõa chuùng. Moät maùy tính multihomed laø moât maùy tính coù theå traû lôøi cuøng moät luùc ñeán nhieàu ñòa chæ IP. Moät maùy tính maøy coù theå ñöôïc truy caäp bôûi nhieàu teân (chaúng haïn nhö www.mailhost.foo.com vaø www.foo.com) maø noù thi haønh cho caùc ñòa chæ IP nhö nhau khoâng theå laø moät maùy tính Multihomed. Vieäc ñaët bí danh, moät khaû naêng cung caáp bôûi DNS trong moät baûng ghi taøi nguyeân CNAME , hoaëc lieät keâ caùc teân maùy tính treân etc/host/file ñaèng sau caùc ñòa chæ IP thì chæ tieän lôïi cho ngöôøi söû duïng ñang truy caäp vaøo moät taøi nguyeân treân maïng. Thoâng thöôøng ngöôøi ta maát nhieàu thôøi gian ñeå nhôù teân, vaø moät vaøi teân chaúng haïn nhö WWW hoaëc FTP thì laø tieâu chuaån ñaëc tröng cho caùc maùy tính maø noù ñöa leân maïng caùc dòch vuï vôùi teân töông töï. Ngöôøi söû duïng chæ caàn nhôù teân mieàn nôi caùc taøi nguyeân nôi caùc taøi nguyeân ñoù söû duïng teân truyeàn thoáng (chaúng haïn www.aple.com, www.mailhost.com hoaëc ftp.aple.com ) Moät maùy Multihomed caàn nhieàu hôn theá, noù phaûi traû lôøi cho cuøng luùc hai hoaëc nhieàu ñòa chæ IP chaúng haïn ñòa chæ IP 1.2.3.4 laø ñòa chæ ñöôïc aán ñònh bôûi maïng laøm vieäc Internet cuûa ngöôøi söû duïng cung caáp khi hoï sign up vôùi chuùng. 7 .Virtual site: Virtual site laø moät Web site maø noù cuøng naèm treân moät server vôùi caùc Web site khaùc. Moãi Web site thì ñöôïc truy caäp baèng teân cuûa chuùng vaø chia xeû taát caû taøi nguyeân phaàn cöùng vôùi caùc virtual site khaùc. Maëc duø taát caùc yeâu caàu ñeàu ñöôïc traû lôøi baèng caùc xöû lyù nhö nhau treân HTTP server, nhöng caùc trang chuû khaùc nhau ñöôïc traû veà cho moãi site phuï thuoäc vaøo teân hoaëc ñòa chæ IP söû duïng khi truy caäp caùc thoâng tin. Moät vaán ñeà veà maïng khaùc laø vieäc phaûi ñaùnh ñòa chæ tröôùc khi coù theå multihome laø DNS. DNS cung caáp moät teân maùy ñeán dòch vuï chuyeån sang IP. Khi teân maùy ñöôïc ñaùnh soá, con ngöôøi thích söû duïng teân maùy hôn. DNS chuyeån caùc teân sang soá vaø caùc soá sang teân. Söï thay ñoåi naøy coù yù nghóa laø neáu ngöôøi söû duïng keát noái vôùi Internet, vaø ñang chaïy vôùi moät teân server . Neáu khoâng thì ngöôïc laïi khoâng moät ai khaùc chaïy noù. Neáu ngöôøi söû duïng khoâng phaûi ñang chaïy vôùi DNS cuûa chính mình, hoï seõ caàn phaûi ngang haøng vôùi quyeàn quaûn trò maïng cuûa chính mình ñeå thi haønh baát kyø söï theâm vaøo hoaëc thay ñoåi DNS. 8. Caáu hình Apache treân Windows: a) Caùc file caáu hình cuûa Apache server: Web server seõ ñoïc 3 file chöùa caùc chæ thò caáu hình. Baát kyø moät chæ naøo naøo ñöôïc hieån thò trong caùc file naøy ñeàu seõ ñöôïc thöïc hieän. Conf/httpd.conf: Chöùa caùc chæ thò maø noù ñieàu khieån söï thi haønh cuûa server. Teân file coù theå ñöôïc löôùt qua vôùi kyù hieäu khaû chuyeån –f. Conf/srm.conf: Chöùa caùc chæ thò maø noù ñieàu khieån söï chæ ñònh caùc taøi lieäu maø server cung caáp cho caùc client. Teân file coù theå ñöôïc löôùt qua vôùi chæ thò ResourceConfig. Conf/access.conf: Chöùa caùc chæ thò maø noù ñieàu khieån söï truy caäp caùc taøi lieäu. Teân file coù theå ñöôïc boû qua vôùi chæ thò AccessConfig. b) Thieát laäp caáu hình Apache treân Windows: Apache ñöôïc caáu hình bôûi caùc file trong thö muïc conf. Caùc file naøy cuõng gioáng nhö caùc file ñöôïc söû duïng ñeå caáu hình cho Unix nhöng coù moät vaøi chæ thò khaùc cho Apache treân Windows. Quaù trình caáu hình seõ ñöôïc baét ñaàu baèng caùch tham khaûo httpd.conf vaø caùc chæ thò cuûa noù. Maëc duø caùc file access.conf vaø srm.conf coøn toàn taïi song chuùng laø nhöõng file cuõ maø khoâng ñöôïc söû duïng nhieàu bôûi haàu heát caùc nhaø quaûn trò vaø ngöôøi söû duïng seõ khoâng tìm thaáy baát kyø chæ thò naøo ôû ñoù. Httpd.conf chöùa raát nhieàu caùc tö lieäu cuûa chính noù, ñöôïc sinh ra bôûi caùc chæ thò caáu hình maëc ñònh göûi gaém khi khôûi ñoäng vôùi Apache server. Baét ñaàu baèng caùch ñoïc caùc lôøi chuù thích ñeå hieåu file caáu hình vaø laøm moät soá thay ñoåi nhoû, khôûi ñoäng laïi Apache trong moät cöûa soå giao tieáp vôùi moãi thay ñoåi. Neáu ngöôøi söû duïng taïo ra moät loãi, noù seõ deã daøng sao löu ñeå ñònh daïng laàn laøm vieäc cuoái cuøng . Caùc khaùc nhau cuûa Apache treân Windows chính laø: + Bôûi vì Apache treân Windows thì ñang luoàng, noù khoâng söû duïng caùc tieán trình rieâng bieät cho moãi yeâu caàu nhö laø cuûa Unix. Thay cho vieäc thöôøng chæ coù 2 tieán trình ñang chaïy: Moät tieán trình cha vaø moät tieán trình con ñeå xöû lyù caùc yeâu caàu. Vôùi tieán trình con moãi yeâu caàu ñöôïc xöû lyù bôûi moät luoàng rieâng.Vì theá tieán trình quaûn lyù caùc chæ thò laø khaùc nhau: + Caùc chæ thò maø chaáp nhaän caùc teân file nhö caùc ñoái soá phaûi söû duïng caùc teân file kieåu Windows thay cho caùc teân file Unix. Tuy nhieân, bôûi vì Apache server söû duïng caùc teân file kieåu Unix beân trong, phaûi tieán haønh caét bôùt, khoâng caét phaàn sau. Caùc kyù töï ñieàu khieån coù theå ñöôïc söû duïng, neáu boû qua, kyù töï ñieàu khieån vôùi Apache khaû thi seõ ñaûm nhaän. + Apache treân Windows coù khaû naêng naïp caùc moâ ñun ngay khi chay maø khoâng bieân dòch laïi server. Neáu Apache bieân dòch bình thöôøng, noù seõ caøi ñaët moät soá moâ ñun tuyø choïn trong thö muïc /module, ñeå kích hoaït chuùng hoaëc caùc moâ ñun khaùc söû duïng leänh sau ñaây: LoadModule status_module modules/mod_status.so + Apache cuõng coù theå naïp caùc phaàn môû roäng ISAPI (caùc dòch vuï öùng duïng Internet) chaúng haïn caùc öùng duïng ñöôïc söû duïng bôûi Microsoft IIS vaø caùc server Windows khaùc. (Chuù yù: Apache khoâng naïp caùc boä loïc ISAPI). + Khi ñang chaïy CGI script, caùc phöông thöùc Apache tìm kieám caùc giaûi thích cho script ñöôïc caáu hình ñang söû duïng chæ thò ScriptInterpreterSource. 9. Apache vaø caùc dòch vuï hoã trôï: a) HTTPD: Teân doøng leänh: httpd [ -X ] [ -R libexecdir ] [ -d serverroot ] [ -f config] [ -C directive ] [ -c directive ] [ -D parameter ] Moâ taû: laø moät chöông trình HTTP server . Noù ñöôïc thieát keá ñeå chaïy nhö moät tieán trình deamon moät mình. Khi duøng ñeán dòch vuï naøy, noù seõ taïo ra moät nhoùm caùc tieán trình con ñeå ñaùp öùng caùc yeâu caàu. Ñeå ngöøng dòch vuï naøy, noù seõ göûi moät tín hieäu TERM ñeán tieán trình cha. PIG cuûa tieán trình naøy seõ ghi leân moät file vaø döa vaøo file caáu hình. HTTPD seõ ñöôïc goïi bôûi Internet deamon inetd moãi khi coù moät keát noái ñeán dòch vuï HTTP ñaõ ñöôïc thieát laäp. Caùc ñoái soá cuï theå cuûa doøng leänh -R libexecdir: Tham soá naøy chæ coù hieäu löïc neáu Apache ñöôïc caøi ñaët vôùi taäp SHARED_CORE cho pheùp, noù taùc ñoäng ñeán nhaân nhò phaân cuûa Apache ñeå thay theá vaøo trong moät file ñoái töôïng chia xeû ñoäng (DSO). File naøy ñöôïc doø tìm treân moät ñöôøng daãn hardcoded beân döôùi ServerRoot maëc ñònh -d serverroot: Thieát laäp giaù trò ban ñaàu cuûa chæ thò ServerRoot ñeán serverroot. Chöùc naêng naøy coù theå bò boû qua bôûi doøng leänh ServerRoot trong file caáu hình. Maëc ñònh server root laø usr/local/apache. -f : Thöïc thi caùc leänh trong file config khi Startup. Neáu file config khoâng baét ñaàu vôùi a/, luùc ñoù noù seõ laáy moät moät ñöôøng daãn coù lieân quan ñeán ServerRoot. Maëc ñònh cuûa noù laø conf/httpd.conf. -C directive: Thöïc hieän caáu hình caùc chæ thò tröôùc khi ñoïc file config. -c directive: Thöïc hieän caáu hình caùc chæ thò sau khi ñoïc file config. -D parameter: Thieát laäp moät thoâng soá caáu hình maø noù coù theå söû duïng vôùi caëp theû … trong caùc file caáu hình ñeå boû qua coù ñieàu kieän hoaëc thöïc hieän caùc leänh. b) APACHECTD: Laø moät ñaàu vaøo caùc HTTP server. Noù ñöôïc thieát keá ñeå giuùp ngöôøi quaûn trò ñieàu khieån caùc chöùc naêng cuûa Apache HTTPD deamon. Teân doøng leänh: apachectl command [...] Vôùi caùc leänh: Start: Khôûi ñoäng Apache deamon. Ñöa ra moät thoâng baùo loãi neáu chöông trình ñang chaïy luùc ñoù. Stop: Ngöøng dòch vuï Apache deamon. Restart: Khôûi ñoäng laïi Apache deamon baèng caùch göûi cho noù moät SIGHUP. Leänh naøy töï ñoäng kieåm tra caùc file caáu hình qua vaên baûn caáu hình tröôùc khi baét ñaàu khôûi ñoäng laïi ñeå chaéc chaén raèng Apache vaãn coøn ñang hieän dieän trong maùy. Fullstatus: Hieån thò ñaày ñuû caùc baùo caùo traïng thaùi töø mod_status. Ñeå leänh naøy ñöôïc thi haønh, caàn phaûi cho pheùp mod_status treân server vaø moät trình duyeät text_based chaúng haïn nhö Lynx coù saün trong heä thoáng. URL söû duïng noù ñeå truy caäp baûn baùo caùo traïng thaùi coù theå ñöôïc thieát laäp baèng giaù trò STATUSURL coù saün trong script. Status: Hieån thò ngaén goïn baûng traïng thaùi gioáng nhö chöùc naêng fullstatus tröø phi danh saùch caùc yeâu caàu phuïc vuï thôøi bò boû queân. Configtest: Chaïy moät ñoaïn vaên baûn caùc cuï phaùp cuûa file caáu hình. Noù phaân tích caùc file caáu hình vaø caùc baûng Syntax Ok hoaëc thoâng tin chi tieát veà caùc loãi cuù phaùp ñaët bieät. Help: Hieån thò caùc thoâng baùo loãi ñöôïc saép xeáp. c) APXS Teân doøng leänh: apxs -g [ -S variable=value ] -n name apxs -q [ -S variable=value ] query ... apxs -i [ -S variable=value ] [ -n name ] [ -a ] [ -A ] dsofile ... apxs -e [ -S variable=value ] [ -n name ] [ -a ] [ -A ] dsofile ... Moâ taû: Laø moät coâng cuï ñeå xaây döïng vaø caùc ñaët caùc moâ ñun môû roäng cho Apache HTTP server. Ñöôïc thöïc hieän baèng caùch caøi ñaët moät DSO töø moät hay nhieàu nguoàn hoaëc ñoái töôïng file maø sau ñoù noù coù theå naïp vaøo Apache trong thôøi gian chöông trình ñang chaïy qua chæ thò LoadModule töø mod_so. Ñeå söû duïng kyõ thuaät môû roäng naøy, maùy tính cuûa ngöôøi söû duïng phaûi hoã trôï DSO vaø Apache HTTPD nhò phaân phaûi ñöôïc xaây döïng vôùi moâ ñun mod_so. Coâng cuï apxs seõ töï ñoäng nhaéc nhôû neáu laø caùc tröôøng hôïp ngöôïc laïi. Ta caàn phaûi kieåm tra vieäc naøy baèng doøng leänh: $ httpd -l moâ ñun mod_so phaûi coù trong danh saùch ñöôïc hieån thò. Neáu caùc yeâu caàu naøy ñöôïc thoûa maõn, thì coù theå deã daøng môû roäng caùc chöùc naêng cuûa Apache server baèng caùch caøi ñaët caùc moâ ñun cuûa mình vôùi kyõ thuaät DSO baèng coâng cuï apxs naøy. Ví duï: $ apxs -i -a -c mod_foo.c gcc -fpic -DSHARED_MODULE -I/path/to/apache/include -c mod_foo.c ld -Bshareable -o mod_foo.so mod_foo.o cp mod_foo.so /path/to/apache/libexec/mod_foo.so chmod 755 /path/to/apache/libexec/mod_foo.so [activating module `foo' in /path/to/apache/etc/httpd.conf] $ apachectl restart /path/to/apache/sbin/apachectl restart: httpd not running, trying to start [Tue Mar 31 11:27:55 1998] [debug] mod_so.c(303): loaded module foo_module /path/to/apache/sbin/apachectl restart: httpd started Caùc ñoái soá File coù theå laø baát kyø moät file nguoàn c (.c), file ñoái töôïng (.o) hoaëc ngay caû moät thö vieäc löu tröõ (.a). Coâng cuï apxs töï ñoäng coâng nhaän caùc phaàn môû roäng naøy vaø töû ñoäng söû duïng caùc file nguoàn C cho vieäc bieân dòch trong khi noù chæ söû duïng caùc file ñoái töôïng vaø löu tröõ cho giai ñoaïn lieân keát. Nhöng khi söû duïng nhieàu ñoái töôïng tröôùc bieân dòch , phaûi chaéc chaén raèng chöùng ñöôïc lieân keát cho PIC ñeå coù theå söû duïng chuùng cho moät DSO. Cho ví duï vôùi GCC, ngöôøi söû duïng luoân chæ phaûi söû duïng –fpic. Ñoái vôùi caùc caùc bieân dòch C khaùc yeâu caàu phaûi tham khaûo taøi lieäu höôùng daãn cuûa noù hoaëc chôø ñôïi caùc côø apxs, ñeå bieân dòch caùc file ñoái töôïng. Caùc ñoái soá cuï theå cuûa doøng leänh: - n name: Thieát laäp teân moâ ñun cho chöùc naêng –i (caøi ñaët) vaø –g (taïo khuoân maãu). Söû duïng noù ñeå chæ ra teân moâ ñun. Chöùc naêng –g laø baét buoäc, chöùc naêng –I thì coù taùc duïng khieán coâng cuï apxs coá gaéng xaùc ñònh teân töø nguoàn hoaëc ít nhaát cuõng ñoaùn ñöôïc töø teân file. -q : Thöïc hieän ruy vaán cho apxs veà caùc caøi ñaët naøo ñoù. Tham soá truy vaán coù theå laø moät hoaëc nhieàu caùc giaù trò: CC TARGET CFLAGS SBINDIR CFLAGS_SHLIB INCLUDEDIR LD_SHLIB LIBEXECDIR LDFLAGS_SHLIB SYSCONFDIR LIBS_SHLIB PREFIX Söû duïng caùc chöùc naêng naøy ñeå höôùng daãn xaùc ñònh caùc thoâng soá caøi ñaët: INC = I ‘apxs –q INCLUDEDIR’ beân trong caùc Makefile neáu caàn höôùng daãn caùc truy caäp ñeán caùc file tieâu ñeà cuûa Apache. -S variable = value: Chöùc naêng naøy thay ñoåi caùc caøi ñaët apx ñi keøm vôùi caùc giaù trò ñaëc bieät theo sau nhö: · Chöùc naêng taïo ra moät khuoân maãu: -q: chöùc naêng taïo ra moät thö muïc con vaø 2 file trong ñoù: Moät file nguoàn ví duï moâ ñun teân laø mod_name.c maø noù coù theå söû duïng nhö moät khuoân maãu cho vieäc taïo caùc moâ ñun cuûa chính ngöôøi söû duïng hoaëc nhö moät quaù trình khôûi ñoäng nhanh cho vieäc chaïy caùc kyõ thuaät apxs. Vaø moät maãu thö Makefile vôùi muïc ñích laø deã taïo vaø caøi ñaët caùc moâ ñun naøy. · Chöùc naêng bieân dòch DSO: -c : Chöùc naêng naøy chæ ra thao taùc bieân dòch. Ñaàu tieân noù bieân dòch caùc file nguoàn C (.c) cuûa files vaøo trong caùc file ñoái töôïng töông öùng (.o) vaø sau ñoù caøi ñaët moät DSO vaøo trong dsofile baèng caùch lieân keát caùc file ñoái töôïng naøy cuøng vôùi caùc file ñoái töôïng coøn laïi (.o vaø .a) cuûa files. -o dsofile: Chæ ra teân file cuûa file DSO ñaõ taïo. Neáu khoâng coù söï chæ ñònh vaø teân file khoâng theå ñoaùn ñöôïc töø baûng lieät keâ caùc file, teân döï phoøng mod_unknow.so ñöôïc söû duïng. · Chöùc naêng caøi ñaët vaø ñònh daïng DSO: -i : Chöùc naêng naøy ñeå chæ thao taùc caøi ñaët vaø caøi ñaët moät hoaëc nhieàu hôn caùc DSO vaøo trong thö muïc libexec cuûa server. -a : Chöùc naêng naøy ñeå chæ thao taùc kích hoaït ñeán moâ ñun baèng caùch töï ñoäng theâm vaøo moät doøng LoadModule ñeán file caáu hình httpd.conf cuûa Apache hoaëc cho pheùp noù thöïc thi neáu ñaõ toàn taïi. -A :Chöùc naêng naøy cuõng gioáng nhö –a nhöng noù taïo moät chæ thò LoadModule ñöôïc ñaët theâm vaøo moät daáu (#), coù nghóa laø moâ ñun chæ cho pheùp cho caùc thi haønh ngay sau ñoù coøn luùc ñaàu thì bò caám. -e : Chöùc naêng naøy daønh cho thao taùc hieäu chænh, coù theå söû duïng keøm vôùi chöùc naêng –a vaø –A, cuõng gioáng nhö chöùc naêng –I: Thao taùc hieäu chænh file caáu hình httpd.conf cuûa Apache maø khoâng coá gaêng caøi ñaët caùc moâ ñun. Ví duï: Giaû söû ngöôøi söû duïng ñaõ coù saün moät moâ ñun Apache teân laø mod_foo.c maø noù seõ môû roäng chöùc naêng server cuûa Apache. Ñeå laøm vieäc ñoù, tröôùc heát caàn phaûi bieân dòch moät nguoàn C vaøo trong moät DSO phuø hôïp cho vieäc naïp vaøo trong Apache server. Coù theå söû duïng leänh sau: $ apxs -c mod_foo.c gcc -fpic -DSHARED_MODULE -I/path/to/apache/include -c mod_foo.c ld -Bshareable -o mod_foo.so mod_foo.o $ _ Sau ñoù tieán haønh caäp nhaät caáu hình Apache baèng caùch chaéc chaén raèng moät chæ thò LoadModule ñöôïc ñöa ra ñeå naïp DSO naøy. Ñeå ñôn giaûn böôùc naøy, apxs cung caáp moät caùch töï ñoäng caùch caøi ñaët DSO vaøo trong thö muïc libexec vaø caäp nhaät file httpd.conf. Baèng caùch söû duïng caùc leänh: $ apxs -i -a mod_foo.c cp mod_foo.so /path/to/apache/libexec/mod_foo.so chmod 755 /path/to/apache/libexec/mod_foo.so [activating module `foo' in /path/to/apache/etc/httpd.conf] $ _ Caùch naøy laø moät doøng leänh coù teân: LoadModule foo_module libexec/mod_foo.so ñöôïc theâm vaøo ñeå caáu hình file neáu vaãn chöa ñöôïc ñöa ra. Neáu muoán caám thao taùc naøy söû duïng theâm vaøo chöùc naêng –A. $ apxs -i -A mod_foo.c Ñeå kieåm tra nhanh apxs, ngöôøi söû duïng taïo ra moät maãu ví duï moâ ñun Apache cuøng vôùi moät thö töø Makefile baèng caùch: $ apxs -g -n foo Creating [DIR] foo Creating [FILE] foo/Makefile Creating [FILE] foo/mod_foo.c $ _ Sau ñoù coù theå bieân dòch ngay moâ ñun ví duï naøy vaøo moät DSO vaø naïp noù leân Apache server: $ cd foo $ make all reload apxs -c mod_foo.c gcc -fpic -DSHARED_MODULE -I/path/to/apache/include -c mod_foo.c ld -Bshareable -o mod_foo.so mod_foo.o apxs -i -a -n "foo" mod_foo.so cp mod_foo.so /path/to/apache/libexec/mod_foo.so chmod 755 /path/to/apache/libexec/mod_foo.so [activating module `foo' in /path/to/apache/etc/httpd.conf] apachectl restart /path/to/apache/sbin/apachectl restart: httpd khoâng chaïy,coá gaéêng khôûi ñoäng [Tue Mar 31 11:27:55 1998] [debug] mod_so.c(303): naïp foo_module /path/to/apache/sbin/apachectl restart: httpd khôûi ñoäng $ _ Ngöôøi söû duïng coù theå söû duïng apxs ñeå bieân dòch caùc moâ ñun phöùc taïp beân ngoaøi caây nguoàn Apache, cuõng nhö PHP bôûi vì apxs töï ñoäng chaáp nhaän nguoàn C vaø caùc file ñoái töôïng. 10. Bieân dòch Apache treân Windows: Ñeå bieân dòch Apache ñoøi hoûi Microsoft Visual C++ 5.0 hoaëc 6.0 phaûi ñöôïc caøi ñaët saün saøng. Noù coù theå ñöôïc caøi ñaët vôùi caùc coâng cuï doøng leänh hoaëc vôùi moâi tröôøng Viual Studio. Tham khaûo saùch höôùng daãn C++ ñeå xaùc ñònh caùch caøi ñaët chuùng. Ñaëc bieät nhaát laø nhaän thaáy file vcvars32.bat töø thö muïc Program Files/DevStudio/VC/bin vaø vaø file setenv.bat töø Platform SDK ñöôïc yeâu caàu ñeå chuaån bò caùc coâng cuï doøng leänh cho vieäc söû duïng doøng leänh. Ñeå caøi ñaët Apache vôùi file Makefile.win hoaëc döï aùn Install.Bin trong Visual Studio IDE, tieän ích awk cuõng ñöôïc yeâu caàu. Ñaàu tieân baûn phaûi caøi ñaët awk.exe ôû nôi noù coù theå ñöôïc tìm thaáy trong ñöôøng daãn vaø moâi tröôøng DevStudio neáu döï ñònh söû duïng IDE, coù nhieàu phieân baûn cuûa awk saün coù treân Windows. Caùch deã nhaát laø caøi ñaët baèng caùi coù saün ñöôïc taûi xuoáng töø vaø neân löu noù vôùi teân awk.exe hôn laø awk95.exe. Sau ñoù bung goùi Apache ñöa vaøo trong moät thö muïc thích hôïp, môû cöûa soå doøng leänh vaø thay ñoåi thö muïc con src cuûa Apache. Caùc taøi lieäu chính cung caáp cho caùc file taïo Apache ñöôïc chöùa trong file Makefile.win. Ñeå bieân dòch Apache treân Windows chæ caàn söû duïng caùc doøng leänh: nmake /f Makefile.win _apacher (release build) nmake /f Makefile.win _apached (debug build) Neáu ñöôïc moät thoâng baùo loãi kieåu nhö "the name specified is not recognized..." thì phaûi chaïy file vevas32.bat tröôùc: baèng doøng leänh sau: "C:\Program Files\DevStudio\VC\Bin\VCVARS32.BAT" (caàn phaûi söûa ñoåi doøng leänh naøy neáu VC ñöôïc caøi ôû nôi khaùc) Sau ñoù chaïy nmake moät laàn nöõa. Apache cuõng coù theå ñöôïc bieân dòch vôùi moâi tröôøng Visual Studio development cuûa VC++. Ñeå ñôn giaûn tieán trình naøy moät vuøng laøm vieäc Visual Studio, Apachedsw (ñöôïc cung caáp trong thö muïc src) ñöa ra danh saùch loái vaøo cuûa caùc döï aùn working.dsb ñöôïc yeâu caàu ñeå hoaøn thaønh Apache (binary release). Noù cung caáp caùc phaàn phuï thuoäc giöõa caùc tieán trình. Noù bao goàm caû caùc phaàn phuï thuoäc giöõa caùc döï aùn ñeå ñaûm baûo raèng chuùng ñöôïc caøi ñaët theo moät traät töï thích hôïp. InstallBin laø moät döï aùn cao caáp maø noù seõ caøi ñaët taát caû caùc döï aùn, vaø caøi ñaët caùc file bieân dòch vaøo nôi thích hôïp cuûa noù. Caùc nhaân döï aùn .dsp ñöôïc caøi ñaët bôûi Apache.dsw vaø makefile.win laø: os\win32\ApacheOS.dsp os\win32\Win9xConHook.dsp regex\regex.dsp ap\ap.dsp lib\expat-lite\xmltok.dsp lib\expat-lite\xmlparse.dsp yeâu caàu xmltok lib\sdbm.dsp main\gen_uri_delims.dsp main\gen_test_char.dsp ApacheCore.dsp yeâu caàu taát caû caùc file ôû treân Apache.dsp yeâu caàu ApacheCore Trong phaàn theâm vaøo, thö muïc con os/win32 chöùa caùc file döï aùn cho caùc moâ ñun chöùc naêng, taát caû chuùng ñeàu yeâu caàu ApacheCore. os\win32\mod_auth_anon.dsp os\win32\mod_auth_dbm.dsp cuõng yeâu caàu sdbm os\win32\mod_auth_digest.dsp os\win32\mod_cern_meta.dsp os\win32\mod_digest.dsp os\win32\mod_expires.dsp os\win32\mod_headers.dsp os\win32\mod_info.dsp os\win32\mod_mime_magic.dsp os\win32\mod_proxy.dsp os\win32\mod_rewrite.dsp os\win32\mod_speling.dsp os\win32\mod_status.dsp os\win32\mod_unique_id.dsp os\win32\mod_usertrack.dsp os\win32\mod_vhost_alias.dsp Thö muïc support chöùa caùc file döï aùn cho caùc chöông trình ñöôïc theâm vaøo maø noù khoâng naèm trong phaàn Apache ñang chaïy nhöng noù ñöôïc söû duïng bôûi ngöôøi quaûn trò ñeå duy trì password vaø caùc file log. support\htdigest.dsp support\htpasswd.dsp support\logresolve.dsp support\rotatelogs.dsp Moät khi Apache ñaõ bieân dòch noù caàn ñöôïc caøi ñaët trong thö muïc goác server cuûa noù, maëc ñònh laø /Apache treân ñóa cöùng ñang söû duïng. Ñeå töï ñoäng caøi ñaët caùc file vaøo trong thö muïc c:/ServerRoot, söû duïng leänh nmake: nmake /f Makefile.win installr INSTDIR=c:\ServerRoot (for release build) nmake /f Makefile.win installd INSTDIR=c:\ServerRoot (for debug build) Ñoái soá c:\ServerRoot ñeå cho INTSDIR nhaän caùc thö muïc caøi ñaët (noù coù theå ñöôïc boû qua neáu Apache ñöôïc caøi ñaët trong thö muïc \Apache) Quaù trình caøi ñaët seõ dieãn ra nhö sau: c:\ServerRoot\Apache.exe – Chöông trình Apache c:\ServerRoot\ApacheCore.dll - Apache runtime [shared libary] c:\ServerRoot\Win9xConHook.dll - Win9x console fixups [shared library] c:\ServerRoot\xmlparse.dll – phaân tích cuù phaùp XML [shared library] c:\ServerRoot\xmltok.dll - XML token engine [shared library] c:\ServerRoot\bin\*.exe – Caùc chöông trình quaûn trò c:\ServerRoot\cgi-bin – Ví duï CGI scripts c:\ServerRoot\conf – Thö muïc chöùa caùc file caáu hình. c:\ServerRoot\icons - Icons for FancyIndexing c:\ServerRoot\include\*.h – Caùc file header cuûaApache c:\ServerRoot\htdocs - Site Welcome index.html c:\ServerRoot\htdocs\manual – Taøi lieäu Apache. c:\ServerRoot\lib – Caùc file taøi lieäu ñoäng. c:\ServerRoot\libexec – Thö vieän lieân keát ñoäng. c:\ServerRoot\logs – Thö muïc roãng logging. c:\ServerRoot\modules\mod_*.dll – Caùc moâ ñun naïp Apache. CHÖÔNG II CAÙC NGHI THÖÙC TRUYEÀN NHAÄN ---- c ---- Coâng vieäc phaùt trieån caùc heä thoáng Mail (Mail System) ñoøi hoûi hình thaønh caùc chuaån veà Mail. Ñieàu naøy giuùp cho vieäc gôûi nhaän caùc message ñöôïc ñaûm baûo, laøm cho nhöõng ngöôøi ôû caùc nôi khaùc nhau coù theå trao ñoåi thoâng tin cho nhau. Coù 2 chuaån veà Mail quan troïng nhaát vaø ñöôïc söû duïng nhieàu nhaát töø tröôùc ñeán nay laø X.400 vaø SMTP (Simple Mail Transfer Protocol). SMTP thöôøng ñi keøm vôùi chuaån POP3 vaø do haïn cheá cuûa SMTP maø ngaøy nay ngöôøi ta duøng chuaån môû roäng cuûa noù laø ESMTP (Extended SMTP). Muïc ñích chính cuûa X.400 laø cho pheùp caùc mail coù theå ñöôïc truyeàn nhaän thoâng qua caùc loaïi maïng khaùc nhau baát chaáp caáu hình phaàn cöùng, heä ñieàu haønh maïng , giao thöùc truyeàn daãn ñöôïc duøng. Coøn muïc ñích cuûa chuaån SMTP mieâu taû caùch ñieàu khieån caùc message treân maïng Internet. Ñieàu quan troïng cuûa chuaån SMTP laø giaû ñònh maùy nhaän phaûi duøng giao thöùc SMTP gôûi Mail cho 1 Server luoân luoân hoaït ñoäng. Sau ñoù, ngöôøi nhaän seõ ñeán laáy Mail cuûa hoï töø Server khi naøo hoï muoán duøng giao thöùc POP (Post Office Protocol), ngaøy nay POP ñöôïc caûi tieán thaønh POP3 (Post Officce Protocol vertion 3). Caùc giao thöùc Mail thoâng duïng : chuaån X.400, chuaån MAIP, SMTP (ESMTP), POP3 . ÔÛ ñaây chæ trình baøy chi tieát veà POP3 vaø SMTP. PHAÀN 1 GIAO THÖÙC SMTP (SIMPLE MAIL TRANSFER PROTOCOL ) -----***----- Boä phaän chính cuûa heä thoáng Internet Mail chính laø caùc MTA ( Message Transfer Agent), caùc MTA giöõ 1 vai troø quan troïng trong vieäc chuyeån giao email. Ví duï sau khi moät ngöôøi söû duïng göûi moät böùc mail tôùi haøng ñôïi message, MTA seõ laáy ñoù vaø chuyeån noù tôùi moät MTA khaùc. Quaù trình ñoù seõ tieáp tuïc tieáp dieãn cho ñeán khi message ñeán ñöôïc nôi nhaän. Ñeå coù theå lieân laïc vôùi caùc MTA thoâng qua keát noái TCP caùc MTA cuûa heä thoáng Internet Mail coù theå söû duïng nhieàu nghi thöùc khaùc nhau ñeå chuyeån giao caùc thoâng tin (X400,ESMTP,....), Nhöng ôû ñaây ta chæ xeùt nghi thöùc SMTP. Ñaây laø moät nghi thöùc cho pheùp chuyeån mail töø ñieåm naøy sang ñieåm khaùc cho ñeán ñích treân maïng Internet. Noù ñöôïc caáu taïo bôûi taäp caùc caâu leänh ñeå Client coù theå yeâu caàu Sever thöïc hieän moät soá taùc vuï vaø taäp caùc caâu traû lôøi ñeå Server hoài ñaùp laïi cho Client veà keát quaû thöïc hieän caùc taùc vuï ñoù. Moät chöông trình muoán gôûi ñöôïc mail thì noù phaûi bieát ñòa chæ cuûa moät SMTP server. Server naøy coù nhieäm vuï chuyeån mail ñeán nôi caàn thieát. I- GIÔÙI THIEÄU Moät ñaëc tröng quan troïng cuûa SMTP laø khaû naêng chia ca Mail qua moâi tröôøng dòch vuï giao chuyeån, moät dòch vuï giao chuyeån cung caáp moät moâi tröôøng truyeàn thoâng lieân quaù trình (Interprocess Communication Environment –IPCE ). Moät moâi tröôøng truyeàn thoâng lieân quaù trình coù theå bao goàm moät Network, vaøi Network, hay moät taäp hôïp con cuûa Network. Ñieàu ñoù quan troïng cho vieäc thöïc hieän heä thoáng giao chuyeån (hay caùc IPCE) one-to-one vôùi Network, moät quaù trình coù theå giao tieáp vôùi moät quaù trình khaùc thoâng qua vieäc nhaän bieát IPCE. Mail laø öùng duïng hay laø caùch duøng cuûa giao tieáp lieân quaù trình, Mail coù theå giao tieáp giöõa caùc quaù trình trong nhöõng IPCE khaùc baèng caùch chia ca thoâng qua moät quaù trình ñöôïc keát noái ñeán hai (hay nhieàu ) IPCE. Chi tieát hôn Mail coù theå chia ca giöõa nhöõng Host treân heä thoáng giao chuyeån khaùc nhau baèng moät Host treân caû hai heä thoáng chuyeån giao. II- MOÂ HÌNH SMTP: SMTP ñöôïc thieát keá döïa treân moâ hình giao tieáp sau: nhö keát quaû cuûa moät yeâu caàu Mail cuûa user . Sender- SMTP thieát laäp moät keânh hai ñöôøng vaän chuyeån ñeán moät receiver- SMTP . Receiver- SMTP coù theå laø ñích ñeán cuoái cuøng hay moät trung gian. Nhöõng leänh SMTP ñöôïc sinh ra bôûi Sender-SMTP göûi ñeán Receiver- SMTP. Nhöõng reply SMTP ñöôïc göûi töø Receiver- SMTP ñeán Sender- SMTP trong söï ñaùp öùng cho nhöõng leänh ñoù. Khi moät keânh giao chuyeån ñöôïc thieát laäp Sender-SMTP göûi ñi 1 leänh Mail bieåu thò cho ngöôøi göûi cuûa mail ñoù. Neáu Receiver-SMTP coù theå chaáp nhaän mail, noù traû lôøi vôùi moät OK reply. Sau ñoù Sender-SMTP göûi moät leänh RCPT nhaän dieän Receiver mail neáu Receiver-SMTP coù theå chaáp nhaän mail noù traû lôøi vôùi 1 OK reply neáu khoâng noù seõ lôøi vôùi 1 reply baùc boû receiver ñoù (nhöng khoâng phaûi toaøn boä söï giao dòch ñoù). Sender- SMTP vaø Receiver- SMTP coù theå ñieàu ñình vôùi vaøi recipient, khi nhöõng recipient ñaõ ñöôïc daøn xeáp Sender-SMTP göûi mail data keát thuùc vôùi moät chuoãi ñaëc bieät neáu receiver xöû lyù mail data thaønh coâng noù traû lôøi vôùi 1 OK reply. Cuoäc hoäi thoaïi moät caùch chuû yù lock –step (one-at-a-time). Sender SMTP Receiver SMTP User File System File System SMTP Commands/Replies and Mail Sender-SMTP Receiver-SMTP Sô ñoà treân laø moâ hình cho caùch duøng SMTP. SMTP cung caáp nhöõng cô cheá giao chuyeån Mail moät caùch tröïc tieáp töø Host cuûa user göûi ñeán host cuûa user nhaän khi caû hai host ñöôïc keát noái ñeán cuøng dòch vuï giao chuyeån hay qua nhieàu SMTP-Sever tieáp vaän khi host xuaát phaùt hay ñích ñeán khoâng ñöôïc keát noái ñeán cuøng dòch vuï chuyeån giao. Ñeå coù theå cung caáp khaû naêng tieáp vaän SMTP-Sever phaûi ñöôïc cung caáp teân cuûa host ñeán cuøng chaúng haïn nhö haïn cuûa mailhost ñeán . Ñoái soá cuûa leänh mail laø 1 reverse-path noù ñaëc taû mail ñoù töø ñaâu ñeán; ñoái soá cho RCPT laø 1 Forward-path noù ñaëc taû mail ñoù ñi ñeán ñaâu. Forward-path laø moät loä trình nguoàn, reverse-path laø moät loä trình trôû veà (noù coù theå ñöôïc duøng ñeå traû veà moät message cho ngöôøi göûi khi xaûy ra loãi vôùi 1 message ñöôïc tieáp nhaän). Khi cuøng moät message ñöôïc göûi cho nhieàu recipient SMTP khuyeán khích chuyeån giao chæ moät baûn sao cuûa data cho taát caû caùc Receiver ôû cuøng moät host ñích. Nhöõng command vaø reply mail coù nhöõng cuù phaùp khaéc khe. Nhöõng reply cuõng coù moät maõ soá. Trong nhöõng thí duï theo sau seõ xuaát hieän nhöõng leänh (commands) vaø nhöõng traû lôøi (replies) , moät danh saùch caùc leänh vaø reply hoaøn chænh trong phaàn 4. Caùc command vaø reply khoâng phaân bieät kieåu chöõ hoa hay thöôøng. Löu yù, ñieàu naøy khoâng ñuùng vôùi teân cuûa User mailbox. Cho moät soá host teân cuûa user coù phaân bieät kieåu chöõ, SMTP phaûi thi haønh ñaày ñuû vieäc nhaän kieåu chöõ vaø giöõ gìn kieåu chöõ cuûa nhöõng user name nhö chuùng ñaõ xuaát hieän trong nhöõng ñoái soá cuûa mailbox. Host names khoâng phaân bieät kieåu chöõ. Caùc command vaø reply laø nhöõng kyù töï ñöôïc taïo ra töø taäp kyù töï ASCII{1}, khi dòch vuï vaän chuyeån cung caáp moät keânh chuyeån giao 8 bit (octet). Moãi moät kyù töï 7 bit ñöôïc truyeàn ñuùng baèng caùch chuyeån noù veà heä 8 (octet) vôùi bit coù thöù töï cao nhaát bò xoùa veà 0. Khi ñaëc taû caáu truùc thoâng thöôøng cuûa command vaø reply, moät ñoái soá (hay moät kyù hieäu ñaëc bieät ) seõ ñöôïc bieåu thò baèng moät bieán meta-linguistic (hay moät haèng soá), ví duï nhö : “”, hay “”. ÔÛ ñaây daáu ngoaëc nhoïn chæ ñònh chuùng laø nhöõng bieán meta-linguistic. Tuy nhieân caùc ñoái soá thì duøng daáu ngoaëc nhoïn moät caùch literal. Ví duï nhö, moät reverse-path thöïc ñöôïc bao trong daáu ngoaëc nhoïn nhö, “” laø moät tröôøng hôïp cuûa (daáu ngoaëc nhoïn ñöôïc giao chuyeån trong command vaø reply laø maõ thöïc cuûa noù). III. MAIL: 1- Khaùi quaùt : Coù 3 böôùc cho söï giao dòch SMTP mail. Giao dòch ñöôïc baét ñaàu vôùi yeâu caàu Mail mang söï nhaän dieän ngöôøi göûi, tieáp theo sau laø moät chuoãi cuûa moät hay nhieàu leänh RCPT trao nhöõng thoâng tin cuûa receiver, sau ñoù moät leänh DATA cho mail data.Vaø cuoái cuøng laø phaàn chæ ñònh keát thuùc mail data xaùc nhaän giao dòch ñoù. Böôùc ñaàu tieân trong thuû tuïc laø leänh MAIL... chöùa mailbox nguoàn: MAIL FROM : Leänh naøy baùo cho receiver bieát moät giao dòch mail môùi seõ baét ñaàu vaø ñeå reset taát caû caùc baûng traïng thaùi vaø caùc buffer cuûa noù bao goàm taát caû recipient hay mail data. Noù phaùt ra reverse-path coù theå ñöôïc duøng ñeå baùo loãi. Neáu ñöôïc chaáp nhaän receiver-SMTP traû veà moät reply 250 OK. coù theå chöùa nhieàu hôn moät mailbox. laø moät loä trình nguoàn trôû veà lieät keâ caùc host vaø mailbox nguoàn. Host ñaàu tieân trong reverse-path seõ laø host göûi leänh naøy. Böôùc thöù hai trong thuû tuïc naøy laø leänh RCPT : RCPT To : Leänh naøy phaùt ñi moät forward-path nhaän dieän recipient. Neáu ñöôïc chaáp nhaän receiver-SMTP traû veà moät reply 250 OK. Vaø löu laïi forward-path. Neáu recipient khoâng nhaän bieát thì receiver traû veà reply 550 Failure. Böôùc thöù hai cuûa thuû tuïc naøy coù theå laëp laïi nhieàu laàn. Forward-path coù theå chöùa nhieàu hôn moät mailbox. Forward-path laø loä trình nguoàn lieät keâ caùc host vaø mailbox ñích. Host ñaàu tieân trong seõ laø host nhaän leänh naøy. Böôùc thöù ba trong thuû tuïc laø leänh DATA DATA Neáu chaáp nhaän receiver-SMTP traû veà moät reply 354 vaø coi taát caû caùc doøng noái tieáp ñoù laø message text. Khi vaên baûn cuoái cuøng ñöôïc nhaän vaø löu tröõ receiver-SMTP göûi moät reply 250 OK. Keå töø khi mail ñöôïc göûi treân keânh chuyeån giao, ñieåm keát thuùc cuûa mail phaûi ñöôïc chæ ñònh ñeå hoäi thoaïi command vaø reply coù theå baét ñaàu trôû laïi. SMTP chæ ñònh keát thuùc cuûa mail baèng caùch göûi moät doøng chöùa chæ moät daáu chaám. Chuù yù raèng mail data bao goàm nhöõng muïc (item) memo header chaúng haïn nhö Subject, To, Cc, From. Phaàn chæ ñònh keát thuùc cuûa mail data cuõng xaùc nhaän söï giao dòch mail vaø baùo cho receiver-SMTP bieát ñeå xöû lyù vieäc löu tröõ recipient vaø mail data ngay luùc ñoù. Neáu ñöôïc chaáp nhaän receiver-SMTP traû veà moät reply 250 OK. Leänh DATA seõ chæ loãi neáu giao dòch mail khoâng hoaøn thaønh (ví duï khoâng coù receiver) hoaëc neáu taøi nguyeân khoâng coù hieäu löïc. Thuû tuïc treân laø moät ví duï cuûa moät giao dòch mail. Nhöõng leänh naøy chæ ñöôïc duøng trong nhöõng traät töï ñöôïc trình baøy ôû treân. Ví duï : Moät minh hoïa caùch duøng nhöõng leänh naøy: Ut; end with . S: Blah blah blah... S: ...etc. etc. etc. S: . R: 250 OK Baây giôø mail ñöôïc chaáp nhaän cho Jones vaø Brown. Green khoâng coù moät mailbox treân Beta host. 2- Söï ñònh höôùng : Coù moät soá tröôøng hôïp thoâng tin cuûa ñích ñeán trong bò sai nhöng receiver-SMTP bieát ñích ñeán ñuùng. Trong tröôøng hôïp nhö vaäy moät trong nhöõng reply sau seõ ñöôïc duøng ñeå cho pheùp ngöôøi göûi tieáp xuùc ñeán ñích ñuùng : 251 User not local ; will forward to Reply naøy chæ cho receiver-SMTP bieát mailbox cuûa user ñoù naèm treân moät host khaùc vaø chæ ñònh forward-path ñuùng ñeå sau ñoù söû duïng. Löu yù moät trong hai host hay user hay caû hai coù theå khaùc nhau . Receiver chòu traùch nhieäm cho vieäc phaân phoái nhöõng message. 551 User not local ; please try Reply naøy chæ cho receiver-SMTP bieát mailbox cuûa user naèm treân moät host khaùc vaø chæ ñònh forward-path ñuùng ñeå söû duïng . Löu yù host hoaëc laø user hay caû hai coù theå khaùc nhau . Receiver töø choái chaáp nhaän mail cho user A. Ngöôøi göûi phaûi ñònh höôùng laïi cho mail ñoù tuyø theo nhöõng thoâng tin ñöôïc cung caáp hoaëc laø traû traû lôøi error cho user khôûi ñaàu.Ví duï sau minh hoaï caùch duøng cuûa nhöõng ñaùp öùng naøy : S: RCPT TO:Postel@USC-ISI.ARPA R: 251 User not local; will forward to Hay S: RCPT TO: R: 551 User not local; please try Mockapetris@USC-ISIF.ARPA 3- Kieåm tra vaø môû roäng : SMTP cung caáp theâm nhöõng ñieåm ñaëc tröng, caùc leänh ñeå kieåm tra moät user name hay môû roäng moät danh saùch ñòa chæ ñöôïc laøm vôùi leänh VRFY vaø EXPN noù duøng ñoái soá kieåu chuoåi kyù töï. Vôùi leänh VRFY chuoãi ñoù laø moät user name, vaø caâu traû lôøi(response) coù theå bao goàm full name cuûa user ñoù vaø phaûi bao goàm mailbox cuûa user ñoù. Vôùi leänh EXPN chuoåi ñoù ñònh danh moät danh saùch ñòa chæ vaø caâu traû lôøi coù nhieàu doøng coù theå chöùa full name cuûa caùc user ñoù vaø phaûi chöùa nhöõng mailbox treân danh saùch ñòa chæ (mailing list). Neáu moät host ñöôïc boå sung leänh VRFY hay EXPN thì ít nhaát nhöõng mailbox cuïc boä phaûi ñöôïc thöøa nhaän nhö laø“user names”. Neáu moät host choïn löïa ñeå thöøa nhaän nhöõng chuoåi khaùc nhö “user names” thì ñieàu ñoù ñöôïc cho pheùp. Trong moät soá host söï phaân bieät giöõa moät mailing list vaø moät bí danh cho single mailbox hôi mô hoà. Töø ñoù moät caáu truùc döõ lieäu phoå bieán coù theå giöõ caû hai kieåu phaàn töû vaø noù coù theå duøng caùc mailing list cuûa moät mailbox. Neáu moät yeâu caàu ñöôïc taïo ra ñeå kieåm tra moät mailing list moät caâu traû lôøi khaúng ñònh coù theå ñöôïc cho neáu treân message nhaän ñöôïc ñaõ ñöôïc ñònh ñòa chæ noù seõ ñöôïc phaân phaùt cho taát caû moïi ngöôøi trong danh saùch ñoù. Maët khaùc moät loãi seõ ñöôïc baùo caùo (e.g., "550 That is a mailing list, not a user"). Neáu moät yeâu caàu ñöôïc taïo ra ñeå môû roäng moät user name moät caâu traû lôøi khaúng ñònh coù theå ñöôïc caáu hình baèng caùch traû veà moät danh saùch chöùa moät teân hay moät loãi coù theå ñöôïc baùo caùo (e.g., "550 That is a user name, not a mailing list"). Trong tröôøng hôïp moät reply nhieàu doøng (thöôøng cho EXPN) laø moät mailbox ñöôïc ñaëc taû treân töøng doøng cuûa reply ñoù moät caùch chính xaùc. Trong tröôøng hôïp naøy moät yeâu caàu nhaäp nhaèng khoù hieåu nhö : “VRFY Smith” coù hai caâu traû lôøi cuûa Smith phaûi laø "553 User ambiguous". Ví duï kieåm tra moät user name S: VRFY Smith R: 250 Fred Smith Hay S: VRFY Smith R: 251 User not local; will forward to Hay S: VRFY Jones R: 550 String does not match anything. Hay S: VRFY Jones R: 551 User not local; please try Hay S: VRFY Gourzenkyinplatz R: 553 User ambiguous. Tröôøng hôïp môû roäng moät mailbox list ñoøi hoûi moät reply nhieàu doøng xem trong ví duï sau: môû roäng moät mailing list (danh saùch ñòa chæ) S: EXPN Example-People R: 250-Jon Postel R: 250-Fred Fonebone R: 250-Sam Q. Smith R: 250-Quincy Smith R: 250- R: 250 Hay S: EXPN Executive-Washroom-List R: 550 Access Denied to You. Nhöõng ñoái soá chuoåi kyù töï cuûa leänh VRFY vaø EXPN khoâng theå vöôït qua giôùi haïn ñöôïc quyeàn treân söï boå sung ña daïng cuûa user name vaø khaùi nieäm mailbox. Treân moät soá heä thoáng noù coù theå daønh rieâng cho ñoái soá cuûa leänh EXPN ñeå laø moät file name cho moät file chöùa moät mailing list nhöng laïi coù moät qui öôùc ña daïng cuûa vieäc ñaëc teân file trong internet. Leänh VRFY vaø EXPN khoâng ñöôïc bao goàm trong söï thöïc thi toái thieåu (trình baøy trong phaàn sau) vaø khoâng ñöôïc ñoøi hoûi ñeå laøm vieäc thay ca khi chuùng ñöôïc thöïc thi. 4- Sending and Mailing : Muïc ñích chính cuûa SMTP laø phaân phoái nhöõng message ñeán nhöõng mailbox cuûa user . Moät dòch vuï raát phoå bieán ñöôïc cung caáp bôûi moät soá host laø ñeå phaân phoái nhöõng message ñeán nhöõng terminal cuûa user( cung caáp cho user laøm vieäc treân host ñoù). Söï phaân phaùt ñeán nhöõng mail box cuûa user ñöôïc goïi laø “mailing”, söï phaân phaùt ñeán nhöõng user terminal ñöôïc goïi laø “sending”. Bôûi vì moät soá host coù söï thöïc thi cuûa sending gaàn gioáng vôùi söï thöïc thi cuûa mailing chuùng laø hai chöùc naêng ñöôïc lieân keát vôùi SMTP. Maëc duø leänh sending khoâng bao goàm trong yeâu caàu thöïc thi toái thieåu( xem phaàn sau). Nhöõng user coù khaû naêng ñieàu khieån vieäc ghi message leân nhöõng terminal cuûa hoï. Haàu heát caùc host cho pheùp chaáp nhaän hay töø choái nhöõng message. Ba leänh sau ñöôïc ñònh nghóa ñeå cung caáp nhöõng option cho sending. Chuùng ñöôïc duøng trong giao dòch mail thay cho leänh MAIL vaø cung caáp cho receiver-SMTP nhöõng ngöõ nghóa giao dòch ñaëc bieät SEND FROM: Leänh SEND ñoøi hoûi mail data ñöôïc göûi ñeán user terminal. Neáu user ñoù khoâng hoaït ñoäng (hay khoâng chaáp nhaän nhöõng terminal message) treân host ñoù moät reply 450 coù theå ñöôïc traû cho moät leänh RCPT. Giao chuyeån mail thaønh coâng khi message ñoù ñöôïc phaân phaùt ñeán terminal. SOML FROM: Leänh naøy laø SEND Or MAIL ñoøi hoûi mail data ñöôïc phaân phaùt ñeán terminal cuûa user neáu user ñoù ñang hoaït ñoäng (vaø chaáp nhaän nhöõng message terminal) treân host ñoù. Neáu user khoâng hoaït ñoäng (haykhoâng chaáp nhaän terminal message) thì mail data ñöôïc ñöa vaøo trong mailbox cuûa user . Giao chuyeån mail thaønh coâng khi message ñoù ñöôïc phaân phaùt ñeán terminal hay mailbox. SAML FROM: Leänh naøy laø SEND And MAIL ñoøi hoûi mail data ñöôïc phaân phaùt ñeán terminal cuûa user neáu user ñoù ñang hoaït ñoäng (vaø chaáp nhaän nhöõng message terminal) treân host ñoù. Trong nhöõng taát caû tröôøng hôïp mail data ñöôïc ñöa vaøo trong mailbox cuûa user. Giao dòch mail thaønh coâng khi message ñoù ñöôïc phaân phaùt ñeán mailbox. Nhöõng maõ reply töông töï ñöôïc duøng cho leänh MAIL cuõng ñöôïc duøng cho nhöõng leänh naøy. 5- Opening and Closing : Ngay thôøi ñieåm maø keânh giao chuyeån ñöôïc open coù moät söï trao ñoåi ñeå ñaûm baûo nhöõng host ñoù ñang giao tieáp vôùi nhöõng host khaùc. Hai leänh sau ñöôïc duøng trong vieäc ñoùng môû keânh truyeàn HELLO QUIT Trong leänh HELLO host naøy göûi ñi nhöõng nhaän daïng leänh cuûa noù coù theå ñöôïc dòch nhö "HELLO, I am ". * Ví duï môû keát noái : Opening R : 220 BBN-UNIX.ARPA Simple Mail Transfer Service Ready S : HELO USC-ISIF.ARPA R: 250 BBN-UNIX.ARPA * Ví duï ñoùng keát noái : Closing S: QUIT R :221 BBN-UNIX.ARPA Service transmission channel. 6- Chia ca (Relaying) : Forward-path coù theå laø moät loä trình nguoàn cuûa form "@ONE, @TWO:JOE@THREE" vôùi ONE ,TWO, THREE laø caùc host. Form naøy ñöôïc duøng ñeå nhaán maïnh söï phaân bieät giöõa moät address vaø moät route. Mailbox laø moät address tuyeät ñoái, vaø route laø thoâng tin veà vieäc laáy chuùng nhö theá naøo . Nhöõng thaønh phaàn cuûa forward-path ñöôïc chuyeån ñeán reverse-path khi message ñoù ñöôïc chia ca töø moät server-SMTP ñeán moät server-SMTP khaùc. Reverse-path laø moät loä trình nguoàn trôû veà (khaùc vôùi moät loä nguoàn laø töø vò trí hieän haønh cuûa message ñeán ñieåm khôûi ñaàu cuûa message ñoù). Khi moät server SMTP xoùa phaàn nhaän daïng cuûa noù trong forward-path vaø cheøn phaàn nhaän daïng cuûa noù vaøo trong reverse-path, noù phaûi duøng caùi teân maø noù ñö

Các file đính kèm theo tài liệu này:

  • docCN3.doc