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

Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola

75 727 2
Tài liệu đã được kiểm tra trùng lặp

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây dựng website tin tức cho trung tâm viễn thông huyện yên thành sử dụng gói joomla
Tác giả Nguyễn Thị Sen
Người hướng dẫn ThS. Phan Anh Phong
Trường học Trường Đại Học Vinh
Chuyên ngành Công Nghệ Thông Tin
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2009
Thành phố Vinh
Định dạng
Số trang 75
Dung lượng 7,16 MB

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

Nội dung

Và cuối cùng là tự do giúp đỡ cộng đồng thông qua việc phát hành và phân phối một phiên bản sửa đổi …Nếu bạn có tất cả 4 quyền Nếu bạn có tất cả 4 quyền tự do sử dụng này, nó chính là ph

Trang 1

Trờng đại học vinhKhoa - cntt



TóM TắT Đồ áN TốT NGHIệP

đề tài :

xây dựng website tin tức cho trung tâm viễn

thông huyện yên thành sử dụng gói joomla”

Giáo viên hớng dẫn : Phan Anh Phong

Sinh viên thực hiện : Nguyễn Thị Sen

I.1 Giới thiệu phần mềm nguồn mở trên thế giới 3

I.3 Mô hình phát triển phần mềm nguồn mở và phần mềm đóng 13

I.5 Các mô hình kinh doanh phần mềm nguồn mở 22

Trang 2

Chơng II Phần mềm mở Apache, PHP & MySQL 23

Chơng IV Xây dựng Website Tin tức viễn thông huyện Yên Thành“ Tin tức viễn thông huyện Yên Thành” ” 47 IV.1 Giới thiệu về Trung Tâm Viễn Thông huyện Yên Thành 47

Chơng V Một số màn hình giao diện chính của Website 74

độ hiểu biết còn hạn chế, thời gian khảo sát thực tế cũng cha đợc nhiều nên chắcchắn hệ thống Website còn nhiều hạn chế nhất định Chính vì vậy em rất mongnhận đợc sự chỉ bảo, hớng dẫn của các thầy cô giáo và những ý kiến đóng góp đểwebsite đợc hoàn thiện hơn

Cuối cùng em xin chân thành cảm ơn thầy giáo Ths Phan Anh Phong Thầy

đã hớng dẫn, chỉ bảo tận tình và định hớng cho em trong suốt thời gian hoànthành đồ án này

Trang 3

Em xin ch©n thµnh c¶m ¬n!

Vinh, ngµy 14 th¸ng 05 n¨m 2009

Sinh viªn thùc hiÖn

NguyÔn ThÞ Sen

Trang 4

Lời nói đầu

Trong giai đoạn hiện nay công nghệ thông tin đang là một trong nhữngngành mũi nhọn Nó đợc ứng dụng rất rộng rãi trên nhiều lĩnh vực của đời sốngxã hội Đặc biệt giải quyết đợc rất nhiều các bài toán trong thực tế cũng nh trongcác ngành công nghiệp

Ngày nay, khái niệm phần mềm nguồn mở đã không còn xa lạ với nhiều

ng-ời và đợc ứng dụng ngày càng rộng rãi trong các tổ chức và doanh nghiệp Đợc

đánh giá là một phơng tiện hữu hựu để san sẻ sự thịnh vợng của thế giới côngnghiệp hoá hiện đại hoá sang các nớc đang phát triển, sự ra đời của phần mềmnguồn mở thực sự là một cuộc cách mạng của công nghiệp phần mềm

Đề tài: “ Tin tức viễn thông huyện Yên Thành”Xây dựng website tin tức cho Trung Tâm Viễn Thông huyện Yên Thành sử dụng gói Joomla” là đề tài mà em rất quan tâm vì Website này

sẽ là nơi chia sẻ các tin tức và hoạt động của Trung Tâm Viễn Thông YênThành Tuy đã rất cố gắng trong việc tìm hiểu, nghiên cứu, phân tích và thiết kếtrang Web nhng chắc chắn rằng sẽ không tránh khỏi những thiếu sót Rất mongnhận đợc sự đóng góp ý kiến của các Thầy, Cô, và các bạn để Website ngày cànghoàn thiện hơn

Ngoài phần mở đầu và phần tổng kết, đề tài đợc chia làm 4 chơng chính:Chơng I: Tìm hiểu về phần mềm nguồn mở

Chơng II: Hệ phần mềm mở Apache, PHP & MySQL

Chơng III: Giới thiệu về gói mã nguồn mở Joomla

Chơng IV: Xây dựng Website: Tin tức Viễn Thông huyện Yên Thành

Chơng V: Một số màn hình giao diện chính của website

Trang 5

Chơng I Tìm hiểu về phần mềm nguồn mởI.1 Giới thiệu phần mềm nguồn mở trên thế giới.

Tổng th kí Liên hợp quốc và những ngời có tiếng nói quyết đinh trong giớicông nghệ truyền thông và máy tính cũng có chung ý muốn làm cho giá phầnmềm hợp lý hơn với những ngời không đủ tài chính Và phần mềm nguồn mở, làmột lời giải hữu hiệu cho bài toán đó

Phần mềm nguồn mở ( OSS – 45K - CNTT Open Source Sofware ) có lịch sử phát triểnqua hàng chục năm Lợi ích của phần mềm nguồn mở có thể thấy rõ qua sự hìnhthành của các cộng đồng nguồn mở với các sản phẩm có giá trị cao trong thực tế

và cả giá trị trong đào tạo

 Một số định nghĩa khác nhau về Phần mềm nguồn mở (PMNM)

 Phần mềm nguồn mở đợc hiểu là (hệ) hệ phần mềm cho phép ngời sửdụng truy cập tự do (free access) đến mã nguồn và đợc quyền sửa đổi mã nguồn

đó

 TS Nguyễn Chí Công – 45K - CNTT tổ trởng chuyên môn Đề án 112: “ Tin tức viễn thông huyện Yên Thành”Mã nguồn

mở, các phần mềm mà cầc tác giả khi công bố, cung cấp mã để ngời khác tái sử dụng và phát triển” Các 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, tvấn v.v, tức là những dịch vụ thực sự đã thực hiện để phục vụ ngời dùng, nhngkhông đợc bán các sản phẩm nguồn mở vì nó là tài sản của trí tuệ chung, khôngphải là tài sản riêng của một nhà cung cấp nào

 Theo Richard Stallman, ngời của phong trào phần mềm miễn phí: “ Tin tức viễn thông huyện Yên Thành”Thứ nhất, tự do chạy chơng trình mà bạn muốn Thứ hai, tự do nghiên cứu mã nguồn

và thay đổi nó Tiếp đó là tự do giúp đỡ bằng cách copy và phân phối cho những ngời khác nếu bạn muốn Và cuối cùng là tự do giúp đỡ cộng đồng thông qua việc phát hành và phân phối một phiên bản sửa đổi …Nếu bạn có tất cả 4 quyền Nếu bạn có tất cả 4 quyền

tự do sử dụng này, nó chính là phần mềm nguồn mở

 Phần mền tự do và phần mềm nguồn mở (FOSS – 45K - CNTT Free and OpenSource software) là các phần mền cho phép ngời sử dụng quyền chạy, sao chép,phân phối, thay đổi và cải tiến nó cho phù hợp với nhu cầu sử dụng mà khôngcần phải có sự cho phép hoặc phải trả tiền

 Định nghĩa phần mềm nguồn mở của OSI (tổ chức sáng kiến nguồn mở– 45K - CNTT open source Innitiatitive): phần mềm nguồn mở là FOSS có sử dụng bất kỳmột dạng bản quyền nào đợc chấp nhận của OSI trong bản liệt kê các bản quyềnmã mở của tổ chức

Trang 6

Phần mềm nguồn mở không chỉ đảm bảo cho ngời phát triển (developer) màcòn cho phép tất cả ngời dùng đều đợc đọc và sửa đổi mã nguồn.

Tóm lại, có thể hiểu, với phần mềm ngồn mở, ngời dùng có quyền tự dochạy chơng trình theo bất kỳ mục đích nào, không chỉ miễn phí về giá mua màchủ yếu mễn phí về bản quyền Ngời dùng có quyền sửa đổi, cải tiến, phát triển,nâng cấp theo một số nguyên tắc chung Không có phí trả trớc, không cần lolắng về nạn ăn cắp bản quyền… Các chuyên viên máy tính cũng nh Các chuyên viên máy tính cũng nh những ngờibình thờng có thể tạo thành cộng đồng ảo để phát minh ra các phần mềm mới

Đặc biệt, những phần mềm này cũng có thể viết bằng ngôn ngữ địa phơng… Các chuyên viên máy tính cũng nh

 Sự ra đời và phát triển của phần mềm nguồn mở:

Hơn 2 thập kỉ trớc, khi máy tính lần đầu tiên vơn tới mã nguồn của các ờng đại học và đợc truyền đi miễn phí, các nhà lập trình cho rằng, sẽ đợc trả tiềncho việc lập ra chơng trình chứ không phải bản thân các chơng trình đó Sự việcthay đổi khi máy tính tiến đến thế giới thơng mại và các công ty bắt đầu pháttriển, cấp phép cho phần mềm dựa trên nền tảng thơng mại, hạn chế sự truy cậpmã nguồn

tr-Phần mềm nguồn mở – 45K - CNTT cuộc cách mạng của công nghiệp phần mềm:

Tại quốc gia Nam Mỹ Brazil, cách sử dụng những sản phẩm CNTT tại nhà

và những đơn vị cá nhân không khác biệt nhiều so với bất cứ nơi đâu trên thếgiới, những sự thay đổi tại khu vực của chính phủ lại lớn hơn rất nhiều Thôngqua sự tự do về phần mềm nguồn mở nh ở Brazil, Viện công nghệ thông tin quốcgia khẳng định rằng, họ đã tiết kiệm đợc khoảng 170 triệu USD trong một nămcho chi phí chứng nhận

Theo ông Gilberto Gil, Bộ trởng văn hoá Brazil khoản tiết kiệm này đợc đầu

t vào nâng cấp phần cứng cho những khu vực còn yếu về công nghệ Thậm chíhiện nay ở Brazil còn có một cơ quan uỷ quyền của chính phủ tuyên bố rằng các

cơ quan hành chính phải u tiên phần mềm nguồn mở miễn phí: “ Tin tức viễn thông huyện Yên Thành”Quan điểm của Brazil về phần mềm miễn phí là rất tích cực Chính phủ Brazil đã tạo nên các chơng trình miễn phí nh những ứng dụng vào các thủ tục của chính phủ hay nh công cụ hữu ích cho xã hội , ” ông Gilberto Gil nói.

Hiện tại hơn 90% toàn bộ máy tính là Laptop trên thế giới chạy trênphần mềm độc quyền nh Apple hay Microsoft Và dù muốn hay không, sự cómặt của phần mềm nguồn mở đã thật sự làm náo động thế giới phần mềm thơngmại và độc quyền Trớc mối đe doạ này, các công ty lớn đã phải để ý đến phầnmềm nguồn mở và lên kế hoạch sống chung với nó

Vào tháng 2/2005, công ty máy tính lớn IBM dới thiệu kế hoạch đầu t 100triệu USD để ủng hộ phần mềm nguồn mở: “ Tin tức viễn thông huyện Yên Thành”Sự quyết tâm của chúng tôi đợc tăng

Trang 7

lên thông qua việc tham gia vào 150 dự án về phần mềm nguồn mở Tại trungtâm công nghệ Linux, chúng tôi có hơn 700 nhà lập trình và kỹ s làm việc chocác dự án này nh một phần của cộng đồng nguồn mở Nhng tôi nghĩ lý do chínhcủa sự quyết tâm này là khách hàng đã yêu cầu nó và nhìn thấy giá trị trong nó”,Adam Jollans đại diện của IBM nói.

Còn chiến lợc của HP là: Để khách hàng lựa chọn, nếu khách hàng khôngmuốn dùng phần mềm bản quyền, chúng tôi rất vui lòng làm theo; nếu họ chọnphần mềm mở, chúng tôi sẽ cung cấp Chúng tôi làm việc với cộng đồng nguồn

mở trên phạm vi lớn

Không chỉ công ty phần cứng máy tính Fortune 500 và nhà phát triển phầnmềm Sun Microsystems đều đang sử dụng nguồn mở Mà thậm chí, ngay cả ngờikhổng Microsoft cũng tin vào khả năng bắt tay với cộng đồng nguồn mở.Jonathan Murray, một đại diện của Microsoft, nói: “ Tin tức viễn thông huyện Yên Thành”Cộng đồng nguồn mở đãmột lần nữa khuyến khích sự đổi mới phần mềm và nói cách thẳng thắn, chúngtôi cảm thấy rất vui Nó đã mang rất nhiều ngời đến với cộng đồng phát triển, tạo

ra những bớc cải tiến mới quanh phần mềm và chắc chắn chung tôi nhìn nhận họ

nh những ngời cộng tác với Microsoft”

Rõ ràng, sự ra đời của phần mềm nguồn mở thực sự là một cuộc cách mạngtrong nghành công nghiệp phần mềm và chắc chắn, những ngời truyền bá chophần mềm nguồn mở miễn phí sẽ tiếp tục cuộc hành trình của họ

ý tởng về công khai mã nguồn đã xuất hiện ngay ở những ngày đầu của nềnCông nghệ thông tin dới những hình thức khác nhau:

 1940: Đã có những hoạt động chia sẻ mã nguồn khi làm việc trên máytính ENIAC, các hoạt động chia sẻ phần mềm dùng chung, các nghiên cứu cócông bố kèm theo mã nguồn

 Trong giới kỹ thuật, từng có nhiều th viện tính toán kèm theo mã nguồnviết trên FORTRAN, BASIC… Các chuyên viên máy tính cũng nh

 1970-1980: Donal Knuth phát triển hệ xử lý văn bản nguồn mở Tex

 1983: Richard Stallman đa ra tuyên ngôn GNU (GNU is Not Unix): Cácphần mềm đợc hàng triệu ngời sử dụng (hệ điều hành, hệ soạn thảo văn bản… Các chuyên viên máy tính cũng nh)

là tài sản văn hoá chung của nhân loại, cần đợc công khai mã nguồn mã nguồnmiễn phí và xem nh phần mềm nguồn mở Công lao chính của ông là tạo ra giấyphép nguồn mở GNU- viết tắt là GPL, chủ yếu là nhằm bảo vệ quyền cho phépbất kỳ ai cũng có thể sử dụng, sửa đổi và phân phối lại mã nguồn của chơng trìnhgốc và các chơng trình dẫn xuất

 1984: Dự án GNU và tổ chức phần mềm tự do FSF đã thực hiện một loạtchơng trình PMNM Thông qua dự án GNU của FSF, những công cụ lập trình

Trang 8

nh Emacs, GCC, GNU C++, GNU Ada, GNU Pascal, G77, F2C v.v và nhiềuphần mềm khác đã gặt hái thành công Chính đề án GNU và giấy phép mã nguồn

mở GPL là nền tảng then chốt cho sự phát triển của thế giới mã nguồn mở trong

 1995: PMNM Apache Web Server 1.0 đợc công bố, ngay lập tức đợcnhiều ngời dùng làm Web Server và tiếp tục phát triển mạnh mẽ cho đến hiệnnay

 1997: Eric Raymond viết “ Tin tức viễn thông huyện Yên Thành”The Cathedral and the Bazaar” (Nhà thờ vàtiệm tạp hoá) đúc kết những thành công trong dự án phần mềm nguồn mởfetchmail (một chơng trình nhận mail từ Server kiểu nh MS Outlook)

 Lý giải phong trào phần mềm nguồn mở, đa ra những cách thúc đẩyphong trào (lấy Linux làm trung tâm, đối trọng với các phần mềm thơng mại)

 1998: The Open Source Initiative – 45K - CNTT 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 2 nhà lập trình Eric Raymond và BrucePerens Hai ông cho rằng, từ miễn phí nên thay bằng mở để tránh sự nhầm lẫn.Vì vậy, bằng cách đặt lại tên từ miễn phí thành phần mềm mở, Bruce Perens và

đồng nghiệp của ông hy vọng rằng những hình mẫu doanh nghiệp mới sẽ đợc mởrộng: “ Tin tức viễn thông huyện Yên Thành”Nguồn mở mang những phần mềm miễn phí đến cho doanh nghiệp và khichúng ta nói miễn phí, nó không hẳn mang nghĩa là miễn phí, nó nghiêng vềnghĩa tự do”, Bruce Perens nói Netscape công bố mã nguồn Netscape Nagivator

đã tạo sự cạnh tranh, kết quả là ngời dùng có lợi từ các trình duyệt nguồn mởmiễn phí và trình duyệt nguồn đóng (IE)

 Từ năm 1998 đến nay: phong trào phần mền nguồn mở đã phát triểnmạnh mẽ ở nhiều nớc với việc ca ngợi, đề cao Linux (còn là cứu cánh, là giảipháp duy nhất cho các nớc nghèo… Các chuyên viên máy tính cũng nh)

 Cộng đồng Linux đã đạt đợc những thành công nhất định trong các lĩnhvực Network Server,Web Server Tuy nhiên Linux chỉ một phần của phần mềmnguồn mở, cuộc chiến vẫn tiếp diễn và không nên phủ định bất cứ một bên nào

 Phần mềm nguồn mở, các hệ điều hành:

Trang 9

 Các hệ điều hành nguồn mở dòng Linux: Red Hat, OpenLinux, Debian,ManDrake,SuSE,TurboLinux,Nirvana,Slackware.

 Các hệ điều hành nguồn mở dòng BSD: FreeBSD, NetBSD, OpenBSD

 Phần mềm nguồn mở, hệ quản trị CSDL:

 Hiện nay phần lớn DBMS nguồn đóng (Oracle, Informix, Sybase, DB2v.v.) đều có các phiên bản chạy dới Linux và Unix

 MySQL, PostgreSQL là các DBMS nguồn mở có thể chuyển đổi dữ liệu

dễ dàng với những DBMS nói trên

 Phần mềm nguồn mở, các phần mềm nhóm:

 Các hệ thông tin trợ giúp quản lý điều hành thờng do các nhóm cộng tác

sử dụng

 Phần mềm nhóm nguồn đóng (phổ biến): Lotus Notes, MS Exchange

 Phần mềm nhóm nguồn mở: PHP groupware,… Các chuyên viên máy tính cũng nh

 Web: Apache (61,4%), MS IIS (28,5%), Sun Iplanet (2%), Zeus (1,4%)

 Th điện tử: Cyrus IMAP, Postfix SMTP, Sendmail, Quickmail,Fetchmail

 Xác thực: Cistron Radius

 Cấp địa chỉ động: ISC DHCP

 Tổ chức danh bạ: Michigan Univ, OpenLDAP

 Dịch vụ tên miền: ISC Bind

 Khác: Tomcat (Java servlet), Squid (proxy), proftp (FTP)

 Windows: Microsoft Visual Studio.Net

 Soạn trang Web: Webalizel

Trang 10

 Phát triển ứng dụng điểm - điểm: Sun JXTA

 Chuyển đổi: Sun LinCat (Linux Compatibility Assurance Toollkit)

I.2 Các khái niệm

 Phần mềm tự do (Free Software) là phần mềm thoả mãn 4 điều kiện

tự do, gồm:

1) Tự do chạy chơng trình với mọi mục đích

2) Tự do nghiên cứu chức năng của chơng trình, và thích ứng chơng trìnhtheo nhu cầu của bạn (hệ quả là quyền truy nhập mã nguồn của chơng trình)3) Tự do phân phối bản sao của chơng trình cho mọi ngời

4) Tự do cải tiến chơng trinh và tự do công bố cải tiến của mình

 Phần mềm nguồn mở (OSS – 45K - CNTT Open Sourse Software):

Theo định nghĩa của OSI, phần mềm nguồn mở không khác lắm so với phầnmềm tự do Tuy nhiên tiêu chí của phần mềm nguồn mở ít khắt khe hơn - mập

mờ, dễ bị lợi dụng Phần mềm nguồn mở không nhấn mạnh về t tởng “ Tin tức viễn thông huyện Yên Thành”tự do” màchú ý nhiều hơn đến “ Tin tức viễn thông huyện Yên Thành”miễn phí” và “ Tin tức viễn thông huyện Yên Thành”mã nguồn”

Ngời sử dụng và phát triển nên tránh nhầm lẫn giữa phần mềm tự do vàphần mềm nguồn mở bằng cách xác định các tiêu chí, điều kiện của giấy phép sửdụng và phân phối phần mềm

 Giấy phép (license) và bản quyền phần mềm tự do – 45K - CNTT phần mềm nguồn mở:

Phần mềm tự do và phần mềm nguồn mở có giấy phép và bản quyền Giấyphép là các điều khoản và điều kiện về sử dụng, sao chép và phân phối

Trên thực tế chỉ có một số giấy phép đợc dùng phổ biến do có nhiều giấyphép dựa trên các giấy phép phổ biến, sửa đổi ít Loại giấy phép đợc sử dụng phổbiến nhất là giấy phép GNU GPL (General PublicLicenes)

Luật Copyleft không cho phép phân phối phần mềm tự do và phần mềmnguồn mở với các điều khoản ràng buộc mới Phần mềm GPL là phần mềmCopyleft (do ràng buộc: phần mềm GPL sửa đổi phải là phần mềm GPL)

Tất cả các giấy phép phổ biến đều có những điều khoản sau:

Trang 11

Mỗi phơng pháp tiếp cận với nguồn mở đợc phản ánh bằng các giấy phépkhác nhau.

 GPL (GNU Public License):

Các đặc điểm của giấy phép GPL:

 Đảm bảo 4 tự do (tự do chạy chơng trình, tự do nghiên cứu và sửa đổi mãnguồn chơng trình theo nhu cầu, tự do phân phối bản sao của chơng trình, tự docải tiến và công bố cải tiến của chơng trình)

 Ngoài ra, giấy phép GPL còn có một ràng buộc đáng chú ý là: mọi sửa

đổi của phần mềm GPL phải là phần mềm GPL

GPL đợc sử dụng rộng rãi trên Linux, rất chặt chẽ, tránh đợc việc sửa đổicác phần mềm GPL rồi đóng lại và bán với giá cao Tuy nhiên sự phức tạp củaGPL có thể gây cản trở sự phát triển của các phần mềm thơng mại

Linux đợc thiết kế giống hệt Unix (98% lệnh của Linux giống Unix) lại cóthể phổ cập nh vậy là do:

- Linux đợc viết cho PC, trong khi Linux sử dụng cho các máy tính lớn

- Linux là phần mềm mã nguồn mở, bất cứ ai quan tâm cũng có thể nghiêncứu, sửa đổi theo nhu cầu

- Bản quyền: Khi Linux bùng nổ, không có luật lệ ràng buộc và vậy pháttriển tự phát, không kiểm soát đợc Còn sự phát triển của Linux đợc kiểm soátbởi tổ chức GNU, đảm bảo hàng triệu lập trình viên phát triển các bản Linuxkhác nhng vẫn chung một phần lõi Linux

- Sự phát triển mạnh mẽ của Microsoft với hệ điều hành Windows đã gây ra

sự bất bình lớn trong giới IT về các hành động độc quyền Chính thái độ này đã

đẩy cộng đồng gần hơn với Linux

- Với đặc điểm là một hệ điều hành nhiệm, mạnh mẽ và ổn định (do thiết kếdựa theo kiến trúc của Linux) Linux là một hệ điều hành đáng tin cậy Điều nàychứng tỏ dựa vào vào tỷ lệ máy chủ chạy Linux

- Với mã nguồn mở, Linux đang là sự lựa chọn số một, mang tính chiến lợccủa các nớc không muốn phụ thuộc bí mật quốc gia của mình vào một hãng phầnmềm

- Linux đợc coi là đối thủ nặng ký nhất của Windows Tuy nhiên, trên môitrờng Desktop, u thế này vẫn cha đợc khẳng định

* Apache: A patchy web server“ Tin tức viễn thông huyện Yên Thành” ”

Là phần mềm Web Server do đội ngũ tình nguyện viên đông đảo của phầnlớn các nớc Mỹ, Anh, Canada, Đức, ý thực hiện toàn bộ các công việc phát triển.Cung cấp hệ thống HTTP server ổn định, bảo mật quan trọng nhất là có mãnguồn mở Đây là phần mềm Server nguồn mở số 1 chiếm 57% thị phần

Trang 12

WebServer năm 1999, 67% năm 2006 và có tới 20 công ty hỗ trợ trong đó có cảIBM.

* PHP: PHP Hypertext Preprocessor“ Tin tức viễn thông huyện Yên Thành” ”

Là ngôn ngữ lập trình kịch bản phía máy chủ, mã nguồn mở PHP thích hợpvới các trang Web, đợc tối u hoá cho ứng dụng Web do tính nhanh và nhỏ gọn.PHP có cú pháp giống ngôn ngữ C và Java nên dễ học, thời gian xây dựng sảnphẩm tơng đối ngắn so với các ngôn ngữ khác PHP là một trong các ngôn ngữlập trình phổ biến nhất trên thế giới

đã sử dụng UNIREG làm cơ sở dữ liệu cho công ty và trang Web của ông Sau

đó cơ sở dữ liệu này đợc chuyển sang mSQL Tuy nhiên cả hai cơ sở dữ liệu này

đều chạy không tốt, do đó ông viết MySQL với các lệnh API gần giống mSQL

* Nhóm ứng dụng Web đang đợc sử dụng phổ biến LAMP hoặc WAMP(Linux/Windows – 45K - CNTT Apache – 45K - CNTT MySQL – 45K - CNTT PHP/Perl/Python)

Trang 13

I.3 Mô hình phát triển phần mềm nguồn mở và phần mềm nguồn đóng

* Quy trình phát triển phần mềm:

Các phần mềm(mở hay đóng) đều thực hiện theo các bớc sau:

- Xác định các yêu cầu phần mềm (Requirement Engineering)

* Quy trình phát triển phần mềm nguồn đóng:

Các phần mềm nguồn đóng tuân thủ nghiêm ngặt theo các bớc của quy trìnhnêu trên Tuy nhiên, phần mềm nguồn đóng thờng phụ thuộc hệ điều hành, sửdụng các hàm của hệ điều hành đó (các hàm API – 45K - CNTT Application ProgrammingInterface)

- Các hàm API đợc mô tả chi tiết về dữ liệu đầu vào, đầu ra, các hoạt động (tài liệu của nhà cung cấp hệ điều hành)

- Không đợc biết mã nguỗn của hàm ( vì đó là bí mật kinh doanh của nhàcung cấp hệ điều hành)

- Nhà cung cấp chịu trách nhiệm đảm bảo hàm hoạt động đúng theo mô tả

* Mô hình phát triển phần mềm nguồn mở:

Mô hình phát triển phần mềm nguồn mở có đủ tất cả các giai đoạn của quytrình phát triển phần mềm nói chung Dự án phần mềm nguồn mở đợc chia làm 2loại theo tính chất :

- Dự án đợc tài trợ toàn phần : Kinh phí đợc tài trợ toàn phần bởi các tổchức Quy trình phát triển giống bất kỳ dự án phần mềm thơng mại nào khác(nhng tính chất lại là nguồn mở) Ví dụ : BSD, BIND, Sendmail… Các chuyên viên máy tính cũng nh

- Dự án không đợc tài trợ : Không đợc hỗ trợ kinh phí, mọi ngời tham gia dự

án với tính chất phi thơng mại Tuy nhiên vẫn có những điều khoản quy định :Cung cấp mã nguồn miễn phí hay có phí, ngời sử dụng có quyền sửa đổi và sửdụng mã nguồn hay không?

 Các quy trình của dự án Phần mềm nguồn mở :

a) Xác định yêu cầu của phần mềm (Requirement Engineering):

 Thông thờng các Yêu cầu phần mềm đợc phân tán và lan truyền trênInternet

Trang 14

 Lập trình viên và những ngời quna tâm trao đổi các thông tin về đặc tínhcủa hệ thống và công cụ.

b) Phân tích hệ thống phần mềm (Analysis):

Thông thờng, các phân tích hệ thống không đợc thực hiện trên các dự ánkhông đợc tài trợ

c) Thiết kế chi tiết (Design):

- Đây cũng là một bớc bị xem nhẹ trong quá trình phát triển phần mềmnguồn mở Thông thờng, thiết kế chi tiết đợc thực hiện ở giai đoạn thực hiện

* Các đặc điểm của quá trình phát triển phần mềm nguồn mở

- Trao đổi thông tin: Quá trình trao đổi thông tin giữa các thành viên trong

dự án mã nguồn mở thông thờng đợc thực hiện trên các dịch vụ Internet (Emaillist, Newsgroups của các Website của dự án)

- Khả năng hợp tác lớn và không phụ thuộc vào vị trí địa lý của các thànhviên

- Khả năng thực hiện song song: Nếu nh mô hình các thành phần đã đợc xác

định thì có thể tổ chức các nhóm lập trình viên giải quyết các nhiệm vụ độc lập.Lập trình viên tham gia theo sử thích nên quá trình thực hiện rất nhanh chóng

- Tránh đợc hiện tợng Code Focking (phân tán) là hiện tợng thờng gặp phảikhi có nhiều phiên bản mã nguồn của phần mềm – 45K - CNTT nhất là trong các dự án lớn)

* Các u điểm của mô hình phát triển phần mềm nguồn mở

- Phát triển phần mềm nguồn mở cho phép xây dựng các sản phẩm phầnmềm chất lợng và miễn phí dựa trên sự hợp tác của đông đảo các lập trình viên(Ví dụ: Linux)

- Thúc đẩy quá trình tham gia của nhiều ngời vào quá trình xây dựng vàphát triển phần mềm Phát triển phần mềm nguồn mở là quá trình tự phát triển,nếu dự án phần mềm nguồn mở thu hút đợc sự quan tâm của đông đảo ngời sửdụng thì nó sẽ phát triển rất nhanh chóng

Trang 15

- Phần mềm nguồn mở cho phép kiểm soát mã nguồn, kiểm thử và gỡ lỗivới chất lợng cao hơn các phần mềm nguồn đóng.

- Phần mềm nguồn mở thúc đẩy khả năng tái sử dụng của mã Lập trìnhviên có khả năng truy cập tới toàn bộ mã nguồn và họ có khả năng để lụa chọn

sử dụng và kế thừa những gì cần thiết

I.4 Cộng đồng phần mềm nguồn mở

Nếu nh phần mềm nguồn đóng đợc phát triển bởi một đội dự án thì phầnmềm nguồn mở đợc phát triển bởi cả một cộng đồng Cộng đồng phần mềmnguồn mở là lực lợng điều khiển sự tiến hoá của phần mềm nguồn mở Để thamgia vào cộng đồng hoặc xây dựng phát tiển và duy trì cộng đồng, phải nắm đợcbản chất, cấu trúc, họat động của cộng động đó

* Các thành viên trong cộng đồng:

Một số nhóm nghiên cứu phần mềm nguồn mở phân định ra 8 loại thànhviên trong cộng đồng phần mềm nguồn mở:

- Ngời dùng thụ động (Passive User): Chỉ đơn thuần sử dụng các phần mềm

nh các phần mềm thơng mại, quan tâm đến phần mềm nguồn mở chủ yếu dochất lợng cao và khả năng tự thay đổi khi cần thiết

-Ngời đọc (Reader): Ngời dùng chủ động, tích cực, không chỉ sử dụng màcòn cố gắng tìm hiểu xem hệ thống hoạt động nh thế nào bằng cách đọc mãnguồn Đóng vai trò nh ngời xét duyệt (Peer Reviewers) trong tổ chức phát triểnphần mềm truyền thống

- Ngời báo lỗi (Bug Reporter): Phát hiện và thông báo lỗi (không sửa lỗi và

có thể không đọc mã nguồn), đóng vai trò của ngời kiểm thử (test) trong tổ chứcphần mềm truyền thống

-Ngời sửa lỗi (Bug Fixer): Sửa các lỗi do họ phát hiện hoặc ngời khác thôngbáo Phải đọc, hiểu cặn kẽ phần mã nguồn phát sinh lỗi mới khi có thể chỉnh sửa

đợc

- Ngời phát triển ngoại vi (Peripheral Developer): Đóng góp thêm các chứcnăng, tính năng mới cho hệ thống (đóng góp là không thờng xuyên do đó thờigian tham gia ngắn)

- Ngời phát triển tích cực (Active Developer): Thờng xuyên đóng góp cáctính năng mới và giải quyết các lỗi Là lực lợng phát triển chủ yếu của các hệphần mềm mã nguồn mở

-Thành viên cốt cán (Core Member): Chịu trách nhiệm dẫn dắt, điều phối sựphát triển của dự án phần mềm mã nguồn mở Là những ngời “ Tin tức viễn thông huyện Yên Thành”thờng trực” của

dự án, tham gia với thời gian đủ dài và có những đóng góp nhất định cho sự tiến

Trang 16

hoá và phát triển của hệ thống Trong một số cộng đồng phần mềm mã nguồn

mở, những thành viên cốt cán đợc gọi là những ngời bảo trì (Maintainers)

-Trởng dự án (Project Leader): Là ngời nêu sáng kiến, tạo lập dự án, cótrách nhiệm quán xuyến hớng phát triển của dự án

Không phải cả 8 loại nêu trên nhất thiết có trong một dự án phần mềmnguồn mở Tỷ lệ phân bố có thể khác nhau, tên gọi các thành viên trong từng dự

án cũng có thể khác nhau Điều đáng chú ý ở đây là trong dự án phần mềm

th-ơng mại, vai trò của các thành viên là “ Tin tức viễn thông huyện Yên Thành”bị chỉ định” bởi sự lãnh đạo, cấp trên còntrong dự án phần mềm nguồn mở, các thành viên tự xác định vai trò của mìnhtheo khả năng và sở thích cá nhân

 Cấu trúc đĩa bao từ ngoài vào trong (có thể coi là cấu trúc phân cấp).Trung tâm của đĩa là trởng dự án Càng gần tâm thì vai trò của thành viên càng

có nhiều ảnh hởng tới dự án

 Vòng ngoài cùng là ngời dùng thụ động, là thành viên ít có ảnh hởng tới

dự án nhất Tuy nhiên lại có vai trò quyết định tới sự tồn tại và phát triển d án

Điều này thể hiện ở chỗ nếu có đông đảo ngời dùng quan tâm đến dự án thì sẽkích thích thành viên cốt cán làm việc hăng say hơn (tạo nên yếu tố tâm lý xãhội)

 Vai trò và ảnh hởng trong cộng đồng không liên quan đến tuổi tác và địa

vị của thành viên Càng đóng góp nhiều thì thành viên càng tiến gần vào tâm củacấu trúc hơn (việc thay đổi vai trò là thờng xuyên, không cố định nh phần mềmthơng mại)

 Để duy trì cộng đồng phần mềm mở có đợc sự phát triển bền vững, phải

đảm bảo tính cân đối trong cấu trúc Nếu tất cả các thành viên là ngời dùng thụ

động thì phần mềm không thể tiến hoá đợc, còn nếu tất cả đếu thành viên cốt cánthì khó có thể điều hoà mọi cố gắng, sự phát triển của phần mềm Do đó tạo nên

sự tiến hoá không bền vững của phần mềm

 Phân bố thành viên trong từng cộng đồng phần mềm nguồn mở khácnhau phụ thuộc vào bản chất của từng hệ phần mềm nguồn mở

 Nói chung, phần lớn thành viên là ngời dùng thụ động (trong cộng đồngApache, 99% thành viên là ngời dùng thụ động)

 Tỷ lệ ngời dùng giảm nhanh từ ngời đọc đến thành viên cốt cán Đa sốcác phần mềm mã nguồn mở chỉ do số ít các thành viên thực sự phát triển

* Cấu trúc của một số dự án phần mềm mã nguồn mở

**GNU (GNU s not UNIX)’s not UNIX)

Trang 17

- GNU là dự án xây dựng các phần mềm hệ thống mã nguồn mở chạy trêncác hệ thống Unix nhng không phải là UNIX (viết tắt của cụm từ GNU’s not UNIX)s notUNIX)

Một số phần mềm GNU:

Phần mềm hệ thống:

 Bash: command shell

 Emacs: Hệ soạn thảo văn bản

 Gnash: Flash player

 GNOME: Hệ thống giao diện

Trởng dự án (Project Leader):

Các chơng trình GNU thờng do trởng dự án đề xuất dới sự trợ giúp đắc lựccủa các thành viên cốt cán Trởng dự án đa ra phần lớn các quyết định về pháttriển của hệ thống, quyết định đóng góp nào đợc ghi nhận và đa vào phần mềmmã nguồn mở đó Thờng thì số lợng phản hồi nhiều do đó có nhiều phản hồi bị

bỏ qua

Ngời phát triển tích cực (Active Developer)

Là thành viên đóng góp bằng chơng trình và mã nguồn Họ là cầu nối trunggian để cải tiến các mã nguồn do ngời phát triển ngoại vi và ngời sửa lỗi thựchiện, đồng thời lựa chọn mã nguồn tốt để trởng dự án xem xét và quyết định tíchhợp vào sản phẩm phần mềm nguồn mở

Ngời đọc (Reader):

GNU là một phần mềm có chất lợng cao, đợc phát triển bởi đội ngũ lậptrình chuyên nghiệp nên có cộng đồng đông đảo ngời đọc Qua việc tìm hiểuhoạt động của hệ thống bằng cách đọc mã nguồn, ngời đọc GNU thu đợc nhiềuhiểu biết về kỹ năng lập trình, các tri thức hữu ích Họ là ngời xét duyệt tốt chophần mềm

Trang 18

Nhiều ngời phát triển tích cực làm việc trên các bài toán độc lập (viết trình

điểu khiển cho các thiết bị mới)

đa vào hệ thống một chức năng mới phải do ít nhất 1 thành viên cốt cán đa ra và

đợc bỏ phiếu bởi tất cả các thành viên cốt cán

Ngời phát triển tích cực (Nhóm phát triển chủ đạo)

Gồm khoảng 30 ngời, phát triển các chơng trình dới dạng gói và chỉ đợctích hợp vào hệ thống khi đợc phê chuẩn bởi các thành viên cốt cán

Ngời dùng thụ động & ngời báo lỗi

Phàn lớn thành viên thuộc loại này Số ngời đọc ít, ngời sửa lỗi lại càng íthơn

Là dự án nguồn mở thuộc lĩnh vực đa phơng tiện

Trởng dự án:

Có 1 trởng dự án (Atsuki Aoki), làm việc với các thành viên cốt cán Tất cảcác phát triển đều thực hiện trong nhóm này

Ngời báo lỗi:

Rất ít ngời báo lỗi do phiên bản chỉ đợc công bố sau khi đã kiểm thử cẩnthận

Ngời đọc:

Số lợng ít, phần lớn đọc mã nguồn Jun để học hỏi và sử dụng cho hệ thốngtơng tự viết trên ngôn ngữ khác

 Tiến hoá của hệ thống và cộng đồng:

Xem xét đặc tính tiến hoá của hệ thống phần mềm nguồn mở bằng cáchphân tích sự tiến hoá của 4 hệ thống đã nêu trên :

* GNU:

- Đây là một dự án chất lợng cao, phiên bản thống nhất và “ Tin tức viễn thông huyện Yên Thành”sạch” Đặc điểmtiến hoá của hệ thống này là: Một gói chơng trình trớc khi đợc tích hợp vào phiênbản chính thức phải đợc kiểm thử và chỉnh sửa kỹ

- Mẫu hình tiến hoá của GNU là tập trung theo một luồng trục chính

Trang 19

* Linux:

- Cho phép nhiều cách cài đặt khác nhau cho cùng 1 chức năng

- Có thể có nhiều nhánh tiến hoá khác nhau từ cùng một chơng trình

- Mẫu hình tiến hoá của Linux là mẫu hình phân rã

- Mẫu hình tiến hoá của PostgreSQL là mẫu hình hội tụ từ nhiều nhánh vàomột cành chung

và sở thích, mối quan tâm và thời gian

Con đờng từ một thành viên mới đến thành viên cốt cán :

- Bị cuốn hút vào cộng đồng phần mềm nguồn mở vì phần mềm ấy có thểgiải quyết đợc những vấn đề mà thành viên ấy quan tâm

- Tính sâu sắc, kỹ năng cao và độc đáo của một hệ phần mềm nguồn mở là

động lực chính thu hút các thành viên mới học hỏi nhiều hơn bằng cách đọc mãnguồn và chuyển thành ngời đọc

- Từ hiều mã nguồn thành viên (giờ đã trở thành ngời đọc) có thể gỡ lỗi domình tìm ra hoặc ngời khác thông báo và chuyển thành ngời gỡ lỗi

- Muốn có thêm một chức năng mới để hệ thống mạnh hơn, đáp ứng nhucầu tốt hơn, thành viên phải cải tiến mã nguồn của chơng trình và trở thành ngờiphát triển ngoại vi

- Thành viên có nhiều đóng góp đợc cộng đồng thừa nhận đợc coi là ngờiphát triển

- Thành viên có uy tín đủ cao thì đợc coi là thành viên cốt lõi

Sự tiến hoá của cộng đồng phần mềm nguồn mở thực chất là quá trình học

để nâng cao trình độc của từng thành viên Tuy nhiên, để có đợc sự thừa nhận

Trang 20

của cộng đồng, không phải thành viên nào muốn cũng có thể đi sâu vào bêntrong mà còn phải phụ thuộc vào năng lực của chính thành viên đó Phần lớn cácthành viên di chuyển qua lại tại 3 lớp ngoài cùng.

Có 2 yếu tố quan trọng cho sự tiến hoá của cộng đồng:

 Sự có mặt của thành viên có mong muốn đóng góp và tăng ảnh hởng củamình trong cộng đồng

 Cơ chế xã hội của cộng đồng trong việc khuyến khích và cho phép thànhviên thay đổi vai trò của mình một cách dễ dàng

Phần mềm nguồn mở muốn phát triển bền vững thì phải có đợc cả sự pháttriển của hệ thống và cộng đồng của nó

I.5 Các mô hình kinh doanh phần mềm nguồn mở

Câu hỏi đợc đặt ra ở đây là liệu phần mềm nguồn mở có thể kinh doanh khitất cả đều mở và khi giá phần mềm rất rẻ? Phần mềm “ Tin tức viễn thông huyện Yên Thành”đóng” còn bị sao chéplậu, vậy “ Tin tức viễn thông huyện Yên Thành”mở” thì kinh doanh đợc không?

Thông thờng, ngời dùng phát triển phần mềm nguồn mở đều tin tởng phầnmềm nguồn mở có chi phí TCO (Total cost Of Ownership) rất thấp Song thực tế

Không hẳn 100% các phần mềm nguồn mở đều rẻ hơn các phần mềm có bản

“ Tin tức viễn thông huyện Yên Thành”

quyền, nhng chắc chắn ban đầu là nh vậy Nhìn qua giá phần mềm của Microsoft và Linux, có thể thấy, nguồn mở rẻ hơn rất nhiều Vì vậy nếu cả thế giới dùng Internet, 1 tỉ ngời tiếp theo sẽ chọn phần mềm nguồn mở hay những phơng án về giá cả khác từ những ngời bán dạo phần mềm độc quyền” nh nhà

kinh tế Kenneth Cukier đã nói

Mô hình kinh doanh của một số doanh nghiệp nguồn mở (chủ yếu doanhthu từ các dịch vụ bổ sung nh t vấn và hỗ trợ Phân biệt giữa kinh doanh dựa sảnphẩm (product related business) và kinh doanh dựa vào các dịch vụ (servicerelated business): Các nhà cung cấp dịch vụ hỗ trợ, đào tạo, tuyển nhân sự vàcung cấp nhân sự

Trang 21

Chơng 2 phần mềm mở Apache, PHP & MySQLII.1 Apache

Apache hay là chơng trình máy chủ HTTP là một chơng trình dành cho máychủ đối thoại qua giao thức HTTP Apache chạy trên các hệ điều hành tơng tự

nh Unix, Microsoft Windows, Novell Netware và các hệ điều hành khác Apache

đóng một vai trò quan trọng trong qúa trình phát triển của mạng web thế giới(tiếng Anh: World Wide Web)

Khi đợc phát hành lần đầu, Apache là chơng trình máy chủ mã nguồn mởduy nhất có khả năng cạnh tranh với chơng trình máy chủ tơng tự của NetscapeCommunications Corporation mà ngày nay đợc biết đến qua tên thơng mại SunJava System Web Server Từ đó trở đi, Apache đã không ngừng tiến triển và trởthành một phần mềm có sức cạnh tranh mạnh so với các chơng trình máy chủkhác về mặt hiệu suất và tính nãng phong phú Từ tháng 4 nãm 1996, Apache trởthành một chơng trình máy chủ HTTP thông dụng nhất Hơn nữa, Apache thờng

đợc dùng để so sánh với các phần mềm khác có chức năng tơng tự Tính đếntháng 1 năm 2007 thì Apache chiếm đến 60% thị trờng các chong trình phânphối trang web

Apache đợc phát triển và duy trì bở một cộng đồng mã nguồn mở dới sự bảotrợ của Apache Software Foundation Apache đợc phát hành với giấy phépApache License và là một phần mềm tự do và miễn phí

APACHE là một kiểu mẫu Web Server rất phổ biến Giống nh Linux, PHP,MySQL nó là một dự án nguồn mở Không có gì ngạc nhiên khi ngời ta thấyApache đợc hỗ trợ rất tốt trên môi trờng Unix, nhng chỉ khá tốt trong Windows.Apache tận dụng đợc tính năng của third-party Bởi vì đây là nguồn mở nên bất

kỳ ai có khả năng đều có thể viết chơng trình mở rộng tính năng của Apache.PHP hoạt động với t cách là một phần mở rộng của Apache, và ngời ta gọi là mộtmodule của Apache Apache có tính ổn định và tốc độ đáng phải nói Tuy nhiên,cũng có một số sự phàn nàn về nó là không hỗ trợ công cụ đồ hoạ trực quan, điều

có thể giúp ngời ta làm việc một cách dễ dàng hơn Phải thực hiện các thay đổi

đối với Apache bằng cách sử dụng dòng lệnh, hoặc các tập tin text trong folderchơng trình Apache Nếu lần đầu đến với Apache thì bạn sẽ gặp một chút lạ lẫm.Mặc dù Apache chỉ làm việc tốt trên Unix, nhng cũng có những phiên bản chạytốt trên hệ Windows

II.2 PHP (Personal Home Page)

PHP đợc phát triển từ một sản phẩm có tên là PHP/FI PHP/FI do RasmusLerdorf tạo ra năm 1995, ban đầu đợc xem nh là một tập con đơn giản của các

Trang 22

mã kịch bản Perl để theo dõi tình hình truy cập đến bản sơ yếu lý lịch của ôngtrên mạng Ông đã đặt tên cho bộ mã kịch bản này là 'Personal Home PageTools' Khi cần đến các chức năng rộng hơn, Rasmus đã viết ra một bộ thực thibằng C lớn hơn để có thể truy vấn tới các cơ sở dữ liệu và giúp cho ngời sử dụngphát triển các ứng dụng web đơn giản Rasmus đã quyết định công bố mã nguồncủa PHP/FI cho mọi ngời xem, sử dụng cũng nh sửa các lỗi có trong nó đồngthời cải tiến mã nguồn

PHP/FI, viết tắt từ "Personal Home Page/Forms Interpreter", bao gồm một

số các chức năng cơ bản cho PHP nh ta đã biết đến chúng ngày nay Nó có cácbiến kiểu nh Perl, thông dịch tự động các biến của form và cú pháp HTMLnhúng Cú pháp này giống nh của Perl, mặc dù hạn chế hơn nhiều, đơn giản và

có phần thiếu nhất quán

Vào năm 1997, PHP/FI 2.0, lần viết lại thứ hai của phiên bản C, đã thu hút

đợc hàng ngàn ngời sử dụng trên toàn thế giới với xấp xỉ 50.000 tên miền đã đợcghi nhận là có cài đặt nó, chiếm khoảng 1% số tên miền có trên mạng Internet.Tuy đã có tới hàng nghìn ngời tham gia đóng góp vào việc tu chỉnh mã nguồncủa dự án này thì vào thời đó nó vẫn chủ yếu chỉ là dự án của một ngời

PHP/FI 2.0 đợc chính thức công bố vào tháng 11 năm 1997, sau một thờigian khá dài chỉ đợc công bố dới dạng các bản beta Nhng không lâu sau đó, nó

đã đợc thay thế bởi các bản alpha đầu tiên của PHP 3.0

PHP 3

PHP 3.0 là phiên bản đầu tiên cho chúng ta thấy một hình ảnh gần gũi vớicác phiên bản PHP mà chúng ta đợc biết ngày nay Nó đã đợc Andi Gutmans vàZeev Suraski tạo ra năm 1997 sau khi viết lại hoàn toàn bộ mã nguồn trớc đó Lý

do chính mà họ đã tạo ra phiên bản này là do nhận họ thấy PHP/FI 2.0 hết sứcyếu kém trong việc phát triển các ứng dụng thơng mại điện tử mà họ đang xúctiến trong một dự án của trờng đại học Trong một nỗ lực hợp tác và bắt đầu xâydựng dựa trên cơ sở ngời dùng đã có của PHP/FI, Andi, Rasmus và Zeev đãquyết định hợp tác và công bố PHP 3.0 nh là phiên bản thế hệ kế tiếp của PHP/FI2.0, và chấm dứt phát triển PHP/FI 2.0

Một trong những sức mạnh lớn nhất của PHP 3.0 là các tính năng mở rộngmạnh mẽ của nó Ngoài khả năng cung cấp cho ngời dùng cuối một cơ sở hạtầng chặt chẽ dùng cho nhiều cơ sở dữ liệu, giao thức và API khác nhau, các tínhnăng mở rộng của PHP 3.0 đã thu hút rất nhiều nhà phát triển tham gia và đềxuất các mô đun mở rộng mới Hoàn toàn có thể kết luận đợc rằng đây chính là

điểm mấu chốt dẫn đến thành công vang dội của PHP 3.0 Các tính năng khác

Trang 23

đ-ợc giới thiệu trong PHP 3.0 gồm có hỗ trợ cú pháp hớng đối tợng và nhiều cúpháp ngôn ngữ nhất quán khác

Ngôn ngữ hoàn toàn mới đã đợc công bố dới một cái tên mới, xóa bỏ mốiliên hệ với việc sử dụng vào mục đích cá nhân hạn hẹp mà cái tên PHP/FI 2.0 gợinhắc Nó đã đợc đặt tên ngắn gọn là 'PHP', một kiểu viết tắt hồi quy của "PHP:Hypertext Preprocessor"

Vào cuối năm 1998, PHP đã phát triển đợc con số cài đặt lên tới hàng chụcngàn ngời sử dụng và hàng chục ngàn Website báo cáo là đã cài nó Vào thời kì

đỉnh cao, PHP 3.0 đã đợc cài đặt cho xấp xỉ 10% số máy chủ Web có trên mạngInternet

PHP 3.0 đã chính thức đợc công bố vào tháng 6 năm 1998, sau thời gian 9tháng đợc cộng đồng kiểm nghiệm

PHP 4

Vào mùa đông năm 1998, ngay sau khi PHP 3.0 chính thức đợc công bố,Andi Gutmans và Zeev Suraski đã bắt đầu bắt tay vào việc viết lại phần lõi củaPHP Mục đích thiết kế là nhằm cải tiến tốc độ xử lý các ứng dụng phức tạp, vàcải tiến tính mô đun của cơ sở mã PHP Những ứng dụng nh vậy đã chạy đợctrên PHP 3.0 dựa trên các tính năng mới và sự hỗ trợ khá nhiều các cơ sở dữ liệu

và API của bên thứ ba, nhng PHP 3.0 đã không đợc thiết kế để xử lý các ứngdụng phức tạp nh thế này một cách có hiệu quả

Một động cơ mới, có tên 'Zend Engine' (ghép từ các chữ đầu trong tên củaZeev và Andi), đã đáp ứng đợc các nhu cầu thiết kế này một cách thành công, vàlần đầu tiên đợc giới thiệu vào giữa năm 1999 PHP 4.0, dựa trên động cơ này, và

đi kèm với hàng loạt các tính năng mới bổ sung, đã chính thức đợc công bố vàotháng 5 năm 2000, gần 2 năm sau khi bản PHP 3.0 ra đời Ngoài tốc độ xử lý đợccải thiện rất nhiều, PHP 4.0 đem đến các tính năng chủ yếu khác gồm có sự hỗtrợ nhiều máy chủ Web hơn, hỗ trợ phiên làm việc HTTP, tạo bộ đệm thông tin

đầu ra, nhiều cách xử lý thông tin ngời sử dụng nhập vào bảo mật hơn và cungcấp một vài các cấu trúc ngôn ngữ mới

Với PHP 4, số nhà phát triển dùng PHP đã lên đến hàng trăm nghìn và hàngtriệu site đã công bố cài đặt PHP, chiếm khoảng 20% số tên miền trên mạngInternet

Nhóm phát triển PHP cũng đã lên tới con số hàng nghìn ngời và nhiềunghìn ngời khác tham gia vào các dự án có liên quan đến PHP nh PEAR, PECL

và tài liệu kĩ thuật cho PHP

PHP 5

Trang 24

Sự thành công hết sức to lớn của PHP 4.0 đã không làm cho nhóm phát triểnPHP tự mãn.Cộng đồng php đã nhanh chóng giúp họ nhận ra những yếu kém củaPHP 4 đặc biệt với khả năng hỗ trợ lập trình hớng đối tợng (OOP), xử lý XML,không hỗ trợ giao thức máy khách mới của MySQL 4.1 và 5.0, hỗ trợ dịch vụweb yếu Những điểm này chính là mục đích để Zeev và Andi viết Zend Engine2.0, lõi của PHP 5.0 Một thảo luận trên Slashdot đã cho thấy việc phát triển PHP5.0 có thể đã bắt đầu vào thời điểm tháng 12 năm 2002 nhng những bài phỏngvấn Zeev liên quan đến phiên bản này thì đã có mặt trên mạng Internet vàokhoảng tháng 7 năm 2002 Ngày 29 tháng 6 năm 2003, PHP 5 Beta 1 đã chínhthức đợc công bố để cộng đồng kiểm nghiệm Đó cũng là phiên bản đầu tiên củaZend Engine 2.0 Phiên bản Beta 2 sau đó đã ra mắt vào tháng 10 năm 2003 với

sự xuất hiện của hai tính năng rất đợc chờ đợi: Iterators, Reflection nhngnamespaces một tính năng gây tranh cãi khác đã bị loại khỏi mã nguồn Ngày 21tháng 12 năm 2003: PHP 5 Beta 3 đã đợc công bố để kiểm tra với việc phân phốikèm với Tidy, bỏ hỗ trợ Windows 95, khả năng gọi các hàm PHP bên trongXSLT, sửa chữa nhiều lỗi và thêm khá nhiều hàm mới PHP 5 bản chính thức đã

ra mắt ngày 13 tháng 7 năm 2004 sau một chuỗi khá dài các bản kiểm tra thửbao gồm Beta 4, RC 1, RC2, RC3 Mặc dù coi đây là phiên bản sản xuất đầu tiênnhng PHP 5.0 vẫn còn một số lỗi trong đó đáng kể là lỗi xác thực HTTP

Ngày 14 tháng 7 năm 2005, PHP 5.1 Beta 3 đợc PHP Team công bố đánhdấu sự chín muồi mới của PHP với sự có mặt của PDO, một nỗ lực trong việc tạo

ra một hệ thống API nhất quán trong việc truy cập cơ sở dữ liệu và thực hiện cáccâu truy vấn Ngoài ra, trong PHP 5.1, các nhà phát triển PHP tiếp tục có nhữngcải tiến trong nhân Zend Engine 2, nâng cấp mô đun PCRE lên bản PCRE 5.0cùng những tính năng và cải tiến mới trong SOAP, streams và SPL

Trang 25

tiết kiệm thời gian và tiền bạc cho những Web sites có dung lợng lớn, phần mềm

đóng gói – 45K - CNTT bao gồm cả những nhà đi đầu trong lĩnh vực công nghiệp nhYahoo!, Alcatel-Lucent, Google, Nokia, YouTube và

MySQL không chỉ là cơ sở dữ liệu mã nguồn mở phổ biến nhất trên thếgiới, nó còn trở thành cơ sở dữ liệu đợc chọn cho thế hệ mới của các ứng dụngxây dựng trên nền Linux, Apache, MySQL, PHP/Perl/Python MySQL chạy trênhơn 20 flatform bao gồm: Linux, Windows, OS/X, HP-UX, AIX, Netware, mang

đến cho bạn tính linh hoạt trong việc sử dụng

Lý do chọn MySQL:

1 Tính linh hoạt.

Máy chủ cơ sở dữ liệu MySQL cung cấp đặc tính linh hoạt, có sức chứa để

xử lý các ứng dụng đợc nhúng sâu với dung lợng chỉ 1MB để chạy các kho dữliệu đồ sộ lên đến hàng terabytes thông tin Sự linh hoạt về flatform là một đặctính lớn của MySQL với tất cả các phiên bản của Linux, Unix, và Windows đang

đợc hỗ trợ Và dĩ nhiên, tính chất mã nguồn mở của MySQL cho phép sự tùybiến hoàn toàn theo ý muốn để thêm vào các yêu cầu thích hợp cho databaseserver

vũ khí cần phải có cho các hệ thống doanh nghiệp khó tính ngày nay

3 Có thể sử dụng ngay.

Sự đáng tin cậy cao và tính “ Tin tức viễn thông huyện Yên Thành”mì ăn liền” là những tiêu chuẩn đảm bảo củaMySQL MySQL đa ra nhiều tùy chọn có thể dùng ngay từ cấu hình tái tạochủ/tớ tốc độ cao, để các nhà phân phối thứ 3 đa ra những giải pháp có thể dùngngay duy nhất cho server cơ sở dữ liệu MySQL

4 Hỗ trợ giao dịch mạnh.

MySQL đa ra một trong số những engine giao dịch cơ sở dữ liệu mạnh nhấttrên thị trờng Các đặc trng bao gồm hỗ trợ giao dịch ACID hoàn thiện ( Atomic– 45K - CNTT tự động, Consistent – 45K - CNTT thống nhất, Isolated – 45K - CNTT độc lập, Durable – 45K - CNTT bền vững),khóa mức dòng không hạn chế, khả năng giao dịch đợc phân loại, và hỗ trợ giaodịch đa dạng (multi-version) mà ngời đọc không bao giờ gây trở ngại cho ngờiviết và ngợc lại Tính toàn vẹn của dữ liệu cũng phải đợc bảo đảm trong suốt quá

Trang 26

trình server có hiệu lực, các mức giao dịch độc lập đợc chuyên môn hóa, và pháthiện khóa chết ngay lập tức.

5 Nơi lu trữ Web và Data đáng tin cậy.

MySQL là nhà máy chuẩn cho các web sites phải trao đổi thờng xuyên vì nó

có engine xử lý tốc độ cao, khả năng chèn dữ liệu nhanh ghê gớm, và hỗ trợmạnh cho các chức năng chuyên dụng của web nh tìm kiếm văn bản nhanh.Những tính năng này cũng đợc áp dụng cho môi trờng lu trữ dữ liệu mà MySQLtăng cờng đến hàng terabyte cho các server đơn Các tính năng khác nh bảng nhớchính, cây B và chỉ số băm, và bảng lu trữ đã đợc cô lại để giảm các yêu cầu lutrữ đến 80% làm cho MySQL trở thành lựa chọn tốt nhất cho cả ứng dụng web

và các ứng dụng doanh nghiệp

6 Chế độ bảo mật dữ liệu mạnh.

Vì bảo mật dữ liệu cho một công ty là công việc số một của các chuyên gia

về cơ sở dữ liệu, MySQL đa ra tính năng bảo mật đặc biệt chắc chắn dữ liệu sẽ

đ-ợc bảo mật tuyệt đối Trong việc xác nhận truy cập cơ sở dữ liệu, MySQL cungcấp các kĩ thuật mạnh mà chắc chắn chỉ có ngời sử dụng đã đợc xác nhận mới cóthể truy nhập đợc vào server cơ sở dữ liệu, với khả năng này để chặn ngời dùngngay từ mức máy khách là điều có thể làm đợc SSH và SSL cũng đợc hỗ trợ đểchắc chắn các kết nối đợc an toàn và bảo mật Một đối tợng framework đặcquyền đợc đa ra mà ngời sử dụng chỉ có thể nhìn thấy dữ liệu, các hàm mã hóa

và giải mã dữ liệu mạnh chắc chắn rằng dữ liệu sẽ đợc bảo mật Cuối cùng, tiệních backup và recovery cung cấp bởi MySQL và các hãng phần mềm thứ 3 chophép backup logic và vật lý hoàn thiện cũng nh recovery toàn bộ hoặc tại mộtthời điểm nào đó

7 Sự phát triển ứng dụng hỗn hợp.

Một trong số các lý do khiến cho MySQL là cơ sở dữ liệu mã nguồn mở phổbiến nhất thế giới là nó cung cấp hỗ trợ hỗn hợp cho bất kì sự phát triển ứngdụng nào cần Trong cơ sở dữ liệu, hỗ trợ có thể đợc tìm thấy trong các storedprocedure, trigger, function, view, cursor, ANSI-standard SQL, và nhiều nữa.Với các ứng dụng nhúng, th viện plug-in có sẵn để nhúng vào cơ sở dữ liệuMySQL hỗ trợ trong bất kì ứng dụng nào MySQL cũng cung cấp các bộ kết nốinh: ODBC, JDBC, … Các chuyên viên máy tính cũng nh để cho phép tất cả các form của ứng dụng sử dụng MySQL

nh một server quản lí dữ liệu đợc u tiên

Trang 27

Macintosh hay Unix Khi đã đợc cài đặt, tính năng tự quản lý nh tự động mởrộng không gian, tự khởi động lại, và cấu hình động sẵn sàng cho ngời quản trịcơ sở dữ liệu làm việc MySQL cũng cung cấp một bộ hoàn thiện các công cụquản lý đồ họa cho phép một DBA quản lý, sửa chữa, và điều khiển hoạt độngcủa nhiều server MySQL từ một máy trạm đơn Nhiều công cụ của các hãngphần mềm thứ 3 cũng có sẵn trong MySQL để điều khiển các tác vụ từ thiết kếdữ liệu và ETL, đến việc quản trị cơ sở dữ liệu hoàn thiện, quản lý công việc, vàthực hiện kiểm tra.

9 Mã nguồn mở tự do và hỗ trợ 24/7.

Nhiều công ty lỡng lự trong việc giao phó toàn bộ cho phần mềm mã nguồn

mở vì họ tin họ không thể tìm đợc một cách hỗ trợ hay mạng lới an toàn phục vụchuyên nghiệp, hiện tại, họ tin vào phần mềm có bản quyền để chắc chắn về sựthành công toàn diện cho các ứng dụng chủ chốt của họ Những lo lắng của họ

có thể đợc dẹp bỏ với MySQL, sự bồi thờng là có trong mạng lới MySQL

10 Tổng chi phí thấp nhất.

Bằng cách sử dụng MySQL cho các dự án phát triển mới, các công ty đangthấy rõ việc tiết kiệm chi phí Đợc hoàn thành thông qua sử dụng server cơ sở dữliệu MySQL và kiến trúc scale-out, các doanh nghiệp đã tìm ra cái mà họ có thể

đạt đợc ở mức ngạc nhiên về khả năng xử lý Thêm vào đó, tính tin cậy và dễ duytrì của MySQL ở mức trung bình mà ngời quản trị cơ sở dữ liệu không phải mấtnhiều thời gian sửa chữa hay vấn đề thời gian chết

Chơng III Giới thiệu về gói mã nguồn mở Joomla

III.1 Lý do chọn Joomla

Joomla giúp mọi ngời có thể phát triển việc kinh doanh, học tập, giảng dạy,giới thiệu, quảng bá hình ảnh, dịch vụ, sản phẩm của công ty, của trờng học tốt

với chi phí rất thấp Tại Việt Nam, hiện Joomlaviet.org vẫn là website số 1 của

cộng đồng Joomla Việt Nam nhờ tính hỗ trợ cao và phi lợi nhuận Tính đếntháng 3 năm 2009, Joomla Việt có gần 50 ngàn thành viên - là những ngời yêuthích Joomla nói riêng, mã nguồn mở nói chung

Joomla đợc sử dụng ở khắp mọi nơi trên thế giới, từ những website cá nhâncho tới những hệ thống website doanh nghiệp có tính phức tạp cao, cung cấpnhiề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 đáp ứng đợc mô tả về 7 đặc tính của Web 2.0:

1 Web có vai trò nền tảng, có thể chạy mọi ứng dụng

Trang 28

2 Tập hợp trí tuệ cộng đồng

3 Dữ liệu có vai trò then chốt

4 Phần mềm đợc cung cấp ở dạng dịch vụ web và đợc cập nhật khôngngừng

5 Phát triển ứng dụng dễ dàng và nhanh chóng

6 Phần mềm có thể chạy trên nhiều thiết bị

7 Giao diện ứng dụng phong phú

III.2 Giới thiệu về Joomla

Joomla là một hệ quản trị nội dung mã nguồn

mở Joomla đợc viết bằng ngôn ngữ PHP và kết nối tới cơ sở dữ liệu MySQL, cho phép ngời sử dụng có thể dễ dàng xuất bản các nội dung của ngời dùng lên Internet hoặ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), trang dùng để in, bản

tin nhanh, blog, diễn đàn, bình chọn, lịch biểu, tìm kiếm trong site 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ống website doanh nghiệp có tính phức tạp cao, cung cấpnhiều dịch vụ và ứng dụng Joomla có mã nguồn mở do đó việc sử dụng Joomla

là miễn phí cho tất cả mọi ngời trên thế giới Joomla là sản phẩm cùng dòng với

Mambo giữa tập đoàn Miro của úc đã phát triển Mambo theo dạng ứng dụng mã nguồn đóng Đến tháng 4 năm 2001, công ty đã thông qua một chính sách bản quyền kép, nghĩa là phát hành Mambo theo cả giấy phép GPL.

Mọi thứ vẫn tiến triển bình thờng cho đến trớc khi xảy ra tranh chấp về mặt

pháp lý vào năm 2003 Vụ việc dẫn tới ý tởng Mambo cần phải đợc bảo vệ bởi một tổ chức phi lợi nhuận Bởi vậy vào ngày 17 tháng 8 năm 2005, toàn bộ đội

phát triển nòng cốt của Mambo đã rời khỏi dự án trong khi đang làm việc với

phiên bản 4.5.3 Nhờ sự trợ giúp của Trung tâm Luật Tự do Phần mềm (Software Freedom Law Center - SFLC), 20 thành viên nòng cốt cũ của Mambo đã thành

lập một tổ chức phi lợi nhuận khác lấy tên là Open Source Matters, để hỗ trợ vềmặt tổ chức, pháp lý và kinh phí cho dự án mã nguồn mở còn cha đợc đặt tên củacả nhóm Cùng lúc đó, nhóm phát triển cũng lập một website lấy tên

OpenSourceMatters để phân phối thông tin tới những ngời sử dụng, những ngời phát triển, những ngời thiết kế và cộng đồng Joomla nói chung Đến ngày 16 tháng 9 năm 2005 phiên bản Joomla 1.0 đầu tiên ra đời.

Trang 29

Hình III.1 Trang chủ mặc định sau khi cài đặt Joomla 1.0Kiến trúc

Joomla 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ác

th viện và các plugin (còn đợc biết với tên gọi mambot) Tầng thứ hai là mức ứngdụ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

Hình III.2 Kiến trúc Joomla

Trang 30

III.3 Các dòng phiên bản

Hiện Joomla có 2 dòng phiên bản chính:

* 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 (ngày 15 tháng 9 năm 2005)

+ Phiên bản phát hành mới nhất: Joomla! 1.0.15 (ngày 22 tháng 2 năm

 Joomla 1.5.x: Phiên bản thế hệ 2

+ Các phiên bản cũ (giai đoạn phát triển): Joomla 1.5 beta, Joomla 1.5

RC1, Joomla 1.5 RC2, Joomla 1.5 RC3, Joomla 1.5 RC4

+ Phiên bản phát hành mới nhất: Joomla 1.5.7 (ngày 07 tháng 09 năm

2008)

Phiên bản Joomla 1.5 là phiên bản cải tiến từ Joomla 1.0.x (phần mã đợcviết lại hoàn toàn, tuy nhiên vẫn giữ cách hành xử nh cũ) đợc coi nh Mambo 4.6

Joomla 1.5 tiếp tục duy trì một giao diện ngời sử dụng đơn giản (nhìn và cảm

nhận - look and feel).

Cả Joomla 1.5 và Mambo 4.6 đều hỗ trợ đa ngôn ngữ Joomla thì sử dụng

file định dạng ".ini" để lu các thông tin chuyển đổi ngôn ngữ, còn Mambo thì sử dụng file định dạng ".gettext" 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 khách-chủxml-rpc Nó cũng hỗ trợ các trình

điều khiển cơ sở dữ liệu dành cho MySQL 4.1+ (trên nền PHP 5) và tăng cờng

hỗ trợ cho MySQL 5, cũng nh hỗ trợ các loại cơ sở dữ liệu khác

Điểm mạnh của Joomla 1.5: Phần quản trị Website có sử dụng công nghệ

Web 2.0, một số tính năng đợc cải tiến hơn so với Joomla 1.0

III.4 Các khái niệm cơ bản

3.4.1 Front-end, Back-end, Template

- Front-end (tiền sảnh) : còn đợc biết với tên gọi Public Front-end: phần

giao diện phía ngoài, nơi tiếp xúc với mọi ngời sử dụng Bất cứ ai cũng có thểtrông thấy khi gõ đúng đờng dẫn URL vào trình duyệt Front-end chứa 1 trang

đặc biệt là FrontPage (homepage) - trang chủ

Trang 31

- Back-end (hậu sảnh): hay tên gọi Public Back-end, Administrator, Control

Pane: phần dành cho ngời quản trị Những ngời bình thờng không biết đờng dẫn

để truy cập, hoặc nếu có biết thì cũng phải qua bớc kiểm tra tài khoản

- Template (Temp): Là giao diện, khuông dạng, kiểu mẫu, hình thức đợc

thiết kế để trình bày nội dung của trang Web và có các vị trí định sẵn để tích hợpcác bộ phận, thành phần của trang Web Joomla cho phép cài đặt và thay đổiTemp cho Web Site hay cho từng trang Web khác nhau

3.4.2 Section, Category, Content

Trớc khi đi vào xây dựng một Website bằng Joomla cần nắm rõ 3 khái niệmquan trọng : Section, Category và Content

* Content : là toàn bộ nội dung của một bài viết và thờng gồm 2 phần:

- Phần giới thiệu (Intro Text) : Phần này nêu ngắn gọn, tóm tắt hoặc là ý mở

đầu cho toàn bộ bài viết

- Phần chi tiết (Description Text) : Phần còn lại của bài viết

3.4.3 Các thành phần mở rộng

* Module:

Trang 32

Module là một trong 3 thành phần mở rộng chính của Joomla Đó là một

đoạn mã nhỏ thờng đợc dùng để truy vấn các thông tin từ cơ sở dữ liệu và hiểnthị các kết quả tìm đợc Nó có thể đợc nạp vào một vị trí bất kỳ trên template (vịtrí left, right, top, bottom hoặc vị trí do ngời dùng định nghĩa); có thể hiện trêntất cả các trang của Website hay một số trang đợc ấn định Khả năng tơng tácgiữa ngời sử dụng và hệ thống thông qua module là hạn chế (chúng ta thờng chỉnhận thông tin trả về)

Module có tên bắt đầu bằng mod_

Chúng ta có các module thông dụng:

- Lastest News (mod_latestnews): Module hiển thị các tin mới nhất

- Popular News (mod_mostreads): Module hiển thị các bài đợc quan tâm

nhiều nhất

- Related Items (mod_related_items): Module hiển thị các bài viết liên quan.

- Random Image (mod_random_image): Module hiển thị các ảnh ngẫu

nhiên

- Search Module (mod_search): Module công cụ tìm kiếm.

- Login Module (mod_login): Module hiển thị form đăng nhập hệ thống.

- Stats Module (mod_stats): Module hiển thị các thông tin thống kê về hệ

thống

- Menu Module (mod_mainmenu): Module hiển thị các menu của website.

- Banners Module (mod_banners): Moudule hiển thị các banner quảng cáo.

* Component (Com): Là thành phần chính của trang Web, nó quyết định

đến chức năng, hình thức, nội dung chính của mỗi trang Web Com có thể cóthêm Mod để hỗ trợ cho việc hiển thị các chức năng và nội dung của Com Com

có thể đợc cài đặt thêm vào WebSite Thông thờng sau khi cài đặt Joomla có sẵncác Component:

- Banners: quản lý các bảng quảng cáo.

- Contacts: quản lý việc liên hệ giữa ngời dùng với Ban quản trị WebSite

- Search: quản lý việc tìm kiếm.

- News Feeds: quản lý các tin tức.

- Polls: quản lý việc bình chọn, ý kiến của ngời dùng.

- Web Links: quản lý các liên kết ngoài WebSite.

- Com: quản lý nội dung của trang Web.

* Mambot (Plug-in): Là các chức năng đợc bổ sung thêm cho Com, cácMambot này sẽ can thiệp, bổ sung vào nội dung của trang Web trớc hoặc sau khi

nó đợc hiển thị Mambot có thể đợc cài đặt thêm vào WebSite Tất cả các thành

Trang 33

phần mở rộng đều đợc cài đặt thêm hoặc gỡ bỏ thông qua các Menu lệnh trongJoomla.

III.5 Cài đặt Joomla

Để cài đặt Joomla trên máy tính của bạn, bạn cần sử dụng các gói phầnmềm sau: Công cụ giả lập máy tính thành máy chủ Web Xampp và gói phần

mềm Joomla.

a) Cài đặt công cụ XAMPP

Xampp dùng để giả lập máy tính của bạn thành một máy chủ web (máy tínhcủa bạn khi đợc giả lập máy chủ web sẽ đợc gọi là: localhost, để phân biệt vớicác máy chủ đang hoạt động trên web là host server) Bạn vào địa chỉ sau: http://

www.apachefriends.org để tải bản cài đặt beta2.exe Sau đó bung gói nén xampp và chọn th mục cài đặt là th mục gốc của

xampp-win32-1.6.8-installer-máy tính :

Hình III.1 Màn hình bớc đầu cài đặt XamppChọn Next để tiếp tục

Trang 34

Hình III.2 Các bớc tiếp theo của quá trình cài đặt Xampp

Đánh dấu vào 3 ô Install Apache… Các chuyên viên máy tính cũng nh./MySQL… Các chuyên viên máy tính cũng nh./Filezilla… Các chuyên viên máy tính cũng nh./ và chọn Install

để tiếp tục

Sau khi cài đặt thành công sẽ xuất hiện th mục xampp trong ổ đĩa C.

Hình III.3 Th mục Xampp xuất hiện trong ổ C

- Bớc tiếp theo là tạo cơ sở dữ liệu cho Website

Trang 35

Gõ địa chỉ http://localhost/xampp vào trình duyệt trên máy, sẽ xuất hiện

trang quản lý chính của Xampp.

Hình III.4 Màn hình trang quản lý của Xampp

Trang 36

Vào mục PhpMyAdmin phía bên menu trái, hoặc gõ địa chỉ

http://localhost/phpmyadmin để vào tạo cơ sở dữ liệu cho Website.

Hình III.5a Bảng cơ sở dữ liệu

Gõ tên cơ sở dữ liệu vào ô Create new database và chọn utf8_general_ci trong mục Collation Sau đó click vào nút Create để hoàn tất

Ví dụ: ở trên hình 5, create new database la: “ Tin tức viễn thông huyện Yên Thành”nguyensen1”

Khi xuất hiện thông báo: Database fitalbum has been created cơ sở dữ liệu

đã đợc tạo thành công

Ví dụ: nh hình dới đây, ta đã tạo thành công database là: “ Tin tức viễn thông huyện Yên Thành”nguyensen1”:

Hình III.5b Bảng cơ sở dữ liệu

Trang 37

b) Cài đặt JOOMLA:

Việc cài đặt Website Joomla là rất dễ dàng, đơn giản và nhanh chóng đốivới tất cả mọi ngời Truy cập Website Joomla , download bộ cài đặt, giải nén,upload lên host, tạo database và tiến hành cài đặt theo từng bớc Màn hình cài

đặt của Joomla 1.5 khá thân thiện và đợc bố trí hợp lý Chú ý: phải tạo 1

database với Collation - charset: utf8_general_ci trớc khi cài đặt

Các b ớc thực hiện :

Bớc 1: Download & Upload bộ cài đặt Joomla

+ Download Joomla 1.5 : tại địa chỉ http://www.joomla.org/download.html

+ Upload Joomla : Upload lên Server và giải nén vào th mục gốc chứa Web(hoặc một th mục con và đặt tên là Joomla)

Th mục gốc chứa Web thờng có tên là: htdocs, public_html, www.root,

VD: C:\xampp\htdocs\ , C:\Program Files\xampp\htdocs\

Bớc 2: Chọn ngôn ngữ cài đặt

+ Mở trình duyệt và vào website: http://localhost/vienthongyenthanh + Chọn một ngôn ngữ English

Hình III.6 Lựa chọn ngôn ngữ trong quá trình cài đặt

Bớc 3: Kiểm tra cấu hình hệ thống

Khi các giá trị kiểm tra có màu xanh thì tiếp tục chọn Next

Ngày đăng: 19/12/2013, 15:47

HÌNH ẢNH LIÊN QUAN

Hình III.1. Trang chủ mặc định sau khi cài đặt Joomla 1.0 - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh III.1. Trang chủ mặc định sau khi cài đặt Joomla 1.0 (Trang 34)
Hình III.2. Kiến trúc Joomla - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh III.2. Kiến trúc Joomla (Trang 35)
Hình III.1. Màn hình bớc đầu cài đặt Xampp - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh III.1. Màn hình bớc đầu cài đặt Xampp (Trang 40)
Hình III.2. Các bớc tiếp theo của quá trình cài đặt Xampp - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh III.2. Các bớc tiếp theo của quá trình cài đặt Xampp (Trang 40)
Hình III.3. Th mục Xampp xuất hiện trong ổ C - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh III.3. Th mục Xampp xuất hiện trong ổ C (Trang 41)
Hình III.4. Màn hình trang quản lý của Xampp - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh III.4. Màn hình trang quản lý của Xampp (Trang 43)
Hình III.5b. Bảng cơ sở dữ liệu - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh III.5b. Bảng cơ sở dữ liệu (Trang 44)
Hình III.6. Lựa chọn ngôn ngữ trong quá trình cài đặt - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh III.6. Lựa chọn ngôn ngữ trong quá trình cài đặt (Trang 45)
Hình III.7.  Kiểm tra cấu hình hệ thống - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh III.7. Kiểm tra cấu hình hệ thống (Trang 45)
Hình III.9. Thiết lập các thông số để kết nối tới CSDL - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh III.9. Thiết lập các thông số để kết nối tới CSDL (Trang 46)
Hình III.10. Thiết lập cấu hình cho Joomla - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh III.10. Thiết lập cấu hình cho Joomla (Trang 47)
Hình III.5.12. Giao diện để thiết kế và xây dựng website - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh III.5.12. Giao diện để thiết kế và xây dựng website (Trang 48)
Hình III.5.11. Kết thúc quá trình cài đặt - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh III.5.11. Kết thúc quá trình cài đặt (Trang 48)
Hình IV.3.1. Giao diện trang Web Tin tức viễn thông Yên Thành - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh IV.3.1. Giao diện trang Web Tin tức viễn thông Yên Thành (Trang 52)
Hình IV.3.4. Upload gói ngôn ngữ - Xây dựng website tin tức cho trung tâm viễn thông yên thành sử dụng gói joola
nh IV.3.4. Upload gói ngôn ngữ (Trang 54)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w