CHƯƠNG I GIỚI THIỆU CHUNG VỀ PHẦN MỀM MÃ NGUỒN MỞ 1.Giới thiệu Phần mềm mã nguồn mở 1.1 Giới thiệu Phần mềm nguồn mở (PMNM) là những phần mềm được cung cấp dưới cả dạng mã và nguồn, không chỉ là miễn phí về giá mua mà 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át triể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 (tức là phần mềm thương mại). + Sự ra đời và phát triển của phần mềm nguồn mở: Phần mềm nguồn mở/tự do (gọi tắt là FOSS) đã trở thành một hiện tượng toàn cầu, đi từ vị trí tương đối mờ nhạt lên thành một trào lưu thời thượng trong vòng có vài năm. Tuy nhiên, vẫn chưa có nhiều người hiểu một cách thấu đáo những yếu tố gì thật sự tạo nên FOSS và sự bùng nổ của khái niệm này. Năm 1999, sau màn trình làng thành công vang dội của sản phẩm GNU/Linux Red Hat mang về rất nhiều lợi nhuận, việc GNU/Linux thành công chứng tỏ rằng phần mềm nguồn mở đã thực sự khẳng định được vị trí của mình.
+ Lợi ích của Mã nguồn mở. -Lợi ích lớn nhất trong việc chuyển đổi sang phần mềm tự do nguồn mở là giảm tổng chi phí sở hữu, từ các yếu tố sau: • Miễn phí bản quyền phần mềm • Miễn phí các phiên bản nâng cấp trong toàn bộ vòng đời sử dụng sản phẩm. 2 Tìm hiểu về Joomla và xây dựng một website về trường học • Giảm chi phí phát triển phần mềm đáp ứng theo yêu cầu nghiệp vụ (sử dụng phần mềm, mô-đun có sẵn để phát triển tiếp, sửa đổi điều chỉnh cho phù hợp với nghiệp vụ) • Kéo dài thời gian sử dụng/tái sử dụng các phần cứng, thiết bị trong khi vẫn đảm bảo hiệu năng toàn hệ thống • Chi phí đầu tư, vận hành hệ thống tập trung cho các dịch vụ “hữu hình” đem lại giá trị trực tiếp, thiết thực cho tổ chức như: tư vấn, sửa đổi theo yêu cầu, triển khai, đào tạo, bảo trì, nâng cấp hệ thống. • Mức chi phí tiết kiệm khoảng 75-80% so với phần mềm license ngay trong năm đầu tiên.
• Giảm tối đa sự phụ thuộc vào một vài nhà cung cấp phần mềm và 100% không vi phạm bản quyền. • Tăng cường độ tin cậy + Ứng dụng của mã nguồn mở • Tạo ra một hệ thống máy chủ web rất linh hoạt, an toàn và ổn định, và hệ thống này đã được sử dụng rất phổ biến trên cả hệ điều hành Linux lẫn Windows. • Theo thống kê của Netcraft vào tháng 12/2004, trên Internet có 68% website chạy Apache, và chỉ có 21% chạy IIS, và 47 trong top 50 website có thời gian sống (tức thời gian giữa hai lần khởi động lại máy) lâu nhất là chạy trên máy chủ web Apache. • Hiện nay ở Việt Nam có đến 78% doanh nghiệp được khảo sát cho biết họ đã dùng phần mềm mã nguồn mở và có đến 66% sử dụng phần mềm mã nguồn mở cho ứng dụng của khách hàng.
3 Tìm hiểu về Joomla và xây dựng một website về trường học CHƯƠNG 2 TỔNG QUAN VỀ JOOMLA GIỚI THIỆU CÀI ĐẶT JOOMLA 2.1 Lịch sử hình thành và phát triển • Joomla! là "sản phẩm anh em" với Mambo giữa tập đoàn Miro của Úc (hãng đang nắm giữ Mambo), với phần đông những người phát triển nòng cốt. • Ban đầu công ty Miro của Úc (tiếng Anh: Miro Software Solutions) đã 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. • 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. Nhưng những nhà phát triển không hài lòng về cơ cấu của Quỹ tài trợ Mambo. Andrew Eddie, người lãnh đạo nhóm phát triển, trong một lá thư gửi cộng đồng, đã chia sẻ những lo lắng của mình về Quỹ tài trợ Mambo và mối quan hệ của nó tới cộng đồng. • 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 Quỹ tài trợ Mambo • 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, Người đứng đầu dự án chính là Andrew Eddie • Trong một thông báo của Eddie 2 tuần sau đó, các nhóm đã được tổ chức lại và cộng đồng Joomla! tiếp tục tăng trưởng.
Tới ngày 1 tháng 9 năm 2005 tên mới của dự án đã được thông báo cho khoảng 3000 người theo dõi đội phát triển và đến ngày 16 tháng 9 thì họ cho ra đời Joomla! 1. 4 Tìm hiểu về Joomla và xây dựng một website về trường học 2.2 Giới thiệu và định nghĩa về Joomla • Joomla! là một hệ quản trị nội dung nguồn mở, được cung cấp miễn phí theo giấy phép GNU. Joomla được phát triển từ Mambo, đượ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 họ 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 phát âm theo tiếng Swahili như là jumla nghĩa là "đồng tâm hiệp lực". • 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ấ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! có mã nguồn mở do đó việc sử dụng Joomla! là hoàn toàn miễn phí cho tất cả mọi người trên thế giới.
• Joomla! có một cộng đồng người sử dụng và phát triển rất lớn và tăng trưởng không ngừng (đến nay đã có khoảng trên 40. Các thành viên và các lập trình viên rất nhiệt tình và sẵn sàng tư vấn, giúp đỡ khi người sử dụng gặp khó khăn. • Sau khi cài đặt Joomla! và chạy thử, người sử dụng có thể thêm, chỉnh sửa, cập nhật nội dung, hình ảnh, và quản lý dữ liệu của tổ chức, công ty. • Joomla! cung cấp giao diện web trực quan do vậy khá dễ dàng để thêm một nội dung mới hay một mục mới, quản lý các phòng ban, danh mục nghề nghiệp, ảnh các sản phẩm… và tạo không giới hạn số phần, mục, chuyên mục cũng như các nội dung của Website.
5 Tìm hiểu về Joomla và xây dựng một website về trường học 2.3 Ứng dụng của Joomla - Với ưu điểm dễ cài đặt và quản lí với mức độ tin cậy cao. Hiện nay Joomla đang được phổ biến trên thế giới - Joomla đáp ứng được mô tả về 7 đặc tính của Web 2.0: • Web có vai trò nền tảng, có thể chạy mọi ứng dụng • Tập hợp trí tuệ cộng đồng • Dữ liệu có vai trò then chốt • Phần mềm được cung cấp ở dạng dịch vụ web và được cập nhật không ngừng • Phát triển ứng dụng dễ dàng và nhanh chóng • Phần mềm có thể chạy trên nhiều thiết bị • Giao diện ứng dụng phong phú - Joomla được sử dụng để xây dựng nhiều trang web khác nhau đặc biệt là: • Website của các tổ chức hoặc website thông tin • Website thương mại điện tử • Website các công ty nhỏ • Website trường học, ngân hàng, chính phủ .vv • Website báo điện tử • Hê thống thương mại điện tử tích hợp • Hệ thống kiểm soát hàng hóa • Công cụ báo cáo dữ liệu • Danh mục hàng hóa • Các thư mục kinh doanh phức tạp • Công cụ hỗ trợ giao tiếp • Quản lí thông tin 6 Tìm hiểu về Joomla và xây dựng một website về trường học • Quản lí người dùng • Và nhiều ứng dụng khác nữa.4 Ưu điểm của Joomla - Ưu điểm đầu tiên cần nói tới là dễ sử dụng đối với các lập trình viên. Quả thực với Joomla bạn chỉ cần vài chục phút là tạo xong một website hoàn chỉnh với rất nhiều tính năng như gallery, video, music, shopping cart, forum … Vì dễ sử dụng Joomla được dùng rất nhiều để xây dựng các website từ nhỏ tới lớn vừa. - Giao diện Joomla rất đẹp được cung cấp bởi rất nhiều công ty cả miễn phí và thương mại.
(Joomlart là một công ty lớn cung cấp các template cho joomla có trả phí do anh Hùng người Việt Nam là Director. Joomlart hiện có hơn 200 ngàn khách hàng từ khắp nơi trên thế giới cung cấp các template cho Joomla, Drupal, Magento). - Joomla có một thư viện các ứng dụng (extensions) khổng lồ được lập trình bởi các lập trình viên khắp nơi, hầu hết là miễn phí, giúp bạn có rất nhiều lựa chọn mở rộng tính năng cho website của minh. - Dễ dàng tìm và sửa các lỗi gặp phải: Vì có một lượng người dùng khổng lồ trên thế giới do đó nếu bạn gặp một vấn đề trục trặc nào đó trong quá trình sử dụng Joomla thì hãy search trên Google, 90% đã có người gặp phải vấn đề đó và hầu như đều có giải pháp, câu trả lời cho vấn đề của bạn .5 Nhược điểm của Joomla • Mã nguồn của Joomla tương đối lớn dẫn tới tốn nhiều tài nguyên hệ thống hơn so với Drupal trong quá trình sử dụng.
• Việc có nhiều extensions là một lợi thế đồng thời nó cũng là một bất lợi. Các extensions được viết bởi rất nhiều lập trình viên khác nhau dẫn tới tiềm ần các lỗi bảo mật trong các extensions đó (tuy nhiên có các giải pháp firewall 7 Tìm hiểu về Joomla và xây dựng một website về trường học khắc phục các nhược điểm này, (có trả phí)). Nếu là người dùng mới có thể bạn sẽ bối rối trong việc chọn lựa các extensions cho website của mình. • Không có khả năng Multiple site như Drupal (cần mua extensions để có được tính năng này).
• Khả năng SEO của Joomla kém nhất trong 3 loại CMS (Drupal, WordPress, Joomla). • Không chạy tốt trên máy chủ Windows (IIS). Các phiên bản của Joomla • Phiên bản 1.X -Phiên bản đầu tiên của Joomla! là phiên bản Joomla! 1.0 (hay còn gọi là Joomla! 1.