Mục đích ”Thiết kế website tin tức Công nghệ thông tin” đã được chúng em áp dụng các công cụ hỗ trợ, phần mềm mã nguồn mở,các kiến thức đã có đểthiết kế một trang web chuẩn, bắt mắt đầy
Trang 1BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
-o0o -BÀI TẬP LỚN MÔN
Mã Nguồn Mở
Đề tài : Thiết kế website tin tức Công nghệ thông tin
Nhóm Sinh viên: Trần Văn Toản
Trang 2MỤC LỤC
LỜI NÓI ĐẦU
Trang 3Với sự phát triển nhảy vọt của công nghệ thông tin hiện nay, Internetngày càng giữ vai trò quan trọng trong các lĩnh vực khoa học kĩ thuật và đờisống Dĩ nhiên các bạn đã được nghe nói nhiều về Internet, nói một cách đơn giản, Internet là một tập hợp máy tính nối kết với nhau, là một mạng máy tính toàn cầu mà bất kì ai cũng có thể kết nối bằng máy PC của họ Vớimạng Internet, tin học thật sự tạo nên một cuộc cách mạng trao đổi thông tin trong mọi lĩnh vực văn hóa, xã hội, chính trị, kinh tế
Trong thời đại ngày nay, thời đại mà sức mạnh của internet bùng nổ thì việc tra cứu thông tin, đọc báo, tìm kiếm tài liệu trên mạng không còn là điều gì đó quá xa lạ Thông qua Website mọi người có thể tra cứu thông tin,tìm tài liệu hay đơn giản là đọc báo trong nước và quốc tế một cách nhanh chóng và hiệu quả nhất
Với công nghệ Word Wide Web, hay còn gọi là Web sẽ giúp bạn đưa những thông tin mong muốn của mình lên mạng Internet cho mọi ngườicùng xem một cách dễ dàng với các công cụ và những ngôn ngữ lập trình khác nhau Sự ra đời của các ngôn ngữ lập trình cho phép chúng ta xây dựng các trang Web đáp ứng được các yêu cầu của người sử dụng
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ệuMySQL, 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
Với lí do đó, được sự hướng dẫn và giúp đỡ của thầy giáo Thạc sỹ
Trần Thanh Huân, nhóm em đã chọn đề tài: ”Thiết kế website tin tức
Công nghệ thông tin” làm đề tài cho bài tập lớn của mình.
Tuy nhiên, do thời gian hạn hẹp, mặc dù đã nỗ lực hết sức mình nhưng chắc rằng bài tập lớn khó tránh khỏi thiếu sót Chúng em rất mong nhận được sự thông cảm, những lời góp ý và chỉ bảo tận tình của quý Thầy Cô và các bạn
Phần I: MỞ ĐẦU
Trang 4và ngoài nước.
3 Mục đích
”Thiết kế website tin tức Công nghệ thông tin” đã được chúng em
áp dụng các công cụ hỗ trợ, phần mềm mã nguồn mở,các kiến thức đã có đểthiết kế một trang web chuẩn, bắt mắt đầy đủ chức năng cần thiết phục vụ các nhu cầu của người sử dụng và yêu cầu của khách hang
4 Mục tiêu
- Sử dụng được phần mềm mã nguồn mở đã có sẵn
- Được trải nghiệm và rút kinh nghiệm qua dự án thực tế
- Xây dựng các tài liệu cho dự án một cách tường minh và đầy đủ
- Kiểm soát được các vấn đề xảy ra
- Hoàn thiện thành công, biết cách kết thúc trang web
5 Bố cục đề tài
- Chương I: Giới thiệu về phần mềm mã nguồn mở Wordpress
- Chương II: Cơ sở dữ liệu và Web sản phẩm
- Chương III: Hướng dẫn cài đặt
PHẦN II: NỘI DUNG
Trang 5CHƯƠNG I: Giới thiệu về phần mềm mã nguồn mở Joomla
1.1 Giới thiệu về mã nguồn mở
Phần mềm nguồn mở (Open Source) là những phần mềm được cung cấp dưới cả dạng mã và nguồn, không chỉ 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 quy định trong giấy phép Phần mềm mã nguồn mở (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) Nhìn chung, thuật ngữ “Open source” được dùng để lôi cuốn các nhà kinh doanh, một điều thuận lợi chính là sự miễn phí và cho phép người dùng có quyền “sở hữu hệ thống”
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 … 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ẩm nguồ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
Tiện ích mà Open Source mang lại chính là quyền tự do sử dụng chương trình cho mọi mục đích, quyền tự do để nghiên cứu cấu trúc của chương trình, chỉnh sửa phù hợp với nhu cầu, truy cập vào mã nguồn, quyền tự do phân phối lại các phiên bản cho nhiều người, quyền tự do cải tiến chương trình và phát hành những bản cải tiến vì mục đích công cộng
Lợi ích của phần mềm mã nguồn mở là miễn phí?
Phần mềm có thể được sao chép hoàn toàn miễn phí, bạn hoàn toàn
an tâm khi chia sẻ một chương trình tuyệt vời với bạn bè
Các định dạng file không hoàn toàn bị kiểm soát bởi một vài nhà cung cấp Điều gì sẽ xảy ra khi dữ liệu nằm trong một phần mềm độc quyền? Việc sử dụng một định dạng file bí ẩn sẽ khiến bạn chỉ dùng chươngtrình của một công ty Do yêu cầu công việc, bạn muốn sử dụng dữ liệu trêncho một ứng dụng khác nhưng chương trình bản quyền không cho phép Còn nếu như nhà cung cấp chấm dứt hổ trợ và ngưng việc nâng cấp sản
Trang 6phẩm chắc chắn rằng dữ liệu của bạn sẽ không còn ý nghĩa Với phần mềm bản quyền, chỉ có duy nhất nhà cung cấp có thể giải quyết vấn đề của bạn Nhưng với OpenSource bạn có thể gặp hàng nghìn nhà cung cấp làm vừa lòng mình.Hầu hết các sản phẩm Open Source đều có khả năng bảo mật tuyệt vời, khi một vết nứt được tìm thấy, nó thường được trám nhanh hơn phần mềm có bản quyền.
Các hệ thống Open Source nhất là các hệ thống dựa trên UNIX thường linh hoạt đến khó tin nổi Bởi vì chúng được xây dựng từ nhiều khốithống nhất và được miêu tả cặn kẽ, rất dễ để bạn thay thế nhiều phần của hệthống với phần có giao diện tương tự.Có một cộng đồng hỗ trợ lớn và không bị phụ thuộc vào một công ty nào
Cơ hội kinh doanh?
Open source đã được chấp nhận trong các công ty lớn Nhiều hợp đồng lớn đã chấp nhận phần mềm Open Source, chẳng hạn như tại IBM, Oracle và Sun Thậm chí Microsoft đã phải lưu tâm đến Open Source như đối thủ to lớn
Với Open Source việc phân phối và phát triển là một phương pháp lâu dài để tạo ra phần mềm, người mua được cung cấp cả giải pháp phần mềm lẫn những dòng mã có giấy phép Open Source Hơn nữa, các doanh nghiệp vừa và nhỏ cũng sẽ ưa chuộng phần mềm Open Source hơn
Hiện nay đã có một số tổ chức dự định sử dụng Open Source để xây dựng nhân tố cốt lõi của hệ thống từ hệ điều hành, cơ sở dữ liệu, ứng dụng
và Web server… đến các hệ thống quản trị nội dung và nhiều phần mềm kinh doanh thông minh
Mặc dù con đường để free software (miễn phí phần mềm) khẳng định vị trí vẫn còn dài nhưng đáng chú ý là Open Source đã giành được khoảng 70% thị trường ứng dụng Web và dường như con số này vẫn tiếp tục tăng lên hàng năm
Bằng cách này cả công ty lẫn khách hàng đều có lợi Về phía khách hàng, họ được dùng phần mềm chất lượng tốt, hỗ trợ khách hàng đầy đủ vớigiá rẻ Về phía nhà cung cấp dựa trên Open Source tiết kiệm đáng kể các
Trang 7chi phí về phát triển, kiểm lỗi, quản lý dự án Đồng thời nhân lực của họ lại nhanh chóng nâng cao trình độ, giảm bớt thời gian làm việc “chân tay” khi tiếp nhận source code có “giá trị” và “chất lượng” từ những Open Source được xây dựng chuyên nghiệp, cấu trúc phần mềm, lập trình,… tốt ngay từ đầu.
Trên thị trường phần mềm có nhiều loại giấy phép có thể chia các giấy phépnày như sau:
Phần mềm thương mại (Commercial Software) là phần mềm thuộc bản quyềncủa tác giả hoặc nhà sản xuất, chỉ được cung cấp ở dạng mã nhị phân, người dùng phảimua và không có quyền phân phối lại
Phần mềm thử nghiệm giới hạn (Limited Trial Software) là những phiên bảngiới hạn của các phần mềm thương mại được cung cấp miễn phí nhằm mục đích thửnghiệm, giới thiệu sản phẩm và kích thích người dùng quyết định mua Loại sản phấmnày không chỉ giới hạn về tính năng mà còn giới hạn về thời gian dùng thử (thường là
60 ngày)
Phần mềm “chia sẻ” (Shareware) là loại phần mềm này có đủ các tính năng vàđược phân phối tự do nhưng có một giấy phép khuyến cáo các cá nhân hoặc tổ chứcmua, tùy tình hình cụ thể Nhiều tiện ích Internet như “WinZip” dùng các thuận lợicủa Shareware như một hệ thống phân phối
Phần mềm sử dụng phi thương mại (Non-commercial Use) là loại phần mềmnày được sử dụng tự do và có thể phân phối lại bởi các tổ chức phi lợi nhuận Nhưngcác tổ chức kinh tế, thí dụ các doanh nghiệp … muốn dùng phải mua NetscapeNavigator là một ví dụ của loại phần mềm này
Phần mềm không phải trả phần trăm cho nhà sản xuất (Royalties Free BinariesSoftware) là phần mềm được cung cấp dưới dạng nhị phân và được dùng tự do.Ví dụ:bản nhị phân của các phần mềm Internet Explorer và NetMeeting
Thư viện phần mềm không phải trả phần trăm (Royalties Free SoftwareLibraries) là những phần mềm mà mã nhị phân cũng như mã nguồn được dùng vàphân phối tự do, nhưng người dùng không được phép sửa đổi Ví dụ: các thư viện lớphọc, các tệp “header” …
Trang 8Phần mềm mã nguồn mở kiểu BSD – (Open Source BSD-style) là một nhómnhỏ khép kín (closed team) đã phát triển các PMNM theo giấy phép phân phốiBerkely (BSD – Berkely Software Distribution) cho phép sử dụng và phân phối lại cácphần mềm này dưới dạng mã nhị phân và mã nguồn Tuy người dùng có quyền sửađổi mã, nhưng về nguyên tắc nhóm phát triển không cho phép người dùng tự do lấy
mã nguồn từ kho mã ra sửa (gọi là check-out) và đưa mã đã sửa vào lại kho mã màkhông được họ kiểm tra trước (gọi là các “check-in”)
PMNM kiểu Apache (Open Source Apache-style) chấp nhận nguồn mở kiểuBSD nhưng cho phép những người ngoài nhóm phát triển xâm nhập vào lõi của mãnền (core codebase), tức là được phép thực hiện các “check-in”
PMNM kiểu CopyLeft hay kiểu Linux (Open Source CopyLeft, Linux-style)PMNM kiểu CopyLeft (trò chơi chữ của Free Software Foundation – FSF – và GNU –Gnu’s Not Unix, để đối nghịch hoàn toàn với CopyRight!) hay còn gọi là giấy phépGPL (General Public Licence) là một bước tiến quan trọng theo hướng tự do hóa củacác giấy phép phần mềm Giấy phép GPL yêu cầu không những mã nguồn gốc phảiđược phân phối theo các qui định của GPL mà mọi sản phẩm dẫn xuất cũng phải tuânthủ
GPL cho người dùng tối đa quyền hạn và tự do đối với các PMNM theo GPL cụ thể người dùng có quyền không những sao chép, sửa đổi, mua bán các PMNM dưới CopyLeft mà còn được quyền tự do như vậy đối với các phần mềm dẫn xuất Tóm lại nếu PMNM gốc đã theo CopyLeft thì mọi PMNM dẫn xuất của nó cũng đương nhiên theo CopyLeft
1.2 Giới thiệu về phát triển phần mềm mã nguồn mở bằng Joomla
Ngày nay việc sở hữu trong tay một trang blog hay website cá nhân miễn phí trở nên rất dễ dàng bởi sự phát triển nhanh chóng của các mã nguồn
mở cũng như các dịch vụ hỗ trợ 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
Trang 91.2.1 Joomla là gì?
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 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ữ
1.2.2 Vài nét về lịch sử của Joomla
Joomla là “sản phẩm anh em” với Mambo của tập đoàn Miro Software Solutions – Úc (hãng đang nắm giữ Mambo) với những người phát triển nòng cốt Ban đầu công ty Miro đã 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
Đến ngày 17 tháng 8 năm 2005, do sự tranh chấp về mặt pháp lý cũng như mong muốn vào sự phát triển của Mambo dựa trên quỹ tài trợ và sự hỗ trợ của cộng đồng nên 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 chưa được đặt tên của họ Ngay ngày hôm sau, 1000 người đã gia nhập diễn đàn OpenSourceMatters, hầu hết các bài viết cho diễn đàn đều khuyến khích và đồng tình với hành động của Nhóm Phát triển Tin trên đã nhanh chóng được đăng tải trên các tạp chí newsforge.com, eweek.com và ZDnet.com
Trong một thông báo của Eddie (người đứng đầu dự án) 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.0
1.2.3 Các phiên bản hiện tại của Joomla
Hiện tại Joomla có 2 dòng phiên bản chính:
Trang 10- Dòng phiên bản 1.0.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.0.0 được phát hành vào ngày 15 tháng 09 năm 2005) có nguồn gốc từ Mambo 4.5.2.3 (đã baogồm thêm nhiều bản vá bảo mật và sửa lỗi) Các phiên bản tiếp theo
có dạng 1.0.x
- Dòng phiên bản 1.5.X: Phiên bản đầu tiên của dòng này (thế hệ thứ2) là Joomla! 1.5.0 được phát hành vào ngày 21 tháng 1 năm 2008 Phiên bản này bắt đầu hỗ trợ bộ ký tự UTF8 Các phiên bản tiếp theo
có dạng 1.5.X
- Dòng phiên bản 2.5.X: Phiên bản đầu tiên của dòng này lại bắt đầu
từ phiên bản Joomla 1.6.0 phát hành vào ngày 10 tháng 01 năm
2011 Nhưng chỉ trong vòng 6 tháng với 4 bản cập nhật liên tục tới phiên bản 1.6.4 vào ngày 27 tháng 06 năm 2011
- Dòng phiên bản 3.0.X: Đang ở giai đoạn Đang ở giai đoạn Joomla 3.0 Alpha - 1
được phát hành vào ngày 12 tháng 07 năm 2012 Phiên bản mới nhất
Joomla 3.3.0 được phát hành vào ngày 30 tháng 04 năm 2014
1.2.4 Kiế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 ứ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
1.2.5 Đối với người sử dụng
Việc cài đặt Joomla! khá dễ dàng và nhanh chóng, thậm chí cả đối với những lập trình viên nghiệp dư 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 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
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
Trang 11Hiện tại ở Việt Nam chúng ta, cộng đồng Joomla đã và đang phát triển mạnh mẽ tại diễn đàn http://www.joomlaviet.org Tại đây bạn có thể tìm kiếm những thông tin về cài đặt, phát triển Joomla cũng như nêu lên những ý kiến thắc mắc hoặc yêu cầu của mình để được giúp đỡ.
CHƯƠNG II: CƠ SỞ DỮ LIỆU VÀ WEB SẢN PHẦM 2.1 Cơ sở dữ liệu
Trang 122.2 Website sản phẩm
2.2.1 Giao diện trang chủ
Trang 132.2.2 Giao diện Tin tức
Trang 142.2.3 Giao diên Tin tức chi tiết
Trang 152.2.4 Giao diện Đánh giá