Trong mấy năn gần đây sự phát triển mạnh mẽ của nghành CNTT đã làm thay đổi cục diện thế giới. Dường như mọi hoạt động luôn gắn liền với CNTT.
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC KINH DOANH VÀ CÔNG NGHỆ HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
LUẬN VĂN TỐT NGHIỆP
Trang 2Hà Nội, tháng 4 năm 2010
Trang 3LỜI MỞ ĐẦU
Trong mấy năn gần đây sự phát triển mạnh mẽ của nghành CNTT đã làm thayđổi cục diện thế giới Dường như mọi hoạt động luôn gắn liền với CNTT Ngày11/01/2006 Việt Nam chính thức là thành viên của WTO, từ khi gia nhập WTO thìViệt Nam cũng có rất nhiều thuận lợi và khó khăn Trước tình hình đó thì việc phổcập tin học, đào tạo CNTT, vận dụng CNTT vào các lĩnh vực khác nhất là trongKinh tế là rất cần thiết Nhưng khó khăn gặp phải ở đây là chính là chi phí mua và
sử dụng các sản phẩm phần mềm thương mại (Phần mềm có bản quyền) khá đắtcộng thêm tình hình vi phạm bản quyền phần mềm ở nước ta chiếm tỷ lệ cao Vậy,
để có và sử dụng những phần mềm giá rẻ thậm chí là miễn phí mà không vi phạmbản quyền, dễ sử dụng và tính bảo mật cao thì giải pháp tối ưu là sử dụng nhữngphần mềm mã nguồn mở Trong nền kinh tế mở như hiện nay, một doanh nghiệpmuốn thu hút khách hàng và tạo ra được nhiều lợi nhuận thì ngoài các yếu tố cầnthiết khác cần phải có thì việc quảng bá thương hiệu, giới thiệu và quảng cáo sảnphẩm, dịch vụ và giao dịch thuận lợi và nhanh chóng của doanh nghiệp với kháchhàng và các đối tác cũng rất quan trọng Giải pháp tối ưu cho những vấn đề nêu trên
đó là xây dựng một Website cho doanh nghiệp, đây là cách mà các doanh nghiệp sửdụng nhiều nhất trong thời đại CNTT phát triển mạnh như hiện nay nhất là sự pháttriển của Internet Nhưng vấn đề khó khăn mà các doanh nghiệp và nhất là cácdoanh nghiệp vừa và nhỏ ở nước ta gặp phải đó là để xây dựng và quản trị mộtWebsite tốt, quản trị dễ dàng mà chi phí rẻ không phải đơn giản, thêm vào đó khôngphải doanh nghiệp nào cũng có những nhân viên chuyên môn cao về CNTT Đứngtrước tình hình và những vấn đề nêu trên, với tư cách là một sinh viên nghànhCNTT em đã mạnh dạn chọn đề tài “ ỨNG DỤNG MÃ NGUỒN MỞ TRONGVIỆC XÂY DỰNG VÀ QUẢN TRỊ WEBSITE” để tổng hợp tất cả các vấn đề liênquan đến Mã nguồn mở trong lĩnh vực công nghệ Web nhằm đóng góp một phầnnào giải quyết các vấn đề nêu trên
Trang 4mà chủ yếu là miễn phí về bản quyền Người dùng có quyền sửa đổi, cải tiến, pháttriển, nâng cấp theo một số nguyên tắc chung qui định trong giấy phép PMNM (ví
dụ General Public Licence – GPL) mà không cần xin phép ai, điều mà họ khôngđược phép làm đối với các phần mềm nguồn đóng (hay phần mềm thương mại).Nhà cung cấp phần mềm nguồn mở có quyền yêu cầu người dùng trả một số chi phí
về các dịch vụ bảo hành, huấn luyện, nâng cấp, tư vấn, vv tức là những dịch vụthực sự đã thực hiện để phục vụ người dùng, nhưng không được bán các sản phẩmnguồn mở vì nó là tài sản của trí tuệ chung, không phải là tài sản riêng của một nhàcung cấp nào
Có 2 học thuyết chính về PMNM là:
Tổ chức phần mềm tự do FSF(Free Software Foundation)
Phần mêm miễn phí nhằm mục đích bảo vệ quyền tự do của người dùng:
Quyền tự do chạy chương trình với bất kỳ mục đính nào (nhưng phải tuântheo giấy phép GNU)
Quyền tự do nghiên cứu cách thức vận hành của một chương trình và thíchứng nó cho phù hợp với nhu cầu của mình (Quyền truy cập mã nguồn là điều kiệntiên quyết cho quyền tự do này.)
Quyền tự do thêm mới các chức năng cho một chương trình và công bốnhững tính năng mới đó đến công chúng để toàn cộng đồng được hưởng lợi
Chương trình sáng kiến nguồn mở OSI(Open Source Initiative)
Là tổ chức quốc tế quản lý và xúc tiến định nghĩa mã nguồn mở, đồng thời phêchuẩn giấy phép phần mềm nguồn mở thông qua chương trình và chứng chỉ OSI.OSI duy trì một danh sách các giấy phép phần mềm nguồn mở, những giấy phép
Trang 5tuân theo định nghĩa mã nguồn mở nếu sản phẩm được công bố, phân phối có kèmtheo các giấy phép trong danh sách giấy phép của OSI Chú trọng giá trị kỹ thuậtcủa việc tạo ra những phần mềm mạnh, có độ tin cậy cao và phù hợp với giới kinhdoanh, đặc biệt là lợi ích thực tiễn của phương pháp xây dựng và quảng bá PMNM.
2 Giấy phép nguồn mở GNU(General Public License – GPL).
Giấy phép Công cộng GNU (GNU General
Public License, viết tắt GNU/GPL hay chỉ GPL) là giấy phép phần mềm tự do phổ biến nhất, mới
đầu do Richard Stallman viết cho dự án GNU
Phiên bản hiện hành của giấy phép này là phiên
bản 3 năm 1997, phiên bản được sử dụng nhiều
nhất hiện nay là phiên bản 2 năm 1991
3 Lịch sử ra đời và phát triển của mã nguồn mở.
Năm 1984, Richard Stallman, nhân viên phòng thí nghiệm trí tuệ nhân tạo củaHọc viện MIT (Massachusett Institute of Technology) – Mỹ, bắt đầu cuộc vận độngcho phần mềm miễn phí Ông đã xây dựng dự án GNU và cho ra giấy phép Mãnguồn mở GPL, hai nền tảng then chốt cho sự phát triển của Mã nguồn mở
PMNM thực sự trở thành một khuynh hướng rõ rệt trong khoảng những năm
1991, sau khi một sinh viên Phần Lan 25 tuổi, Linus Torvalds đã phát triển và công
bố thành phần cốt yếu của hệ điều hành Linux Và đến năm1997 GNU/Linux chiếm25% thị trường máy chủ
Năm 1998, The Open Source Initiative (OSI) – một tổ chức xúc tiến phần mềmnguồn mở miễn phí được thành lập bởi hai nhà lập trình Eric Raymond và BrucePerens Cũng trong năm 1998 Nescape công bố mã nguồn Navigator, thuật ngữ
“Nguồn mở” ra đời Ra đời không lâu nhưng PMNM đã trỏ thành hiện tượng toàncầu
Hiện nay, mã nguồn mở - Cuộc Cách mạng của công nghiệp phần mềm đã vàđang phát triển như một tất yếu
Trang 64 Lợi ích và hạn chế của việc sử dụng PMNM.
4.1 Lợi ích của PMNM.
Ưu điểm đầu tiên là chi phí thấp Chu kỳ sống của một PMNM thường bắt đầu
là phần mềm nhỏ, miễn phí Phần mềm này thường sẽ phát triển tới bản beta, chotới khi nhận được sự ủng hộ và tài trợ rộng rãi của cộng đồng Những phần mềmnhư vậy sẽ nhanh chóng có được thương hiệu riêng và nhóm phát triển bắt đầu đưa
ra các dịch vụ hỗ trợ người dùng có chi phí.Ngoài ra mã nguồn mở có giai đoạnkiểm nghiệm lâu dài hơn, cho phép nhiều thời gian hơn để phát triển và hướng tới
sự ổn định cao hơn Đưa vào sử dụng khi đã ổn định đồng nghĩa với giảm sự cố vàchi phí
Ưu điểm thứ 2 là tính đa dạng của open source Một phần mềm tốt trên môitrường này sẽ nhanh chóng được một nhóm phát triển khác triển khai trên môitrường khác Các tính năng cũng sẽ được cộng đồng PMNM bổ sung vào Để làmnhư vậy, các phần mềm đều có kiến trúc mở, theo dạng module để có thể sẵn sàngcấu hình các tính năng mới
Ưu điểm thứ 3 là độ ổn định và ít lỗi Một khi đã chọn giải pháp PMNM, taluôn có thể biết rõ hiện còn tồn tại bao nhiêu bug, các bug sẽ sửa lúc nào, phiên bảnnào, Điểm này khác hẳn những phần mềm PMND ở chỗ chúng vẫn có bug nhưngkhông biết lúc nào mới được sửa Bản chất của PMNM là phát triển bởi nhóm nhỏnhưng dùng và test bởi nhiều người, có thể hàng trăm, hàng ngàn người
Ưu điểm thứ 4 là tính bảo mật Với các phần mềm PMND, sự bảo mật có đượcbằng cách che giấu mã nguồn, ngược lại, PMNM cho phép nhiều người dùng có thểnhận biết các đoạn mã cũng như tuỳ biến chúng Do PMNM được phát triển bởi cảcộng đồng nên sự phản ứng của mọi người sẽ diễn ra nhanh hơn khi sự cố bảo mậtđược phát hiện Các lỗi hay lỗ hổng bảo mật sẽ được sửa nên các PMNM sẽ cần ítmiếng vá (patch) và các cuộc tấn công nguy hiểm sẽ ít hơn
Với khả năng định dạng không hạn chế nên các công ty, tổ chức hay cá nhân có thểtùy biến cho phù hợp với nhu cầu và mục đích của mình Điều này cho phép mã nguồn
mở liên tục được phát triển dẫn đến ổn định và tin cậy hơn, do đó hiệu năng của PMNM
sẽ cao hơn Ngoài ra dùng PMNM sẽ giảm sự phụ thuộc vào nhập khẩu CNTT, không lệthuộc vào nhà sản xuất và tình trạng vi phạm bản quyền phần mềm
Trang 7Phát triển một hệ thống open source hoàn toàn không dễ dàng bởi nó cần đượcthiết kế, tổ chức đúng đắn và chuyên nghiệp ngay từ đầu Nếu không, sẽ không thểtiếp nhận hay đủ "mở" để được cộng đồng PMNM hỗ trợ và tiếp nhận Chính vì lý
do này mà hầu hết các PMNM đều được phát triển bởi các lập trình viên chuyênnghiệp, giàu kinh nghiệm, giữ vị trí quan trọng tại các công ty IT hay các phòng ITlớn Những yếu tố này cho thấy chất lượng của các open source hòan toàn khôngthua kém các phần mềm sản xuất và bán bởi các hãng phần mềm nổi tiếng
4.2 Hạn chế của mã nguồn mở
Phần mềm open source chưa đạt chuẩn về mặt hỗ trợ khách hàng tốt do thườngkhông có một công ty, một đại diện nào đứng ra quản lý khách hàng Tất cả các yêucầu hầu như không thể hỗ trợ bằng điện thọai mà phải dùng forum, mail haynewsgroup,
Các PMNM thường không quan tâm đến việc quản cáo, giới thiệu sản phẩm Chúngthường được biết tới nhiều bởi cộng đồng những nhà phát triển phần mềm, nhữngngười chuyên về IT nhiều hơn là các doanh nghiệp Với nhóm phát triển opensource, khái niệm về "bán" được thay bằng "nhận tài trợ" Vì vậy, PMNM khôngmong đợi tài chính từ các cá nhân người dùng mà dựa vào tài trợ chủ yếu từ những
tổ chức lớn
PMNM mang tính chất "mở" trong các tính năng của phần mềm Điều này cónghĩa là đôi khi phần mềm trở nên khó sử dụng bởi sự phức tạp quá hay đơn giảnquá của một tính năng mà nó cung cấp Bản chất của việc đưa ra một tính năng nhưvậy là bởi nhóm phát triển muốn cộng đồng PMNM có nhiều khả năng để thay đổi
và biến hóa nó nên cần tuân theo những chuẩn nhất định để giao tiếp hay tích hợpvới các phần mềm khác
Mã nguồn mở thường chỉ tập trung vào các mã của nó mà ít chú ý đến thiết kếgiao diện và phát triển các tiện ích, gây nên sự nhàm chán và bất tiện cho ngườidùng Các ứng dụng kinh doanh đặc thù và thói của quen người dùng cũng là hạnchế của PMNM Tuy nhiên hiện nay các sản phẩm PMNM đã hướng tới giao diệnngười dùng thân thiện hơn và phát triển nhiều ứng dụng hơn
Trang 85 Một số dự án Mã nguồn mở thành công.
5.1 HĐH GNU/Linux.
Linux là tên gọi của một hệ điều hành máy tính và cũng là tên hạt nhân của hệđiều hành Nó có lẽ là một ví dụ nổi tiếng nhất của phần mềm tự do và của việc pháttriển MNM
Phiên bản Linux đầu tiên do Linus Torvalds viết vào năm 1991, lúc ông còn làmột sinh viên của Đại học Helsinki tại Phần Lan Ông làm việc một cách hăng saytrong vòng 3 năm liên tục và cho ra đời phiên bản Linux 1.0 vào năm 1994 Bộphận chủ yếu này được phát triển và tung ra trên thị trường dưới bản quyền GNUGeneral Public License Do đó mà bất cứ ai cũng có thể tải và xem mã nguồn củaLinux
Một cách chính xác, thuật ngữ "Linux" được sử dụng để chỉ Nhân Linux,nhưng tên này được sử dụng một cách rộng rãi để miêu tả tổng thể một hệ điều hànhgiống Unix (còn được biết đến dưới tên GNU/Linux) được tạo ra bởi việc đóng góinhân Linux cùng với các thư viện và công cụ GNU, cũng như là các bản phân phốiLinux Thực tế thì đó là tập hợp một số lượng lớn các phần mềm như máy chủ web,các ngôn ngữ lập trình, các hệ quản trị cơ sở dữ liệu, các môi trường làm việcdesktop như GNOME và KDE, và các ứng dụng thích hợp cho công việc văn phòngnhư OpenOffice
Khởi đầu, Linux được phát triển cho dòng vi xử lý 386, hiện tại hệ điều hànhnày hỗ trợ một số lượng lớn các kiến trúc vi xử lý, và được sử dụng trong nhiều ứngdụng khác nhau từ máy tính cá nhân cho tới các siêu máy tính và các thiết bị nhúngnhư là các máy điện thoại di động
Ban đầu, Linux được phát triển và sử dụng bởi những người say mê Tuynhiên, hiện nay Linux đã có được sự hỗ trợ bởi các công ty lớn như IBM vàHewlett-Packard, đồng thời nó cũng bắt kịp được các phiên bản Unix độc quyền vàthậm chí là một thách thức đối với sự thống trị của Microsoft Windows trong một
số lĩnh vực Sở dĩ Linux đạt được những thành công một cách nhanh chóng là nhờvào các đặc tính nổi bật so với các hệ thống khác, chi phí phần cứng thấp, tốc độcao (khi so sánh với các phiên bản Unix độc quyền) và khả năng bảo mật tốt, độ tincậy cao (khi so sánh với Windows) cũng như là các đặc điểm về giá thành rẻ, không
Trang 9bị phụ thuộc vào nhà cung cấp Một đặc tính nổi trội của nó là được phát triển bởimột mô hình phát triển phần mềm nguồn mở hiệu quả.
Các bản phân phối Linux
Linux hiện nay có nhiều bản phân phối khác nhau, một phần là bởi vì tính chấtnguồn mở của nó Sau đây là một số bản phân phối chủ yếu:
Tên bản phân
phối
Phiên bảnmới nhất Trang web chính thức
Các bản tươngtự
Ubuntu 9.10 www.ubuntu.com
Kubuntu, Xubuntu, Edubuntu,Debian
Trang 10Linpus http://www.linpus.com/ Linpus Linux
5.2 BIND (máy chủ tên miền)
BIND( Berkely Internet Name Domain) là máy chủ tên miền DNS trênInternet, đặc biệt là trên các hệ thống tựa Unix Được hỗ trợ Internet SystemsConsortium, BIND ban đầu được tạo bởi 4 sinh viên ở trường University ofCalifornia, Berkely và phiên bản đầu tiên 4.3BSD Sự phát triển của BSD 9 chính là
sự kết hợp giữa các cam kết thương mại và quân sự hầu hết các tính năng củaBIOND 9 được tài trợ bởi các nhà phân phối UNIX nhằm cạnh tranh với hệ thốngDNS do Microsoft đưa ra
5.3 Apache (máy chủ Web)
Apache HTTP Server, còn được gọi ngắn gọn là Apache, là một hệ thống máychủ Web phổ biến hiện nay trên môi trường Wordl Wide Web Apache được pháttriển và bảo trì bởi một cộng đòng phát triển nguồn mở (Apache SoftwareFoundation) có thể chạy trên các hệ điều hành khác nhau: Unix, FreeBSD, Linux,Solaris, Novell NetWare, Mac OS X, và Microsoft Windows Apache thuộc dạngfree software và open source software dưới giấy phép Apache License Chịu tráchnhiêm nhận và thực hiện các yêu cầu do chức năng trình duyệt mạng gửi đến, máychủ Apache là một trong những nền tảng của hệ thống Mạng Toàn Cầu (WWW)như ta biết đến ngày nay Apache đã vươn lên vị trí số một về máy chủ mạng kể từnăm 1996 và hiện đang nắm giữ 62,53% thị trường máy chủ mạng toàn cầu, gấphơn hai lần thị phần của đối thủ cạnh tranh sát nhất là máy chủ IIS của Microsoft
Trang 11Tất nhiên, những số liệu thống kê ở trên luôn thay đổi hàng tháng Số liệu cập nhật nhất có thể tìm trên trang web “Khảo sát Máy chủ mạng” do Netcraft vận hành,tại địa chỉ http://news.netcraft.com/archives/web_server_survey.html
5.4 Sendmail (máy chủ thư điện tử)
Sendmail là phần mềm truyền nhận mail (MTA – mail transfer agent) Đây làmột dự án open source, free software của cộng đòng Unix Sendmail đã trở thànhMTA phổ biến nhất trên Internet Sự phổ biến này một phần là do sự phổ biến củacác HĐH tựa Unix Kết quả khảo sát do D.J Bernstein tiến hành năm 2001 cho thấyUnix Sendmail hiện đang nắm giữ thị phần lớn nhất: 42% toàn bộ các máy chủemail trên thế giới Như vậy và tỷ lệ chiếm lĩnh của ứng dụng nguồn mở này cònlớn hơn cả thị phần cộng gộp của hai đối thủ liền sau là Microsoft Exchange với18% thị trường và Unix qmail với 17% thị trường Lưu ý rằng qmail là một dạngmáy chủ email dựa trên nền Unix nhưng không phải là phần mềm nguồn mở do cácđiều kiện cấp phép sử dụng quá hạn chế
5.5 Open SSH (Công cụ quản trị mạng an toàn)
SSH ( Secure Shell) là một giao thức mạng dùng để thiết lập kết nối mạng mộtcách bảo mật SSH hoạt động ở lớp trên trong mô hình phân lớp TCP/IP Các công
cụ SSH (như là OpenSSH, ) cung cấp cho người dùng cách thức để thiết lập kếtnối mạng được mã hoá để tạo một kênh kết nối riêng tư Hơn nữa tính năngtunneling của các công cụ này cho phép chuyển tải các giao vận theo các giao thứckhác Do vậy có thể thấy khi xây dựng một hệ thống mạng dựa trên SSH, chúng ta
sẽ có một hệ thống mạng riêng ảo VPN đơn giản SSH là một chương trình tươngtác giữa máy chủ và máy khách có sử dụng cơ chế mã hoá đủ mạnh nhằm ngănchặn các hiện tượng nghe trộm, đánh cắp thông tin trên đường truyền Các chươngtrình trước đây: telnet, rlogin không sử dụng phương pháp mã hoá Vì thế bất cứ aicũng có thể nghe trộm thậm chí đọc được toàn bộ nội dung của phiên làm việc bằngcách sử dụng một số công cụ đơn giản Sử dụng SSH là biện pháp hữu hiệu bảo mật
dữ liệu trên đường truyền từ hệ thống này đến hệ thống khác
Cách thức làm việc của SSH
SSH làm việc thông qua 3 bước đơn giản:
Trang 12 Định danh host - xác định định danh của hệ thống tham gia phiên làm việcSSH.
Mã hoá - thiết lập kênh làm việc mã hoá
Chứng thực - xác thực người sử dụng có quyền đăng nhập hệ thống
5.6 Open Office (bộ ứng dụng văn phòng)
Open office là bộ ứng dụng văn phòng miễn phí, mã nguồn mở được xây dựng trên phiên bản StarOffice mã nguồn mở của Sun Microsystems OpenOffice có thể chạy trên các HĐH Windows, Solaris và Linux
5.7 Firefox (trình duyệt Web)
Firefox được phát triển và bảo trì bởi một dự án phát triển và bảo trì bởi một dự
án phát triển nguồn mở của Mozilla nhằm cạnh tranh với trình duyệt Web Internet Explorer của Microsoft Firefox có thể chạy trên các HĐH Linux và MS Windows Firefox có nhiều add-ons và themes được phất triển bởi một cộng đồng nguồn mở đông dảo ở khắp nơi trên thế giới
6 Các giải pháp mã nguồn mở.
Các ứng dụng quản trị nội dung ( Content Managerment Systems - CMS )
Các Ứng dụng trong giáo dục ( E-learning )
Các ứng dụng trong kinh doanh ( Customer Relationship Managerment – CRM, Enterprise Resource Planning – ERP, eCommerce, eGroupware,…)
7 Tình hình phát triển và ứng dụng PMNM trên thế giới.
Trang 13Theo đánh giá của giới chuyên môn, phần mềm nguồn mở với nền tảng là hệđiều hành Linux là một cộng đồng phần mềm tin cậy đang phát triển rất nhanh.Trong thời gian qua, các phần mềm nguồn mở thường chủ yếu gắn với môi trườngUNIX và mạng Internet Do đó chúng thường được dùng trong các máy chủ, trongcác máy phân phối dịch vụ và chứa dữ liệu nội tại trong các hệ thống thông tin củacác cơ quan và trên Internet Hiện tại, phần mềm nguồn mở đã dần dần xâm nhậpvào các máy khách, đặc biệt sau khi xuất hiện hàng loạt các công cụ văn phòng đủchất lượng cho các ứng dụng chuyên nghiệp, trong đó có StarOffice, OpenOffice.Với những phiên bản sau này, Sun Micro System đã thương mại hóa StarOffice,nhưng OpenOffice vẫn tiếp tục là phần mềm nguồn mở miễn phí Linux đã trởthành một hệ điều hành cho phép thực hiện các ứng dụng văn phòng theo các chuẩnthông dụng trên thị trường như Word, Excel …
Nhiều công ty Tin học hàng đầu trên thế giới (như IBM, HP, DEC, SunSolaris…) đã hộ trợ cộng đồng phần mềm nguồn mở Do tác động của những công
ty này, và cũng muốn làm giảm vai trò thống trị của Microsoft, một số công ty kháccũng đưa sản phẩm của họ chạy trên nền Linux với giá thấp hơn nhiều so với cácsản phẩm tương tự chạy trên các hệ điều hành độc quyền Các hệ quản trị CSDLquan hệ Oracle và Informix, các phần mềm SAP, môi trường phát triển DelphiInprise, các công cụ văn phòng Corel … đã chạy tốt trên nền hệ điều hành Linux.Thêm vào đó, tồn tại các sản phẩm thương mại chất lượng tốt, cho phép mô phỏngWindows dưới Linux và thi hành các chương trình viết cho môi trường Windows.Ngày nay, sự phát triển của hệ điều hành Linux đã vượt ra khỏi phạm vi của cácnhà công nghệ Chính phủ nhiều nước, điển hình nhất là Chính phủ Trung Quốc, đãthực sự tham gia vào quá trình ứng dụng và phát triển phần mềm nguồn mở, màtrước hết là việc tăng cường ứng dụng và phát triển hệ điều hành Linux
Đồng thời ngày càng nhiều tổ chức trên toàn thế giới và doanh nghiệp hướng sửdụng tới Linux như Quân đội và Hải quân Mỹ, Cộng hoà Liên bang Đức, Bưu điện
Mỹ, Yellow Cab, NASA, Ikea, Fujitec, Sony, Corel Computers, Digital Domain,Mercedes-Benz, Cisco, Netscape, IBM, Apple, Digital Equipment, tạp chí Byte …
Trang 14Riêng phần mềm Apache đã chiếm tới 60% thị phần máy chủ Web trên Internet.
Có tới 90% máy chủ tên miền (Domain Name Server) ở Mỹ, 70% máy chủ thư tínđiện tử và 60% máy chủ web trên thế giới đã dùng hệ điều hành Linux
Thị phần hệ điều hành Linux trong thị trường hệ điều hành đã phát triển nhanhhơn dự báo, đã lên hàng thứ nhì trong thị trường hệ điều hành vào năm 1999 Đếngiữa năm 2001, có 56% số doanh nghiệp toàn cầu sử dụng phần mềm nguồn mở.Tại khu vực Tây Âu, theo đánh giá và dự báo của hãng IDC (International DataCorporation), các Chính phủ và công ty đã đầu tư hỗ trợ Linux và các ứng dụngnguồn mở khoảng 98 triệu US$ vào năm 2004 Con số này lên tới khoảng 228 triệuUS$ vào năm 2008
Tháng 6-2001, Bộ Văn hóa Pháp đã chuyển 400 máy chủ sang GNU/Linux, Tổngcục Thuế quốc gia Pháp, với các ứng dụng mà vấn đề an toàn và bảo mật dữ liệuđược coi là quan trọng hàng đầu, cũng đã chuyển 950 máy chủ sang hệ điều hànhnguồn mở
Chính phủ Đức đã đưa ra quy định ngăn cấm sử dụng các hệ điều hành mã nguồnđóng trong các hệ thống máy tính nhạy cảm Nhằm giám sát và bảo vệ các mạngmáy tính của các quốc gia thành viên, Cộng đồng châu Âu đã khuyến cáo các tổchức của Cộng đồng và các cơ quan công quyền của các quốc gia thành viên
“khuyến khích các dự án dùng phần mềm có mã nguồn công khai, vì đó là cách duynhất bảo đảm trong phần mềm không có các back door
Tại khu vực Châu Á, phần mềm nguồn mở và đặc biệt là Linux, phát triển rấtmạnh Cũng theo thông tin từ hãng IDC, thị trường các hệ điều hành Linux tạiTrung Quốc đạt giá trị 41,9 triệu USD vào năm 2008 và tại Nhật Bản đạt giá trị 105triệu USD vào năm 2007
Từ nhiều năm qua, Chính phủ các nước châu Á đã luôn khuyến khích và ra sứcđẩy mạnh việc nghiên cứu, áp dụng hệ điều hành nguồn mở và Chính phủ TrungQuốc được coi là đi đầu trong việc cỗ vũ phát triển ứng dụng và phát triển hệ điềuhành Linux
Tháng 9-2003, Trung Quốc mời hãng Hewlett-Packard trợ giúp công ty RedFlagLinux điều hành hệ RedFlag Server 4 trên các tuyến máy chủ Công ty Hewlett-
Trang 15Packard cũng đã thỏa thuận với Bộ Công nghệ Thông tin Trung Quốc giúp xâydựng một phòng thí nghiệm Linux với kinh phí lên đến khoảng 24 triệu đôla.
Hiện tại, công ty Hewlett-Packard đã trở thành nhà cung cấp máy tính lớn đầutiên trên thế giới cung cấp các máy tính cá nhân hoạt động với hệ điều hành Linux,đặc biệt chú ý tới thị trường châu Á Thông qua Chi nhánh Hewlett-Packard tạiNhật Bản, Hewlett-Packard đã tuyên bố sẽ khởi thủy việc cung cấp máy vi tínhdùng hệ Linux tại 12 thị trường chủ yếu của châu Á như Trung Quốc, Hồng Kông,Hàn Quốc, Malaysia, Thái Lan, Singapore, Đài Loan, Philippines, Indonesia và ViệtNam Nếu như Dự án tại châu Á thành công thì công ty Hewlett-Packard sẽ mởrộng thị trường máy vi tính với hệ điều hành Linux sang Bắc Mỹ và châu Âu trongtương lai
Trong môi trường thuận lợi được tạo ra từ phía Chính phủ, Công ty phần mềmRed Flag của Trung Quốc và công ty Miracle Linux của Nhật cùng hợp tác tạo nên
hệ điều hành Asianux Đội ngũ nhân lực phát triển chính là những chuyên viên đãlàm việc, được giám sát tại Trung tâm phát triển Oracle - Beijing, Trung Quốc Khihoàn thành, Asianux được công nhận là một hệ điều hành đạt chuẩn chất lượng của
hệ thống Linux toàn cầu Asianux còn nhận được sự ủng hộ từ các công ty AMD,Dell, HP, Langchao… Như vậy, Asianux sẽ trở thành hệ điều hành Linux chuẩn đầutiên cho châu Á
Tham gia vào xu thế phát triển đó, Hàn Quốc đã tiến hành các cuộc ngoại giaothương lượng với người đại diện cho Asianux để cùng nghiên cứu và phát triển hệđiều hành này Các cơ quan Chính phủ của Đài Loan cũng tích cực triển khai việc
sử dụng hệ điều hành Linux
Tại khu vực Nam Mỹ, Chính phủ Braxin là rất tích cực trong việc ứng dụng vàphát triển phần mềm nguồn mở, đặc biệt đối với hệ điều hành Linux Braxin đã trởthành nước đầu tiên trên thế giới mà Chính phủ yêu cầu mọi công ty hoặc việnnghiên cứu nhận tài trợ của Chính phủ phải phát triển các phần mềm phát hành dướidạng nguồn mở
8 Tình hình phát triển và sử dụng mã nguồn mở ở Việt Nam.
Trang 16Linux vào Việt nam đầu những năm 1990 cùng với sự du nhập của Internet Phongtrào PMNM bắt đầu xuất hiện bằng sự hình thành các nhóm nghiên cứu Linux,ngoài ra còn được ứng dụng tại các trung tâm đào tạo: Viện tin học Pháp ngữ, Đạihọc quốc gia HCM, ĐH Bách khoa, ĐH Cần Thơ, ĐH Huế Có hai sản phẩm quantrọng: Hệ điều hành Linux, các ứng dụng Tin học văn phòng được việt hóa bởi ViệtKhang (Vietkey Linux), CMC Ngoài ra còn có các sản phẩm nhúng trên các thiết
bị cầm tay Đối với các thiết bị cầm tay, nhúng: CDIT(Tổng công ty bưu chính Viễnthông), Vietkey group, Cadpro Ứng dụng trên Web: Nhất Vinh – phần mềm thiết
kế & quản lý Web Máy tính hiệu năng cao: ĐHBK mô phỏng luyện kim, Viện toánhọc – các sản phẩm mô phỏng dự báo thời tiết, công ty AIC bộ Quốc phòng cho cácnhiệm vụ huấn luyện, đào tạo sử dụng trang thiết bị quốc phòng Hợp tác Quốc tế:IBM, Sun, UNDP, Hàn quốc, Trung quốc, Nhật bản
Quyết định 235/QĐ-TTg ngày 2/3/2004 của Thủ tướng Chính phủ khẳng định quyếttâm của Chính phủ và nền CNTT Việt Nam trong việc ứng dụng và phát triển phầnmềm nguồn mở ở nước ta
và phát triển phần mềm nguồn mở đòi hỏi nhân lực phát triển phần mềm trình độcao, đủ năng lực khai thác và phát triển phần mềm nguồn mở Tuy nhiên, hiện tại ởViệt Nam đội ngũ này có số lượng ít và đa phần trong số đó đang triển khai pháttriển phần mềm theo cách thức truyền thống của phần mềm độc quyền
Một số thuận lợi
Việc sử dụng phần mềm nguồn mở ngày càng được phổ biến trên thế giới Xu thế
sử dụng Linux trên thế giới càng ngày càng tăng, thể hiện qua việc tăng nhanh lên
về số lượng, và mở rộng hơn về phạm vi hoạt động của các đơn vị sử dụng Linux.Hiện nay trên Internet, số lượng phục vụ Web trên nền Linux và các công nghệ liên
Trang 17quan chiếm một tỷ lệ rất lớn Theo thống kê từ số lượng các dự án phần mềm nguồn
mở đang được tiến hành (SourceForge.net), xu thế tăng tỷ lệ sử dụng phục vụ Webtrên Linux vẫn đang tiếp diễn
Cùng với xu thế phát triển Linux trên thế giới, các hãng phần mềm Linux cũng
đã cải tiến nhiều định hướng thân thiện với người dùng hơn Các hệ điều hànhLinux ngày càng trở nên dễ sử dụng, hỗ trợ nhiều phần cứng và ngày càng có nhiềucác ứng dụng hơn trên nền Linux
Thuận lợi từ chính sách phát triển phần mềm nguồn mở của Chính phủ Quyếtđịnh số 235/QĐ-TTg ngày 02-3-2004 của Thủ tướng Chính phủ phê duyệt Dự ántổng thể “Ứng dụng và phát triển phần mềm nguồn mở ở Việt Nam giai đoạn 2004-2008” đã chính thức trở thành điểm mốc đánh dấu việc bắt đầu triển khai Phần mềmnguồn mở một cách có hệ thống tại Việt Nam
Ngày 21-4-2005, Tập đoàn Intel đã ký văn bản hợp tác với Bộ Khoa học - Côngnghệ Việt Nam về việc Intel hỗ trợ triển khai thực hiện “Dự án tổng thể về ứngdụng và phát triển phần mềm nguồn mở của Việt Nam” Năm nội dung hỗ trợ chính
là Xây dựng một phòng thí nghiệm phần mềm nguồn mở, Đào tạo nguồn nhân lực
về phần mềm nguồn mở cho Việt Nam, Hỗ trợ một số công ty trong nước tiếp cậncông nghệ, công cụ phần mềm nguồn mở, Tư vấn các vấn đề liên quan đến phầnmềm nguồn mở, Tuyên truyền về phần mềm nguồn mở trong cộng đồng
Quyết tâm ứng dụng và phát triển phần mềm nguồn mở của Nhà nước ta đượcthể hiện thông qua Quyết định 235/QĐ-TTg của Chính phủ và thông báo của BộKhoa học và Công nghệ, vừa tạo những điều kiện thuận lợi phát triển phần mềmnguồn mở tại Việt Nam vừa đòi hỏi nền công nghiệp phần mềm Việt Nam phảinhanh chóng giải quyết một loạt các vấn đề khi phát triển phần mềm nguồn mở
Trang 18Chương II – Tổng quan về Internet và hệ thống Web.
I – Internet.
Internet là một hệ thống thông tin toàn cầu có thể được truy nhập công cộng gồmcác mạng máy tính được liên kết với nhau Hệ thống này truyền thông tin theo kiểunối chuyển gói dữ liệu (packet switching) dựa trên một giao thức liên mạng đã đượcchuẩn hóa (giao thức TCP/IP) Hệ thống này bao gồm hàng ngàn mạng máy tínhnhỏ hơn của các doanh nghiệp, của các viện nghiên cứu và các trường đại học, củangười dùng cá nhân, và các chính phủ trên toàn cầu
II - Lịch sử Internet
Tiền thân của mạng Internet ngày nay là mạng ARPANET Cơ quan quản lý dự
án nghiên cứu phát triển ARPA thuộc bộ quốc phòng Mỹ liên kết 4 địa điểm đầutiên vào tháng 7 năm 1969 bao gồm: Viện nghiên cứu Stanford, Đại học California,Los Angeles, Đại học Utah và Đại học California, Santa Barbara Đó chính là mạngliên khu vực (Wide Area Network - WAN) đầu tiên được xây dựng
Thuật ngữ "Internet" xuất hiện lần đầu vào khoảng năm 1974 Lúc đó mạng vẫnđược gọi là ARPANET Năm 1983, giao thức TCP/IP chính thức được coi như mộtchuẩn đối với ngành quân sự Mỹ và tất cả các máy tính nối với ARPANET phải sửdụng chuẩn mới này Năm 1984, ARPANET được chia ra thành hai phần: phần thứ
Trang 19nhất vẫn được gọi là ARPANET, dành cho việc nghiên cứu và phát triển; phần thứhai được gọi là MILNET, là mạng dùng cho các mục đích quân sự.
Giao thức TCP/IP ngày càng thể hiện rõ các điểm mạnh của nó, quan trọng nhất
là khả năng liên kết các mạng khác với nhau một cách dễ dàng Chính điều nàycùng với các chính sách mở cửa đã cho phép các mạng dùng cho nghiên cứu vàthương mại kết nối được với ARPANET, thúc đẩy việc tạo ra một siêu mạng(SuperNetwork) Năm 1980, ARPANET được đánh giá là mạng trụ cột của Internet.Mốc lịch sử quan trọng của Internet được xác lập vào giữa thập niên 1980 khi tổchức khoa học quốc gia Mỹ NSF thành lập mạng liên kết các trung tâm máy tínhlớn với nhau gọi là NSFNET Nhiều doanh nghiệp đã chuyển từ ARPANET sangNSFNET và do đó sau gần 20 năm hoạt động, ARPANET không còn hiệu quả đãngừng hoạt động vào khoảng năm 1990
Sự hình thành mạng xương sống của NSFNET và những mạng vùng khác đã tạo
ra một môi trường thuận lợi cho sự phát triển của Internet Tới năm 1995, NSFNETthu lại thành một mạng nghiên cứu còn Internet thì vẫn tiếp tục phát triển
Với khả năng kết nối mở như vậy, Internet đã trở thành một mạng lớn nhất trênthế giới, mạng của các mạng, xuất hiện trong mọi lĩnh vực thương mại, chính trị,quân sự, nghiên cứu, giáo dục, văn hoá, xã hội Cũng từ đó, các dịch vụ trênInternet không ngừng phát triển tạo ra cho nhân loại một thời kỳ mới: kỷ nguyênthương mại điện tử trên Internet
II – Lợi ích của Internet.
Mạng Internet mang lại rất nhiều tiện ích hữu dụng cho người sử dụng, một trongcác tiện ích phổ thông của Internet là hệ thống thư điện tử (email), trò chuyện trựctuyến (chat), máy tìm kiếm dữ liệu (search engine), các dịch vụ thương mãi vàchuyển ngân, và các dịch vụ về y tế giáo dục như là chữa bệnh từ xa hoặc tổ chứccác lớp học ảo Chúng cung cấp một khối lượng thông tin và dịch vụ khổng lồ trênInternet Nguồn thông tin khổng lồ kèm theo các dịch vụ tương ứng chính là hệthống các trang Web liên kết với nhau và các tài liệu khác trong WWW (WorldWide Web)
Trang 20III – World Wide Web.
World Wide Web, gọi tắt là Web hoặc WWW, mạng lưới toàn cầu là một khônggian thông tin toàn cầu mà mọi người có thể truy nhập (đọc và viết) qua các máytính nối với mạng Internet Thuật ngữ này thường được hiểu nhầm là từ đồng nghĩavới chính thuật ngữ Internet Nhưng Web thực ra chỉ là một trong các dịch vụ chạytrên Internet, chẳng hạn như dịch vụ thư điện tử Web được phát minh và đưa vào
sử dụng vào khoảng năm 1990, 1991 bởi viện sĩ Viện Hàn lâm Anh Tim Lee và Robert Cailliau (Bỉ) tại CERN, Geneva, Switzerland
Berners-Các tài liệu trên World Wide Web được lưu trữ trong một hệ thống siêu văn bản(hypertext), đặt tại các máy tính trong mạng Internet Người dùng phải sử dụng mộtchương trình được gọi là trình duyệt web (web browser) để xem siêu văn bản.Chương trình này sẽ nhận thông tin (documents) tại ô địa chỉ (address) do người sửdụng yêu cầu (thông tin trong ô địa chỉ được gọi là tên miền (domain name), rồi sau
đó chương trình sẽ tự động gửi thông tin đến máy chủ (web server) và hiển thị trênmàn hình máy tính của người xem Người dùng có thể theo các liên kết siêu văn bản(hyperlink) trên mỗi trang web để nối với các tài liệu khác hoặc gửi thông tin phảnhồi theo máy chủ trong một quá trình tương tác Hoạt động truy tìm theo các siêuliên kết thường được gọi là duyệt Web
Quá trình này cho phép người dùng có thể lướt các trang web để lấy thông tin.Tuy nhiên độ chính xác và chứng thực của thông tin không được đảm bảo
Năm 1991, Tim Berners Lee ở Trung tâm nghiên cứu nguyên tử châu Âu(CERN) phát minh ra World Wide Web (WWW) dựa theo một ý tưởng về siêu vănbản được Ted Nelson đưa ra từ năm 1985 Có thể nói đây là một cuộc cách mạngtrên Internet vì người ta có thể truy cập, trao đổi thông tin một cách dễ dàng
Năm 1994 là năm kỉ niệm lần thứ 25 ra đời ARPANET, NIST đề nghị thống nhấtdùng giao thức TCP/IP WWW đã trở thành dịch vụ phổ biến thứ 2 sau dịch vụFTP Những hình ảnh video đầu tiên được truyền đi trên mạng Internet
Trang 21IV - Các ISP
ISP (Internet Service Provider) là nhà cung cấp dịch vụ Internet Các ISP phảithuê đường và cổng của một IAP Các ISP có quyền kinh doanh thông qua các hợpđồng cung cấp dịch vụ Internet cho các tổ chức và các cá nhân
Các loại ISP dùng riêng được quyền cung cấp đầy đủ các dịch vụ Internet Điềukhác nhau duy nhất giữa ISP và ISP riêng là ko cung cấp dịch vụ Internet vời mụcđích kinh doanh Người dùng chỉ cần thoả thuận với một ISP hay ISP riêng nào đó
về các dịch vụ được sử dụng và thủ tuc thanh toán được gọi là thuê bao Internet.Internet chính thức xuất hiện ở Việt Nam vào năm 1996, khi đó đặt dưới sự quản
lý duy nhất của một IPX là VNPT
Các ISP Việt Nam:
VNPT
Tổng Công ty Viễn thông Quân đội - Viettel
Công ty FPT thuộc bộ khoa học và công nghệ
NetNam thuộc Viện Công nghệ thông tin - Viện Khoa học và công nghệ ViệtNam
Công ty Thông tin Viễn thông Điện lực
Công ty Cổ phần Dịch vụ Bưu chính Viễn thông Sài Gòn - SPT
V - Trình duyệt Web
Trình duyệt web là một phần mềm ứng dụng cho phép người sử dụng xem và tươngtác với các văn bản, hình ảnh, đoạn phim, nhạc, trò chơi và các thông tin khác ở trênmột trang web của một địa chỉ web trên mạng toàn cầu hoặc mạng nội bộ Văn bản
và hình ảnh trên một trang web có thể chứa siêu liên kết tới các trang web khác củacùng một địa chỉ web hoặc địa chỉ web khác Trình duyệt web thường giao tiếp vớimáy chủ web bằng việc sử dụng HTTP (giao thức truyền siêu văn bản) để lấy về cáctrang web HTTP cho phép các trình duyệt web gửi thông tin đến các máy chủ web,cũng như lấy các trang web về HTTP được sử dụng rộng rãi nhất là HTTP/1.1 Cáctrang được định vị bằng cách thức của một URL (bộ định vị tài nguyên chung),được coi như là một địa chỉ, bắt đầu bằng cụm http: để truy cập HTTP Nhiều trìnhduyệt cũng hỗ trợ các kiểu URL khác và giao thức tương ứng, như gopher: choGopher (một giao thức siêu liên kết có thứ bậc), ftp: cho FTP (giao thức truyền file),
Trang 22rtsp: cho RTSP (giao thức streaming thời gian thực), và https: cho HTTPS (mộtphiên bản được mã hoá SSL của HTTP).
Định dạng file của một trang web thường là HTML (ngôn ngữ đánh dấu siêu văn bản) và được xác định bởi giao thức HTTP sử dụng kiểu nội dung MIME Phần lớn các trình duyệt hỗ trợ nhiều định dạng file khác bên cạnh HTML, như là các định dạng ảnh JPEG, PNG, GIF và có thể mở rộng để hỗ trợ nhiều hơn nhờ sử dụng các plug-in Sự kết hợp của kiểu nội dung HTTP và đặc tả giao thức URL cho phép các nhà thiết kế trang web có thể đưa ảnh, hoạt hình, video, âm thanh và đa phương tiện được streaming vào trang web, hoặc có thể truy cập chúng thông qua trang web
Một số trình duyệt Web hiện nay:
Internet Explorer có sẵn trong Microsoft Windows, của Microsoft
Mozilla và Mozilla Firefox của Tập đoàn Mozilla
Netscape Navigator của Netscape
Opera của Opera Software
Safari trong Mac OS X, của Apple Computer
Maxthon của MySoft Technology
Avant Browser của Avant Force (Ý)
Google Chrome của Google
VII - Thư điện tử
Thư điện tử, hay email (Electronic mail), là một hệ thống chuyển nhận thư từ quacác mạng máy tính Email là một phương tiện thông tin rất nhanh Một mẫu thôngtin (thư từ) có thể được gửi đi ở dạng mã hoá hay dạng thông thường và đượcchuyển qua các mạng máy tính đặc biệt là mạng Internet Nó có thể chuyển mẫuthông tin từ một máy nguồn tới một hay rất nhiều máy nhận trong cùng lúc
Cấu trúc chung của một địa chỉ email
Một địa chỉ email sẽ bao gồm ba phần chính có dạng: Tên_định_dạng_thêmtên_email@tên_miền
Phần tên_định_dạng_thêm: Đây là một dạng tên để cho người đọc có thể dễdàng nhận ra người gửi hay nơi gửi
Trang 23 Phần tên_email: Đây là phần xác định hộp thư Thông thường, cho dễ nhớ,phần này hay mang tên của người chủ ghép với một vài kí tự đặc biệt Phầntên này thường do người đăng kí hộp thư điện tử đặt ra.
Phần tên_miền: Đây là tên miền của nơi cung cấp dịch vụ thư điện tử Ngaysau phần tên_email bắt đầu bằng chữ "@" nối liền sau đó là tên miền
Hoạt động của hệ thống thư điện tử
Các giao thức E-mail
SMTP (Simple Mail Transfer Protocol) hay là giao thức chuyển thư đơngiản Đây là một giao thức lo về việc vận chuyển email giữa các máy chủtrên đường trung chuyển đến địa chỉ nhận cũng như là lo việc chuyển thưđiện tử từ máy khách đến máy chủ Hầu hết các hệ thống thư điện tử gửi thưqua Internet đều dùng giao thức này
IMAP ( Internet Message Access Protocol) hay là giao thức truy nhậpthông điệp (từ) Internet Giao thức này cho phép truy nhập và quản lý cácmẫu thông tin về từ các máy chủ Với giao thức này người dùng email có thểđọc, tạo ra, thay đổi, hay xoá các ngăn chứa, các mẫu tin đồng thời có thể tìmkiếm các nội dung trong hộp thư mà không cần phải tải các thư về Phiên bảnmới nhất của IMAP là IMAP4 tương tự nhưng có nhiều chức năng hơn giaothức POP3 IMAP nguyên thuỷ được phát triển bởi POP (từ chữ Post OfficeProtocol) hay là giao thức phòng thư
Trang 24VIII - Máy tìm kiếm.
Máy tìm kiếm (Search Egine), hay còn gọi là công cụ tìm kiếm (search tool),nguyên thuỷ là một phần mềm nhằm tìm ra các trang trên mạng Internet có nội dungtheo yêu cầu người dùng dựa vào các thông tin mà chúng có Việc tìm các tài liệu sẽdựa trên các từ khóa (keyword) được người dùng gõ vào và trả về một danh mụccủa các trang Web có chứa từ khóa mà nó tìm được
Các thuật toán hay kỹ thuật mà máy truy tìm dùng để xếp hạng hay đánh giá tầmquan trọng của một trang Web theo một từ khoá cho trước gọi là sự phân hạng(ranking), hay đơn giản hơn là phân hạng
Các kỹ thuật thay đổi mã nguồn HTML của một trang Web cũng như các kỹthuật khác ngoài việc sửa mã nguồn HTML nhằm nâng cao tối đa thứ hạng củatrang Web đối với một số từ khóa nào đó trên các máy truy tìm gọi là kỹ thuật tối
ưu hoá cho máy tìm kiếm hay SEO (Search Engine Optimization)
Trang 25Hệ thống đó bao gồm:
Đường dây và các thiết bị phần cứng nối mạng
Các máy chủ cung cấp dịch vụ Web: cung cấp các dịch vụ Web hosting, chứa các phần mềm Application Server đảm bảo việc phát triển các dịch vụ trên Web, kết nối đến các CSDL, máy chủ chứng thực, máy chủ tìm kiếm…
Hệ thống tường lửa (Firewall) bao gồm cả phần cứng và phần mềm đảm bảo
an toàn cho hệ thống máy chủ với môi trường Internet
Hệ thống áy trạm điều hành, cập nhật thông tin cho máy chủ Web…
Phương thức hoạt động
Khi máy tính Client kết nối vào Internet, người sử dụng dùng trình duyệt Web gõđịa chỉ tên miền truy cập (VD: http://home.vnn.vn) gửi yêu cầu đến máy chủ Web.Web Server xem xét và thực hiện yêu cầu từ Web browser Nếu là Web tĩnh thìWeb Server sẽ lấy thông tin lưu sẵn trên máy chủ dạng thư mục, file và gửi lại theoyêu cầu của Client Nếu là Web động thì dùng các ngôn ngữ lập trình như ASP,PHP, JSP, CGI kết nối và khai thác CSDL
Trang 26Chương III – Hệ quản trị nội dung (CMS).
I - Khái niệm
Hệ quản trị nội dung, cũng được gọi là hệ thống quản lý nội dung CMS (Content Management System) là phần mềm để tổ chức và tạo môi trường cộng tác thuận lợi nhằm mục đích xây dựng một hệ thống tài liệu và nội dung thống nhất Một hệ thống quản trị nội dung (CMS) cho phép tạo, quản lý, lưu trữ và chỉnh sửa số lượng lớn các nội dung từ bất cứ một máy tính có kết nối Internet nào trên thế giới, mà không cần phải dựa dẫm vào các nhà phát triển web hay bên công ty quản lý
website
II - Kiến trúc của hệ quản trị nội dung.
CMS Gồm ba thành phần chính:
1 Thành phần quản lý nội dung (Content Management Application - CMA).
Thành phần này cho phép tạo và chỉnh sửa nội dung
2 Thành phần quản lý các thông tin mô tả nội dung (Meta-data Management Application - MMA).
Các thông tin này bao gồm quy cách hiển thị, ngày giờ hiển thị, phạm vi truy cập của nội dung tương ứng
3 Thành phần phân phối nội dung (Content Delivery Application - CDA).
Có nhiệm vụ lấy thông tin từ cơ sở dữ liệu chứa nội dung và thông tin mô tả để tạo ra những dạng hiển thị tới người dùng đầu cuối, những dạng hiển thị này có thể bao gồm nhiều dạng khác nhau ví dụ như HTML, PDF, hoặc dạng in
Trang 27Kiến trúc của hệ quản trị nội dung CMS
III - Các đặc điểm của hệ quản trị nội dung.
Cho phép tạo hoặc thay đổi nội dung trực tuyến
Sử dụng chế độ Soạn thảo WYSIWYG (What You See Is What You Get)
Có khả năng quản lý người dùng
Tìm kiếm và lập chỉ mục
Lưu trữ thông tin
Khả năng tùy biến giao diện cao
Cung cấp hệ thống quản lý ảnh và các liên kết (URL)
Hệ quản trị nội dung có rất nhiều dạng, sau đây là một số dạng thường được sử dụng:
Trang 28 BCMS(Billing CMS): Hỗ trợ việc quản lý Thu chi dựa trên nền Web.
Một số hệ quản trị nội dung tiêu biểu
IV - So sánh giữa Web tĩnh (Static Web) và CMS
Static Website Content Management System (CMS)
Dễ dàng tạo ra
được trang ban đầu
Cầnđầu tư nhiều thời gian hơn để xây dựng lúc ban đầu, chẳng hạn việc xâydựng một lượng lớn những tập lệnh (script), cài đặt CSDL (database), vàphải tạo ra được giao diện (templates)
Nội dung tĩnh, khó
thay đổi Nội dung động, việc thay đổi dễ dàng.
Việc thêm mã (code),
hàm (function) khó
khăn
Hầu hết những CMS đều có những phần mở rộng (extension) có thể được thêm vào dễ dàng
Trang 29Chương IV - Ứng dụng hệ quản trị nội dung (CMS) Joomla 1.5
trong xây dựng và quản trị Website.
I – Tổng quan về Joomla CMS.
1 Khái niệm.
Joomla là một hệ quản trị nội dung mã nguồn mở (Open Source ContentManagement Systems) được viết bằng ngôn ngữ PHP và kết nối tới cơ sở dữ liệuMySQL , cho phép người sử dụng có thể dễ dàng xuất bản các nội dung lên Internethoặc Intranet Joomla có các đặc tính cơ bản là: bộ đệm trang (page caching) đểtăng tốc độ hiển thị, lập chỉ mục, đọc tin RSS (RSS feeds), bản tin nhanh, blog, diễnđàn, bình chọn, lịch biểu, tìm kiếm trongSite và hỗ trợ đa ngôn ngữ Joomla được sửdụng ở khắp mọi nơi trên thế giới, từ những website cá nhân cho tới những hệ thốngwebsite doanh nghiệp có tính phức tạp cao, cung cấp nhiều dịch vụ và ứng dụng.Joomla có thể dễ dàng cài đặt, dễ dàng quản lý và có độ tin cậy cao Joomla chophép sử dụng và cấu hình vào nhân nên thuận tiện cho các chuyên gia lập trình caocấp thi muốn tùy biến hệ thống Joomla là ứng dụng MNM do đó việc sử dụngJoomla hoàn toàn miễn phí
2 Lịch sử hình thành và phát triển.
Joomla là sản phẩm cùng dòng với Mambo, được tạo ra bởi sự hợp tác giữa tậpđoàn Miro (Miro Software Solutions)của Úc với những người phát triển(development) Ban đầu công ty Mirocủa Úc đã phát triển Mambo theo dạng ứngdụng mã nguồn đóng Vào năm 2002, tập đoàn Miro phân chia sản phẩm của họthành hai dòng: một phiên bản thương mại và một phiên bản mã nguồn mở - đượcgọi là Mambo OpenSource (MOS) Phiên bản thương mại này có được một lợi thế
là tính bảo mật cao, đồng thời những người dùng có được sự hỗ trợ từ nhà pháttriển
Tháng 8 năm 2005, do bất đồng với Miro, tất cả các thành viên trong nhóm pháttriển Mambo đồng loạt rời khỏi dự án (khi đó đang phát triển ở phiên bản Mambo4.5.3) thành lập nhóm “Open Source Matters” Họ xây dựng Joomla dựa trên nềntảng Mambo và phát hành hệ thống này hơn một tháng sau Ngày 16/09/2005,
Trang 30phát triển, cải tiến đặc biệt trong vấn đề vá các bản lỗi và tăng tính năng bảo mật.Hiện nay, dự án Joomla được phát triển bởi 19 thành viên của Nhóm Nòng Cốt(Core Team) đến từ 11 quốc gia trên thế giới bao gồm:
Ric Allinson, Brad Baker, Shayne Bartlett, Levis Bisson, Michelle Bisson, TimBroeker, David Gal, Rey Gigataras, Wilco Jansen, Johan Janssens, Alex Kempkens,Mateusz Krzeszowiec, Louis Landry, Andy Miller, Sam Moffatt, Peter Russell,Emir Sakic, Marko Schmuck, Antonie de Wilde
Danh sách 19 thành viên của Nhóm Nòng cốt tại Website http://www.joomla.org/content/blogcategory/43/85/
Tháng 11 năm 2006, Hệ quản trị nội dung mã nguồn mở tốt nhất do Packt
Năm 2007, Hệ thống quản trị nội dung mã nguồn mở PHP tốt nhất thế giới Đây
là lần thứ 2 liên tiếp Joomla có được vinh dự này Các sản phẩm đứng ở vị trí thứ 2
và 3 là Drupal và e107
Joomla đang được đề cử vinh danh tại Hall of Fame : 2009 Open Source CMS Award
3 Các phiên bản của Joomla.
Phiên bản đầu tiên của Joomla là phiên bản Joomla 1.0 (hay Joomla 1.0.0)cónguồn gốc từ Mambo 4.5.2.3 (bao gồm thêm nhiều bản vá bảo mật và sửa lỗi)
Hiện nay Joomla có các dòng phiên bản chính sau:
Joomla 1.0.x: Phiên bản thế hệ 1
Phiên bản phát hành đầu tiên: Joomla 1.0.0 (16/09/2005)
Phiên bản phát hành mới nhất: Joomla 1.0.15 (22/02/2008)
Điểm mạnh của Joomla 1.0.x: Có một số lượng rất lớn các thành phần mở rộng module, component, plugin, template
∙ Joomla 1.5.x: Phiên bản thế hệ 2
Trang 31Các phiên bản cũ (trong giai đoạn phát triển): Joomla 1.5 beta, Joomla1.5 RC1, Joomla 1.5 RC2, Joomla 1.5 RC3, Joomla 1.5 RC4
Là phiên bản cải tiến từ Joomla 1.0.x, Joomla 1.5 hỗ trợ tất cả các ngôn ngữ có tập
ký tự được biểu diễn bằng bảng mã UTF-8
Joomla 1.5 cũng bao gồm các đặc tính mới như các mô hình chứng thực (LDAP, Gmail ), hỗ trợ mô hình Client-Server Đồng thời Joomla 1.5.x cũng hỗ trợ các trình điều khiển cơ sở dữ liệu dành cho MySQL + (trên nềnPHP) và tăng cường hỗ trợ cho MySQL và các loại cơ sở dữ liệu khác
Điểm mạnh của Joomla 1.5.x chính là: Phần quản trị Website có sử dụngcông nghệ Web 2.0 và một số tính năng được cải tiến hơn so với Joomla1.0.x
Vòng đời phát triển của Joomla 1.5.x
Gồm ba giai đoạn:
Giai đoạn Alpha: Xây dựng lại mã và phát triển Giai đoạn Beta: Kiểm tra các tính năng, viết tài liệu hỗ trợ, điều chỉnh
Giai đoạn ổn định:
Ổn định hóa, quảng bá thông tin
4 Kiến trúc Joomla 1.5.x.
Trang 32Joomla! 1.5.x gồm có 3 tầng hệ thống Tầng dưới cùng là mức nền tảng, chứa cácthư viện và các plugin (còn được biết với tên gọi mambot trong joomla 1.0.x) Tầng thứ hai là mức ứng dụng và chứa lớp JApplication Hiện tại tầng này gồm 3 lớp con:JInstallation, JAdministrator và JSite Tầng thứ ba là mức mở rộng Tại tầng này có các thành phần (component), mô đun (module) và giao diện (template) được thực thi và thể hiện.
5 Một số đặc điểm chính của Joomla.
Joomla hệ quản trị nội dung mã nguồn mở.
Joomla được đánh giá là một hệ quản trị nội dung mã nguồn mở mạnh nhất hiện nay, hai lần được bình chọn là dự án mã nguồn mở tốt nhất Với ưu điểm là dễ dàngcài đặt và quản lý với mức độ tin cậy cao Hiện nay Joomla đang được sử dụng phổ biến trên thế giới.Theo thống kê của GoogleTrends
(http://forge.Joomla.org/sf/go/projects.Joomla/frs) Joomla phát triển mạnh mẽ và đều đặn từ khi ra đời đến nay
Joomla đáp ứng các đặc tính của một ứng dụng Web 2.0.
Hệ thống Joomla có thể chạy được nhiều nền khác nhau IIS hoặc Apache Hệđiều hành window hoặc Linux Là một hệ thống mã nguồn mở, do đó Joomla đã tậndụng được nguồn trí tuệ cộng đồng Là một hệ thống mã nguồn mở, được cập nhậtliên tục Việc phát triển ứng dụng được thực hiện dễ dàng và nhanh chóng Joomla
có khả năng hoạt động tốt trên nhiều trình duyệt Khả năng tùy biến giao diện cao
Joomla được sử dụng để xây dựng nhiều loại ứng dụng web khác nhau.
∙ Website của các tổ chức hoặc các website thông tin
Website Thương mại điện tử
Website cho các công ty cỡ nhỏ
Ứng dụng cho các cơ quan hành chính
Website cho các trường học và nhà thờ
Website dành cho cá nhân và gia đình
Trang web báo điện tử và tạp chí
Và nhiều ứng dụng khác nữa
Hệ thống thương mại điện tử tích hợp
Hệ thống kiểm soát hàng hoá