+ Website là dịp để giới thiệu hình ảnh, truyền thống lịch sử Nhà trường qua nhiều thế hệ dạy và học, đồng thời quảng bá hình ảnh nhà trường với các đơn vị bạn cũng như ra toàn thế giới
Trang 1ĐỀ TÀI:
Trang 2
SỞ GIÁO DỤC VÀ ĐÀO TẠO NGHỆ AN TRƯỜNG THPT ĐẶNG THÚC HỨA
******************
ĐỀ TÀI:
Môn (Nhóm môn; lĩnh vực): Tin Học
Tác giả : Ngô Thị Huyền
Năm thực hiện 2021-2022 Điện thoại: 0976969910
Trang 3MỤC LỤC
PHẦN I MỞ ĐẦU ……… 1
I.1 Lí do chọn đề tài ……… 1
I.1.1 Lí do khách quan ……… 1
I.1.1 Lí do chủ quan ……… 1
I.2 Mục đích nghiên cứu ……… 2
I.3 Đối tượng nghiên cứu ……… 3
I.4 Nhiệm vụ nghiên cứu ……… 3
I.5 Phương pháp nghiên cứu ……… 3
PHẦN II NỘI DUNG NGHIÊN CỨU ……… 4
II.1 Cơ sở của đề tài ……… 4
II.1.1 Cơ sở lí luận ……… 4
II.1.2 Cơ sở thực tiễn ……… 4
II.2.Thực trạng của việc xây dựng và quản lí Website tại trường học hiện nay ………
4 II.2.1 Thực trạng ……… 4
II.2.2 Nguyên nhân của thực trạng ……… 5
II.2.3 Quan điểm của bản thân trước thực trạng ……… 5
II.3 Giải pháp sử dụng phần mềm mã nguồn mở NukeViet xây dựng Website cho trường ……… …
6 II.3.1 Chuẩn bị và giới thiệu về NukeViet ……… 6
II.3.1.1 Chuẩn bị môi trường thử nghiệm ……… 6
II.3.1.2 Giới thiệu về NukeViet ……… 9
II.3.2 Tiến hành xây dựng Website bằng mã nguồn mở NukeViet 4.5…… 15
II.3.2.1 Tiến hành cài đặt mã nguồn NukeViet ……… 16
II.3.2.2 Quản trị hệ thống NukeViet ……… 22
II.3.2.3 Quản trị các Module ……… 28
Trang 4II.3.2.4 Cài đặt máy chủ Web server ……… 31
II.3.2.5 Làm việc với CSDL MySQL ……… 31
II.3.2.6 Đăng kí tên miền, host và đưa Web lên Internet ……… 31
II.3.2.7 Hướng dẫn sử dụng ……… 36
II.3.2.8 Đánh giá một số kết quả đạt được ……… 42
PHẦN III KẾT LUẬN VÀ KIẾN NGHỊ ……… 46
III.1 Kết luận ……… 46
III.2 Kiến nghị ……… 46
TÀI LIỆU THAM KHẢO……… 46
PHỤ LỤC ……… 47
DANH MỤC CÁC KÝ HIỆU, CÁC TỪ VIẾT TẮT
1 HTML Hyper Text Markup Language – Ngôn ngữ đánh
dấu siêu văn bản
dung
Trang 5PHẦN I MỞ ĐẦU
1 Lí do chọn đề tài:
1.1 Lí do khách quan:
Hiện nay, chúng ta đang sống trong thời đai Công nghệ 4.0 với sự bùng nổ
và phát triển của CNTT Sự tăng trưởng nhanh chóng của Internet trong mọi lĩnh vực của đời sống hiện tại, khiến nó trở thành một phần không thể thiếu trong cuộc sống của chúng ta Từ thương mại cho tới bệnh viện, đến trường học tất cả đều chịu sự thay đổi nhanh chóng để bắt kịp nhịp độ phát triển của thế giới công nghệ
số Tính đến tháng 1/2021, dân số Việt Nam đạt mốc 97.8 triệu dân, trong đó có khoảng 68.17 triệu người đang sử dụng Internet (chiếm 70.3% dân số) thông qua các nền tảng, ứng dụng khác nhau Một số trường học đã, đang lựa chọn cách quản
lí, quảng bá và kết nối cộng đồng thông qua mạng xã hội, tuy nhiên cách này đang tồn tại không ít hạn chế
Bên cạnh đó, nhiều trường học đã nhận ra tầm quan trọng của việc xây dựng Website để tạo sự hiện diện trên Internet Đưa việc giáo dục lên mạng đã không chỉ phục vụ cho các đối tượng HS mà còn là một cách hiệu quả để phục vụ các GV, nhân viên, cha mẹ HS và cả những HS hiện đã và đang học trên ngôi trường mến yêu của mình
Các website giáo dục không chỉ cung cấp thông tin hàng tuần, hàng tháng của Đảng bộ, nhà trường, công đoàn, đoàn thanh niên, hội phụ huynh mà còn cung cấp các chương trình hỗ trợ HS, lấy ý kiến thăm dò một cách công khai, dân chủ…
Thiết kế website cho các trường học ngày càng trở lên cần thiết, ngày càng nhiều các trường học hiểu ra sức hút từ sự hiện diện online của mình Đây là cơ sở cũng là điều kiện căn bản để xây dựng trường học thông minh trong tương lai gần Website của một trường học đòi hỏi không chỉ là 1 website động, hấp dẫn mà còn cần có nhiều thông tin hữu ích đáp ứng nhu cầu khai thác của nhiều người dùng với nhiều mục đích khác nhau
Việc sử dụng nền tảng mã nguồn mở vào việc xây dựng một Website đang trở thành một xu hướng lớn trên thế giới Phần mềm mã nguồn mở 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 đã được quy định Nhờ đó bỏ dần các rào cản về bản quyền, dễ dàng can thiệp, điểm đặc biệt là mã nguồn mở có một cộng đồng lớn người sử dụng tham gia đóng góp, xây dựng và hoàn thiện nó ngày một tốt hơn Mã nguồn mở được kỳ vọng làm thay đổi diện mạo của ngành CNTT
1.2 Lí do chủ quan:
Trang 6Qua quá trình tìm hiểu tôi nhận thấy được các lợi ích mà Website mang lại cho trường học như sau:
Tiếp cận được với các nền khoa học giáo dục tiên tiến trên thế giới
Cung cấp được đầy đủ thông tin của nhà trường, GV và HS
Cập nhật đầy đủ, kịp thời kế hoạch giáo dục, thời khóa biểu, lịch thi,…
Giải đáp thắc mắc, yêu cầu của GV, phụ huynh và HS, cựu HS một cách nhanh chóng, hiệu quả
Xây dựng được kho đề thi, giáo án… cho GV, HS tham khảo và học tập
Các cấp quản lý dễ dàng theo dõi, đôn đốc việc thực hiện nhiệm vụ năm học cũng như các thông tư, nghị định
Tiết kiệm chi phí: in ấn, phone, fax …
Tạo “bộ mặt” trường học ấn tượng, hiện đại và chuyên nghiệp để quảng bá ngôi trường trên toàn quốc cũng như là trên thế giới
Chính vì thế, tôi chọn đề tài “Sử dụng phần mềm mã nguồn mở NukeViet thiết kế Website cho trường” làm đề tài nghiên cứu của mình
2 Mục đích nghiên cứu:
- Xây dựng một website tương đối hoàn chỉnh phục vụ có hiệu quả cho nhà trường Đảm bảo mọi chức năng hoạt động tốt, mang lại hiệu quả cao trong quá trình dạy và học cũng như việc trao đổi thông tin giữa nhà trường, GV và phụ huynh, HS
+ Nhằm ứng dụng CNTT vào trường học tạo điều kiện cho GV, HS tiếp cận với Internet và sử dụng Internet phục vụ cho quá trình dạy và học
+ Website là kênh thông tin tiện lợi của Nhà trường Nó cung cấp một cách nhanh chóng và kịp thời thông tin, thông báo, kế hoạch,… của Nhà trường Nó là cầu nối giữa Nhà trường, GV và HS giúp giảm thiểu quy trình, thủ tục hành chính Đồng thời nó là nơi trao đổi kinh nghiệm, nơi tổ chức các hoạt động phục vụ cho quá trình dạy và học, là công cụ hữu ích để kết nối và chia sẻ tài liệu, giáo án và tài nguyên trên Internet
+ Nhờ có Website mà việc quản lý, cập nhật điểm cho HS được thực hiện một cách trực tuyến và công khai HS dễ dàng tra cứu những thông tin mình cần và
GV kịp thời điều chỉnh những thông tin bị sai lệch
+ Website là dịp để giới thiệu hình ảnh, truyền thống lịch sử Nhà trường qua nhiều thế hệ dạy và học, đồng thời quảng bá hình ảnh nhà trường với các đơn vị bạn cũng như ra toàn thế giới trong thời kỳ hội nhập hiện nay
+ Thông qua Website mà phụ huynh HS, các cơ quan ban ngành, đoàn thể, chính quyền địa phương biết được hoạt động dạy và học của Nhà trường, cũng như tình hình học tập của con em mình
Trang 7+ Việc xây dựng Website nhằm mục đích cuối cùng là nâng cao chất lượng giáo dục và đào tạo của Nhà trường, đặc biệt trong tình hình diễn biến phức tạp của
dịch bênh Covid 19 hiện nay
- Việc sử dụng mã nguồn mở Nukeviet để xây dựng website cũng nhằm mục đích giới thiệu Nukeviet đến với đông đảo mọi người đặc biệt là học sinh yêu môn Tin học Giúp mọi người có hiểu biết nhiều hơn về hệ quản trị nội dung mã nguồn
mở này và cùng nhau xây dựng cho Nukeviet ngày càng phát triển Việc sử dụng một hệ quản trị nội dung hoàn toàn do người Việt xây dựng cũng là một đóng góp
tích cực giúp cho ngành CNTT nước ta ngày càng phát triển
3 Đối tượng, phạm vi nghiên cứu:
- Toàn bộ mã nguồn mở Nukeviet
- Xây dựng và quản lý hệ thống Website cho trường trên mã nguồn miễn phí Nukeviet
- Thời gian: Năm học 2021 - 2022
4 Nhiệm vụ nghiên cứu:
- Thấy được vai trò quan trọng của việc xây dựng hệ thống website trong trường học
- Đẩy mạnh ứng dựng công nghệ thông tin trong nhà trường
- Xây dựng và quản lý Website riêng cho trường mình
- Giúp GV và HS tra cứu thời khóa biểu, lịch hoạt động trực tuyến
- Tạo kênh thông tin để kết nối các thế hệ giáo viên và học sinh của nhà trường
- Phát huy tính dân chủ, công khai, minh bạch trong trường học từ đó làm tốt
cuộc vận động 2 không với 4 nội dung do bộ giáo dục và đào tạo phát động
5 Phương pháp nghiên cứu:
- Nghiên cứu mã nguồn Nukeviet, một số Module cũng như cách cài đặt
- Tìm hiểu cách sử dụng, thiết lập Host, Domain trên Internet;
- Tìm hiểu cách viết bài, đăng tin lên Website;
Trang 8PHẦN II NỘI DUNG NGHIÊN CỨU
1 Cơ sở của đề tài:
1.1 Cơ sở lý luận:
Website gồm một hoặc nhiều trang web - một loại siêu văn bản (Siêu văn bản là văn bản tích hợp nhiều phương tiện khác nhau như: văn bản, hình ảnh, âm thanh, video, và các liên kết tới các siêu văn bản khác Siêu văn bản thường được tạo ra bằng ngôn ngữ đánh dấu siêu văn bản HTML) trong hệ thống WWW được tổ chức dưới một địa chỉ truy cập trên Internet Trang web được mở ra đầu tiên khi truy cập Website được gọi là trang chủ (Homepage) của Website đó
Đặc điểm tiện lợi của Website là thông tin dễ dàng cập nhật, thay đổi, người
sử dụng có thể xem thông tin ngay tức khắc, ở bất kỳ nơi nào, tiết kiệm chi phí in
ấn, gửi bưu điện, fax, thông tin không giới hạn (muốn đăng bao nhiêu thông tin cũng được, không giới hạn số lượng thông tin, hình ảnh ) và không giới hạn phạm
vi khu vực sử dụng (toàn thế giới có thể truy cập)
1.2 Cơ sở thực tiễn:
Với thời đại bùng nổ thông tin và cao trào của cuộc cách mạng 4.0, nền giáo dục lại càng phải tỏ ra là ngành đi đầu của thời đại, chính vì vậy ngày 25 ngày 01 năm 2017 thủ tướng Chính phủ ban hành quyết định số 117/QĐ-TTg về việc tăng cường ứng dụng CNTT trong Giáo dục và đào tạo Đồng thời, công văn số 3946/BGDĐT-CNTT về việc hướng dẫn nhiệm vụ CNTT năm học 2019-2020 của
Bộ Giáo dục và Đào tạo ban hành ngày 30 tháng 8 năm 2019, đã chỉ đạo như sau: đẩy mạnh ứng dụng CNTT hỗ trợ đổi mới nội dung, phương pháp dạy và học, kiểm tra đánh giá trong tất cả các môn học Phát động GV xây dựng bài giảng e-Learning, ngân hàng câu hỏi trực tuyến, tư liệu, tài liệu, sách điện tử đóng góp vào kho bài giảng e-Learning, ngân hàng câu hỏi trắc nghiệm trực tuyến, kho học liệu góp phần đổi mới căn bản và toàn diện phương pháp giảng dạy, từng bước hình thành nguồn tài nguyên giáo dục mở phục vụ cho học sinh, giáo viên, cán bộ quản
lý và phụ huynh HS có thể học, nghiên cứu mọi lúc, mọi nơi
Vì vậy việc tạo ra Website để quản lý thông tin và quảng bá hình ảnh của trường học là một lựa chọn thông minh, phù hợp với xu thế phát triển của thời đại
và yêu cầu của nền giáo dục nước nhà, đặc biệt là trong bối cảnh dịch bệnh Covid19 đang diễn biến rất phức tạp
2 Thực trạng của việc xây dựng và quản lí Website tại trường học hiện nay
2.1 Thực trạng:
Hiện nay, trường THPT Đặng Thúc Hứa chưa có trang Web riêng để quảng
bá cũng như để cập nhật thông tin, thông báo, hoạt động của nhà trường Hệ thống quản lý của trường hoạt động chủ yếu trên giấy tờ; mọi thông báo, thay đổi của
Trang 9trường chủ yếu được đăng ở bảng tin nhà trường, hoặc thông qua hệ thống loa phát thanh của các xã trong vùng, hoặc thông qua mạng xã hội (Facebook), nhóm Zalo, nhóm Mesenger,… các hoạt động giao lưu, kỷ niệm, cũng chỉ được lưu lại trên trang Facebook cá nhân hoặc ở phòng truyền thống làm kỉ niệm Điều này có thể gây bất tiện cho HS và phụ huynh, đặc biệt là con em những xã cách xa trường như Thanh Khê, Thanh Hà, Thanh Thủy, Cựu HS của trường làm ăn xa, GV từng công tác tại nhà trường, hoặc những người quan tâm đến nhà trường muốn tìm hiểu, theo dõi các hoạt động của nhà trường cũng khó khăn (Vì thông tin đăng tải trên trên facebook chỉ hiển thị khi có sự tương tác, nếu không có sự tương tác thì bài sẽ trôi nên nhiều người không thể cập nhật được thông tin thường xuyên.)
Trên thực tế thì trước đây, nhà trường đã đăng kí một trang trực thuộc của sở Giáo dục và Đào Tạo Nghệ An với địa chỉ c3dangthuchua@nghean.edu.vn, nhưng
do đây là trang tổng hợp, mỗi trường chỉ là một box nhỏ, lượng băng thông lớn, lượng người truy cập ít và phí duy trì không đủ cho nên trang web này chỉ tồn tại trong một thời gian ngắn Một số GV của trường cũng đã đăng kí trang riêng nhưng lại đăng kí tên miền của thư viện violet (ví dụ như thpt-dangthuchua-nghean.violet.vn), các trang này chủ yếu là trang đăng tải thông tin cá nhân của
GV, các chuyên mục và thông tin đăng tải không nhiều, cho nên không thu hút được lượt người truy cập
Nhà trường cũng đã đăng kí một trang web quản lý điểm để đăng tải thông tin và điểm của học sinh, đây là trang quản lý điểm chung của ngành Do vậy, trang này không thể gọi là trang web riêng của trường THPT Đặng Thúc Hứa
2.2 Nguyên nhân của thực trạng:
Trường đóng trên địa bàn miền núi không có điều kiện cũng như chi phí để lập website, rồi việc dùy trì hoạt động, nâng cấp, bảo trì hệ thống cũng là một vấn
đề Mà các GV, nhân viên trong nhà trường không có người nào được đào tạo chuyên sâu về thiết kế và quản trị Web
2.3 Quan điểm của bản thân trước thực trạng:
Trong xu thế hội nhập và phát triển của đất nước, cùng với sự phát triển như
vũ bão của ngành CNTT Đặc biệt là việc ứng dụng CNTT vào lĩnh vực giáo dục, đào tạo trong bối cảnh ứng phó với dịch bệnh Covid19 hiện nay Việc thiết kế website trường học là một việc thiết thực và vô cùng hữu ích đối với các trường học và đơn vị giáo dục Đây là kênh thông tin để quảng bá hình ảnh và các hoạt động của nhà trường, đồng thời cũng là kênh thông tin để kết nối các thế hệ HS thân yêu của trường
Việc thiết kế một trang Website cũng không phải là một việc dễ, nhưng trong thời đại CNTT hiện nay việc sử dụng mã nguồn mở để xây dựng Website là một lựa chọn phù hợp với xu thế của thời đại
Trang 10Vì vậy tôi đã lựa chọn đề tài “Sử dụng phần mềm mã nguồn mở NukeViet thiết kế Website cho trường”
3 Giải pháp sử dụng phần mềm mã nguồn mở NukeViet xây dựng website cho trường
3.1 Chuẩn bị và giới thiệu về NukeViet:
3.1.1 Chuẩn bị môi trường thử nghiêm:
Khi học thiết kế Web nói chung và thiết kế Web bằng mã nguồn mở Nukeviet nói riêng, ta nên sử dụng máy chủ ảo - Localhost trước để thử nghiệm Sau khi hoàn thiện, nếu trang hoạt động tốt trên Locolhost thì khi đó chúng ta đưa Website lên môi trường Internet để hoạt động, lúc này chúng ta có thể sử dụng Host free hoặc mua tên miền và Host để hoạt động ổn đinh, lâu dài
Vậy Localhost là gì? Localhost vận hành như thế nào? Và ta nên chọn
chương trình nào làm Localhost để thử nghiệm?
- Localhost cơ bản như một Webserver bao gồm: Apache, MySQL,
PHP và PHPmyadmin Chúng được cài đặt và sử dụng trên chính chiếc máy tính
của bạn, dùng chính ổ cứng máy tính để làm không gian lưu trữ và cài đặt trang web Mục đích chính để giúp bạn học tập và thực hành trên đó mà chưa cần mua Host
- Sau khi cài đặt Localhost vào máy tính, thì máy tính của bạn đã có một môi trường giống như Webserver để chạy ứng dụng website với địa chỉ
là http://127.0.0.1 Đây là địa chỉ IP dạng Localhost, ngoài ra bạn cũng có thể chạy localhost với đường dẫn là http://localhost
- Mỗi khi cần sử dụng bạn sẽ cần mở bảng điều khiển của Localhost lên và kích hoạt cho nó khởi động các ứng dụng đi kèm
- Có rất nhiều chương trình tạo máy chủ ảo như: Xampp, Ampps, WampServer, DesktopServer, Trong đó tôi lựa chọn Xampp, vì:
+ Xampp là chương trình tạo máy chủ ảo được tích hợp sẵn Apache, PHP, MySQL, FTP Server, Mail Server và các công cụ như phpMyAdmin
+ Xampp có chương trình quản lý khá tiện lợi, cho phép chủ động bật/tắt hoặc khởi động lại các dịch vụ máy chủ bất kỳ lúc nào Đặc biệt là tính ổn định và tương tích với Nukeviet Hơn nữa XAMPP hoàn toàn miễn phí, dễ sử dụng và hỗ trợ các hệ điều hành thông dụng như Windows, Mac, Linux
Để tải và cài đặt XAMPP, đầu tiên ta vào Google gõ Xammp download rồi truy cập vào địa chỉ https://www.apachefriends.org/download.html và chọn phiên bản XAMPP phù hợp với hệ điều hành của máy tính mình đang sử dụng để download về và cài đặt
Trang 11Khi cài đặt Xampp, ở phần chọn đường dẫn, ta chọn đường dẫn cần lưu cài đặt của XAMPP (ta nên chọn ổ đĩa D:\ hoặc E:\ và ta phải nhớ đường dẫn này để khi cài đặt Web lên Localhost thì phải truy cập vào thư mục này) rồi tiếp tục ấn Next Sau khi cài xong, ấn nút Finish để kết thúc cài đặt và mở bảng điều khiển của XAMPP
Trang 12Tiếp theo vào thư mục Start\All Programs\XAMMP\XAMMP Control Panel để bật bảng điều khiển của XAMPP
Trang 13Ta thấy hai ứng dụng Apache và MySQL có nút Start, đó là dấu hiệu bảo 2 ứng dụng này chưa được khởi động, khi đó ta ấn vào nút Start của từng ứng dụng
để khởi động Webserver Apache và MySQL Server lên để chạy Localhost Nếu cả hai ứng dụng chuyển sang màu xanh (Nút chuyển sang chữ Stop) như hình dưới là
đã khởi động thành công
3.1.2 Giới thiệu về NukeViet:
3.1.2.1 Giới thiệu sơ lược về NukeViet:
Trang 14NukeViet CMS là một hệ quản trị nội dung cho phép bạn quản lý các cổng thông tin điện tử trên Internet Nói đơn giản, NukeViet giống như một phần mềm
giúp bạn xây dựng và vận hành các trang web của mình một cách dễ dàng nhất
NukeViet CMS là một phần mềm mã nguồn mở, do đó việc sử dụng hoàn toàn miễn phí, bạn có thể tải NukeViet CMS về bất cứ lúc nào tại website chính thức của NukeViet là nukeviet.vn Bạn có thể cài NukeViet lên hosting để sử dụng hoặc cũng có thể thử nghiệm bằng cách cài ngay lên máy tính cá nhân
NukeViet cho phép xây dựng một website động, đa chức năng, hiện đại một cách nhanh chóng mà người vận hành nó thậm chí không cần phải biết một tí gì về
lập trình bởi tất cả các tác vụ quản lý phức tạp đều được tự động hóa ở mức cao
NukeViet đặc biệt dễ dàng sử dụng vì hoàn toàn bằng tiếng Việt và được thiết kế phù hợp nhất với thói quen sử dụng mạng của người Việt Nam
Bằng việc sử dụng các công nghệ web mới nhất hiện nay, thiết kế hệ thống uyển chuyển và sở hữu những tính năng độc đáo, NukeViet sẽ giúp bạn triển khai các ứng dụng web từ nhỏ đến lớn một cách nhanh chóng và tiết kiệm: từ các website cá nhân cho tới các cổng thông tin điện tử; từ các gian hàng trực tuyến cho tới các mạng xã hội
NukeViet là CMS mã nguồn mở đầu tiên của Việt Nam có quá trình phát triển lâu dài nhất, có lượng người sử dụng đông nhất Hiện NukeViet cũng là một trong những mã nguồn mở chuyên nghiệp đầu tiên của Việt Nam, cơ quan chủ quản của NukeViet là VINADES.,JSC - đơn vị chịu trách nhiệm phát triển NukeViet và triển khai NukeViet thành các ứng dụng cụ thể cho doanh nghiệp
3.1.2.2 Vài nét về lịch sử của NukeViet:
Quá trình phát triển của NukeViet đi từ tự phát cho đến chuyên nghiệp là một điển hình của con đường phát triển mã nguồn mở trên thế giới NukeViet có quá trình phát triển từ năm 2004, Từ việc sử dụng sản phẩm PHP-Nuke để làm website cho cộng đồng người Việt xa xứ, Nguyễn Anh Tú - một lưu học sinh người Việt tại Nga - đã cùng cộng đồng Việt hóa, cải tiến thành NukeViet Được
sự đón nhận của đông đảo người sử dụng, NukeViet đã liên tục được phát triển và trở thành một ứng dụng thuần Việt Cho đến phiên bản 3.0, đội ngũ phát triển NukeViet đã tách khỏi ảnh hưởng lạc hậu của PHP-Nuke và xây dựng NukeViet thành một ứng dụng khác biệt hoàn toàn Với 100% dòng code được viết mới, NukeViet 3.0 đã cho kết quả là Website đạt chuẩn xHTML 1.0 và CSS 2.1 cũng như hỗ trợ Ajax từ trong bộ nhân
Kể từ năm 2010, NukeViet đã phát triển theo mô hình chuyên nghiệp, đội ngũ quản trị đã thành lập doanh nghiệp chuyên quản Mặc dù từ phiên bản 3.0, NukeViet được viết mới hoàn toàn và trong quá trình phát triển của mình, nhiều cái tên đã được đưa ra để thay thế nhưng cuối cùng, theo kiến nghị của cộng đồng người sử dụng, cái tên NukeViet đã được giữ lại để nhớ rằng NukeViet được khởi
Trang 15đầu từ PHP-Nuke và để cảm ơn Franscisco Burzi - Tác giả PHP-Nuke - vì chính ông là nhân tố để có một cộng đồng mã nguồn mở NukeViet với hàng chục ngàn người dùng như hiện nay
Dù NukeViet 3 đã được viết mới hoàn toàn nhưng nó vẫn chịu những ảnh hưởng từ PHP-Nuke ở những điểm sau:
- NukeViet được viết bằng ngôn ngữ PHP và sử dụng cơ sở dữ liệu MySQL là chủ yếu, cho phép người sử dụng có thể dễ dàng xuất bản và quản trị các nội dungcủa họ lên Internet hoặc intranet
- NukeViet vẫn sử dụng các khái niệm Module, Block, Theme cho hệ thống của mình mặc dù cấu trúc và công nghệ cho nó đã được đội ngũ phát triển NukeViet cải tiến hoàn toàn
Tiếp nối thành công của phiên bản NukeViet 3, NukeViet 4 đã được phát triển
từ 2014 và đến 17/7/2021 đã phát hành phiên bản Nukeviet 4.5 vớ nhiều tính năng mới và tối ưu
3.1.2.3 Tại sao phải chọn NukeViet?
NukeViet là một hệ thống quản trị nội dung mã nguồn mở dùng ngôn ngữ PHP và cơ sở dữ liệu MySQL
NukeViet là một sân chơi, giao lưu học tập hoàn toàn miễn phí, tồn tại dựa trên sự hỗ trợ, tham gia phát triển của tất cả mọi người, những người yêu thích NukeViet và những người muốn góp phần nhỏ kiến thức của mình thúc đẩy sự phát triển CNTT Việt Nam
Là sản phẩm CMS mã nguồn mở duy nhất của Việt Nam nằm trong danh mục các sản phẩm phần mềm nguồn mở được khuyến khích sử dụng trong thông
tư số 08/2010/TT-BGDĐT do Bộ GD&ĐT ban hành ngày 01/03/ 2010 quy định về
sử dụng phần mềm tự do mã nguồn mở trong các cơ sở giáo dục Nukeviet còn được Bộ TT&TT quy định ưu tiên sử dụng trong cơ quan, tổ chức nhà nước tại thông tư 20/2014/TT-BTTTT ký ngày 05/12/2014 và có hiệu lực từ ngày 20/1/2015
3.1.2.4 Cấu trúc của NukeViet 4.5:
Hệ thống NukeViet được thiết kế rất rõ ràng, mạch lạc, theo đó NukeViet phân cấu trúc thành 2 tầng, 1 lớp
Tầng nền tảng (Core) hay còn gọi là "nhân hệ thống": Chứa các thư viện và module vận hành hệ thống Nếu một trong các thành phần này bị lỗi có thể làm ảnh hưởng một phần hoặc toàn bộ hệ thống Tầng này chiếm 10% dung lượng và dòng code của NukeViet nhưng được sử dụng trong 90% các hoạt động của website
Tầng module: bao gồm module admin, module site, các block (kèm theo module hoặc chạy độc lập), các cronjob
Trang 16 Lớp giao diện: bao gồm giao diện admin, giao diện module và giao diện site
Đặc điểm chính:
Module và giao diện (theme) của NukeViet được gọi chung là các Addons (thành phần mở rộng) Các thành phần mở rộng này có thể được cài đặt hoặc gỡ bỏ
mà không làm ảnh hưởng đến hệ thống
Phần quản trị của hệ thống nằm toàn bộ trong thư mục admin của hệ thống
Nó được bảo vệ bằng nhiều lớp bảo mật khác nhau
Phần quản trị của module nằm trong thư mục admin của module Nó được gọi và tương tác qua phần quản trị của hệ thống nên được hệ thống kiểm soát và đảm bảo tính an toàn, bảo mật
Theo nguyên lý thiết kế hướng module, block và theme được bố trí nhằm phục vụ module do đó hình thành khái niệm block của module và theme của module Theo đó tệp tin block của module nằm trong thư mục chứa module nhưng
có thể hiển thị ở các khu vực ngoài site Nếu block không thuộc module nào thì nó được đặt trong thư mục includes/blocks của hệ thống Tương tự, ngoài theme cho
hệ thống còn có theme cho block và theme cho module (được bố trí trong thư mục theme)
3.1.2.5 Mô hình hoạt động của NukeViet 4.5:
Dữ liệu được người quản trị tương tác từ Admin Control Panel thông qua trình duyệt, được nhân hệ thống và các module (admin module hoặc website module) tham gia xử lý, cuối cùng theme sẽ chịu trách nhiệm việc tổ chức và trình bày thông tin cho người truy cập xem
3.1.2.6 Tính năng cơ bản của NukeViet 4.5:
NukeViet 4.5 là phiên bản nâng cấp của phiên bản NukeViet 4.4 tập trung vào việc fix các vấn đề bảo mật, bất cập còn tồn tại, tối ưu trải nghiệm của người dùng
Một số thay đổi đáng kể ở phiên bản 4.5.00 so với phiên bản 4.4.02: Chặn việc lập chỉ mục của robot tìm kiếm trong một số khu vực như Quản lý site, các module: Users, Banners, Comment, Freecontent, Menu, Statistics, two-step-verification (không phụ thuộc vào cấu hình của site); Thêm Content-Security-Policy; Thêm Referrer-Policy; Khắc phục một số lỗi XSS có thể xảy ra; Thêm trình quản lý API; Loại bỏ việc nén dữ liệu ghi trong bộ nhớ đệm cache; Tích hợp Google Analytics 4 Cụ thể như sau:
- Hệ thống:
+ Bảo mật:
Chấp nhận Origin có giá trị bằng NULL;
Trang 17 Chặn việc lập chỉ mục của robot tìm kiếm trong một số khu vực như Quản
lý site, các module: Users, Banners, Comment, Freecontent, Menu, Statistics, two-step-verification (không phụ thuộc vào cấu hình của site);
Thêm Content-Security-Policy là tên của tiêu đề phản hồi mà các trình duyệt hiện đại sử dụng để nâng cao tính bảo mật trang web, cho phép hạn chế việc
sử dụng các tài nguyên như JavaScript, CSS hoặc bất kỳ thứ gì mà trình duyệt tải;
Thêm Referrer-Policy là tên của tiêu đề phản hồi mà các trình duyệt hiện đại
sử dụng để kiểm soát lượng thông tin liên kết nguồn (được gửi qua header
"Referer" đến trang đích);
Tự động thêm rel=noreferrer vào các liên kết ngoài;
Thêm SameSite vào cookie - thuộc tính kiểm soát việc trình duyệt gửi cookie khi trang gửi yêu cầu đến một miền khác;
Khắc phục một số lỗi XSS có thể xảy ra;
Khắc phục lỗ hổng chèn siêu liên kết vào mail "Email Hyperlink Injection"
+ Fix lỗi:
Cho phép hệ thống tự động nhận diện trình duyệt EDGE;
Chấp nhận và nhận diện URL có chứa ký tự ":" (Hiện diện trong các URL có nguồn từ Google);
Kiểm duyệt việc đánh số trang (Không cho người dùng đánh số trang tùy ý);
Thể hiện đúng nội dung các file XML được tạo với các ký tự unicode (Không bị mã hóa);
Xác định chính xác hơn biến $canonicalUrl (Không lấy từ
$client_info['selfurl']);
Khi bật chế độ đình chỉ hoạt động của site sẽ không hiển thị các thông báo lỗi mà chỉ thông báo đình chỉ
+ Cải tiến:
Thêm khu vực plugin thứ 5: Trước khi chạy module (Chỉ ở ngoài site);
Xác định lại isRobot trong class Browser;
Cho hiển thị hình ảnh khi xem rss-feeds;
Loại bỏ việc nén dữ liệu ghi trong bộ nhớ đệm cache;
Thêm trình quản lý API;
Thêm các thẻ link rel="next" (link đến trang trước), link rel="prev" (link đến trang tiếp theo) ở các khu vực có đánh số trang;
Trang 18 Thêm reCaptcha v3 vào hệ thống;
Di chuyển việc quản lý captcha đến từng function;
Thêm cấu hình Host chứa các file tĩnh (Tạo hằng NV_STATIC_URL thay thế cho NV_BASE_SITEURL);
Tích hợp Google Analytics 4 vào hệ thống;
Thêm định dạng webp vào danh sách các file hình ảnh được phép tải lên;
Thêm tiêu đề phản hồi "Retry-After" khi đình chỉ hoạt động của website;
Thay đổi việc quản lý nút xã hội;
Thêm nút chia sẻ Zalo;
Hỗ trợ php 8.x;
Thêm các function: str_contains, str_starts_with, str_ends_with;
Thêm cửa sổ thông báo về việc sử dụng cookie khi người dùng truy cập trang web lần đầu tiên (Yêu cầu của Luật Liên minh Châu Âu);
Thêm khả năng thêm chữ ký số S/MIME và DKIM vào mail;
Thêm chế độ hình ảnh dành riêng cho mobile;
Thêm hình mặc định cho thẻ Open Graph;
Thêm quản lý các thẻ link;
Nhận diện và thêm vào các tiêu đề phản hồi "Link tải trước" giúp cải thiện tốc độ load của site
- Modules
+ Module Menu:
Cho phép thêm mục có tên giống với tên của mục có trước;
Cho phép thêm mục với link rỗng;
Tạo nhật ký thay đổi
+ Module Users:
Hỗ trợ dịch vụ đăng nhập một lần SSO;
Sửa lại ghi log cho dễ hiểu hơn khi đăng nhập bằng Oauth;
Sửa lỗi không thể lấy link kích hoạt lại nếu bật reCaptcha;
Sửa lỗi đăng nhập bằng oauth của facebook;
Sửa lỗi tự động đăng nhập bằng Oauth;
Khắc phục lỗi bảo mật trong khu vực quản lý nhóm thành viên;
Cải thiện đăng ký và quản lý nhóm thành viên;
Trang 19 Sửa lỗi không hiển thị thông tin tùy biến khi thông tin này được xác định là
"Hiển thị tại trang tài khoản";
Sửa lỗi kiểm tra mật khẩu khi thay đổi phương thức xác thực 2 bước đối với các tài khoản không có mật khẩu;
Tránh lỗ hổng bảo mật chèn siêu liên kết vào mail "Email Hyperlink Injection"
+ Module News:
Cho phép xem nhanh các file đính kèm bài viết dạng hình ảnh và pdf;
Sửa lỗi không tìm kiếm theo đúng giới hạn thời gian khi chọn kiểu tìm kiếm
"Tất cả" của module News;
Sửa lỗi không đánh giá được bài viết ở chế độ xem mobile;
Thêm phân trang ở khu vực quản lý tag;
Thêm cấu hình Phương án thể hiện trang chủ khi sử dụng theme mobile;
Thêm quản lý tác giả bài viết, trang hiển thị các bài viết của tác giả;
Sửa lại function BoldKeywordInStr để đánh dấu chính xác các keys tìm kiếm;
Tối ưu hóa tìm kiếm từ khóa tiếng Việt không dấu trong MySQL;
Thêm nút bật/tắt chức năng đánh giá bài viết ở cấp độ module;
Thiết kế lại công cụ "Giới thiệu bài viết cho bạn bè" để tránh lỗ hổng bảo mật chèn siêu liên kết vào mail "Email Hyperlink Injection"
+ Module Contact
Thêm các nút đánh dấu "Đã xử lý", "Chưa xử lý" đối với các thư đến;
Tránh lỗ hổng bảo mật chèn siêu liên kết vào mail "Email Hyperlink Injection"
+ Module Voting: Thêm tính năng: Thành viên chỉ đựa bình chọn 1 lần
+ Module Comment: Sửa phần tải lại dữ liệu sau khi đăng thảo luận
+ Module Seek:
Thay thế Google Custom Search Engine bằng Programmable Search Engine;
Sửa lại function BoldKeywordInStr để đánh dấu chính xác các keys tìm kiếm;
Tối ưu hóa tìm kiếm từ khóa tiếng Việt không dấu trong MySQL
+ Module Banners: Sửa lỗi phát sinh khi cài đặt lại module
3.2 Tiến hành xây dựng Website bằng mã nguồn mở NukeViet 4.5
Trang 203.2.1 Tiến hành cài đặt mã nguồn Nukeviet:
Bước 1 Tải mã nguồn mở NukeViet về máy: vào google gõ NukeViet rồi chọn
trangNukeviet.vn để vào tải
Nháy vào thẻ Download, rồi chọn Mã nguồn
Chọn phiên bản cần tải để tải về (Tôi chọn NukeViet 4.5.00 để tải)
Trang 21Tải NukeViet về và giải nén
Bước 2 Copy mã nguồn Nukeviet vào Localhost
Trang 22Đổi tên Nukeviet thành truongdth (Nếu không đổi tên mà giữ nguyên tên
NukeViet cũng được)
Bước 3 Chạy website để cài đặt:
Sau khi copy xong, ta mở bảng điều khiển của XAMPP lên rồi khởi động Apache và MySQL
Bước 3.1 Sau đó mở trình duyệt web và truy cập vào website với đường dẫn
http://localhost/truongdth (hoặc đường dẫn theo thư mục gốc của web bạn tạo)
Chọn ngôn ngữ khi cài đặt Nukeviet, ở đây mình chọn ngôn ngữ Tiếng Việt, rồi nháy chuột vào bước kế tiếp
Bước 3.2 Ở bước tiếp theo, nó sẽ nhắc nhở bạn kiểm tra CHMOD, rồi nháy
Bước kế tiếp
Trang 23Bước 3.3 Bước tiếp theo mô tả tài liệu về quản quyền Nukeviet Nhấp Bước
kế tiếp để tiếp tục
Bước 3.4 Trong quá trình cài đặt Nukeviet: hệ thống kiểm tra tính tương
thích của máy chủ - môi trường localhost trên Xampp đã tương thích đầy đủ với Nukeviet chưa? Sau đó ta nháy bước kế tiếp để tiếp tục
Bước 3.5 Cấu hình CSDL: Và bây giờ ta nhập thông tin database
1 Nhập User Name: root
2 Mật khẩu: để trống (vẫn có thể thiết lập mật khẩu localhost cho phần này, nhưng không cần thiết)
3 Tên cơ sở dữ liệu: Nhập tên database (Ví dụ: huyendthtc hoặc truongdth, tên này ta tự đặt)
4 Tiếp đầu tố: Có thể để mặc định là nv4 hoặc thay đổi bất kỳ Nghĩa là tiền tố của database chứa dữ liệu Nukeviet, mặc định nó sẽ là nv4_, chúng ta có thể đổi nó thành bất cứ cái gì
Trang 24Khi nhập xong thông tin đầy đủ, hãy ấn nút Thực hiện để làm bước kế tiếp
Bước 3.6 Nhập thông tin Website, ta cần phải thiết lập các thông tin quan trọng cho website như Tên của website, tên tài khoản admin cùng mật khẩu,…
Nhập xong hãy ấn nút Thực hiện
Trang 25Và nếu có thông báo Bạn đã cài đặt thành công! Như thế này là bạn đã cài đặt thành công, click vào nút Đăng nhập trang quản trị để đăng nhập vào hệ thống quản trị Nukeviet Khi đó giao diện trang chủ của Website NukeViet như sau:
Giao diện gồm các thành phần chính sau:
Top: Trên cùng là một thanh chứa các thông tin liên hệ: email, số điện
thoại,… tiếp đó là các nút liên kết mạng xã hội Và một nút cho phép đăng nhập - đăng ký thành viên trên website của bạn
Logo: Mặc định là ảnh logo của mã nguồn Nukevet, bên dưới là sologan của
site
Menu: Thanh menu site, giúp bạn có thể điều hướng qua các trang khác trên
site một cách dễ dàng
Trang 26 Body: Bố cục chính mặc định của nukeviet rất cầu kỳ, nó được chia là 3 cột
trái - giữa - phải Trên đó có các khối block đặt các ảnh quảng cáo Những khu vực chứa nhóm tin tức
Footer: Nghĩa là phần cuối cùng của một website, ở đó sẽ hiển thị các thông
tin như copyright, giới thiệu,…
Còn nếu muốn truy cập vào trang quản trị Admin của Nukeviet thì tại trình duyệt, Nhấn dấu + (New Tab) để mở tab mới, sau đó gõ http://localhost/truongdth/admin/ để vào trang quản trị