Professional Documents
Culture Documents
Bai Giang MaNguonMo DHKDCNHN
Bai Giang MaNguonMo DHKDCNHN
BÀI GIẢNG
Mã Nguồn Mở
HÀ NỘI - 2019
Lời mở đầu
Tài liệu được sưu tầm sử dụng với mục đích giúp sinh viên nắm thông tin cơ bản về
mã nguồn mở. Giúp sinh viên hệ thống kiến thức, hiểu thêm về các phần mềm, phần
cứng, các mô hình hiện đại, trong thời đại công nghệ mới xung quanh chúng ta…
Sinh viên sẽ sử dụng kiến thức trong môn học để tự xây dựng các phần mềm ứng
dụng, tự xây dựng giải pháp cho các doanh nghiệp. Tuy nhiên, môn học còn hạn chế ở
khía cạnh nội dung, lĩnh vực mã nguồn mở có lượng kiến thức vô cùng lớn, rất khó để
trình bày hết được. Vậy mong tài liệu sẽ được các bạn bổ sung thêm nhiều thông tin
cần thiết để giúp môn học ngày càng tạo nên nhiều ứng dụng thực tế hữu ích cho xã
hội.
Tác giả
2
Chương 1. Giới thiệu về mã nguồn mở
1.1. Khái quát về mã nguồn 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 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). 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 mã nguồn mở có quyền yêu cầu người dùng trả một số chi phí về các
dịch vụ bảo hành, huấn luyện, nâng cấp, tư vấn, vv… tức là những dịch vụ thực sự đã
thực hiện để phục vụ người dùng, nhưng không được bán các sản phẩ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.
- 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ương trì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ên cho 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
3
nâng cấp sản phẩm, chắc chắn rằng dữ liệu của bạn sẽ phải vứt xó. 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 tá 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ối thố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. Không bị phụ thuộc vào một công ty nào.
4
- 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 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ới giá rẻ. Về phía nhà cung
cấp, dựa trên Open Source, tiết kiệm đáng kể các chi 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.
5
1.2. Các học thuyết về phần mềm mã nguồn mở
1.2.1. Học thuyết FSF
Tổ chức phần mềm tự do FSF (Free Software Foundation) đề xuất nhằm bảo vệ các
quyền tự do của người dùng
- Quyền tự do chạy một chương trình với bất kì mục đích nào.
- Quyền tự do nghiên cứu cách thức vận hành của một chương trình và thích ứng nó
cho phù hợp với nhu cầu của mình.
- Quyền tự do phân phát các phiên bản của phần mềm để giúp đỡ những người xung
quanh.
- Quyền tự do thêm mới các chức năng cho một chương trình và công bố những tính
năng mới đó đến công chúng để toàn cộng đồng được hưởng lợi.
1.2.2. Học thuyết OSI
Chương trình sáng kiến nguồn mở OSI (Open Source Initiative) đề xuất.
Chú trọng giá trị kĩ thuật của việc tạo ra những phần mềm mạnh, có độ tin cậy cao
và phù hợp với kinh doanh, đặc biệt là lợi ích thực tiễn của phương pháp xây dựng và
quảng bá phần mềm nguồn mở.
Open Source không chỉ có nghĩa là truy cập vào source code. Các điều khoản phân
phối phần mềm nguồn mở phải tuân theo các tiêu chí sau:
* Free Redistribution – Miễn phí phân phối lại:
- Việc cấp giấy phép sẽ không hạn chế bất kì ai từ việc bán hoặc cho theo các cách
khác nhau.
- Việc cấp giấy phép sẽ không đòi hỏi phải có trả tiền hoặc các chi phí khác.
* Source code:
- Chương trình phải bao gồm source code, và phải cho phép phân phối source code
cũng như các hình thức biên soạn.
- Trong trường hợp một số sản phẩm không được phân phối với mã nguồn, thì phải
công bố trên các phương tiện đại chúng hoặc download từ Internet mà không có phí.
6
- Source code phải được ưu tiên trong trường hợp lập trình viên sẽ chỉnh sửa
chương trình.
- Cố ý làm rối source code là không được phép.
* Derived Works – Các sản phẩm dẫn xuất: Giấy phép phải cho phép sửa đổi, bổ
sung, các sản phẩm dẫn xuất phải cho phép họ được phân phối theo cùng một
điều khoản như giấy phép của phần mềm gốc.
* Integrity of The Author's Source Code – Sự toàn vẹn source code của tác giả
- Giấy phép có thể đưa ra các hạn chế mã nguồn.
- Giấy phép có thể yêu cầu các sản phẩm dẫn xuất mang một tên khác hay
phiên bản khác từ phần mềm ban đầu.
* No Discrimination Against Persons or Groups - Không phân biệt đối xử với
cá nhân hoặc nhóm: Giấy phép không được phân biệt đối xử đối với bất kì người nào
hoặc nhóm người.
* No Discrimination Against Fields of Endeavor – Chống lại phân biệt sự cố
gắng của các thành viên: Giấy phép không được giới hạn việc sử dụng chương trình
trong các lĩnh vực cụ thể.
* Distribution of License – Phân phối giấy phép: Các quyền kèm theo trong các
chương trình cần phải áp dụng cho tất cả các chương trình được phân phối, mà không
cần thực hiện thêm một giấy phép giữa các bên.
OSI quản lí “The Open Source Definition” (định nghĩa về nguồn mở) nhằm xác
định
chính xác khái niệm về nguồn mở (http://opensource.org/docs/definition.php).
7
Phần mềm mã nguồn mở đơn giản là phần mềm dùng loại giấy phép đáp ứng định
nghĩa về nguồn mở trên.
- Artistic License;
- BSD License.
- MIT license
Cơ bản các giấy phép đều cho phép tự do sử dụng, phân phối, sửa đổi.
Nguồn mở không có nghĩa là trở thành của công. Tác giả vẫn là người nắm giữ bản
quyền và không bị khước từ bất cứ quyền nào. Họ cho phép sử dụng với những giới
hạn riêng. Ví dụ: Phải giữ tên tác giả ở những phiên bản kế thừa.
Người giữ bản quyền gốc có thể cung cấp phần mềm theo cả giấy phép nguồn mở
và giấy phép thương mại với các điều khoản khác nhau.
Phần mềm nguồn mở đôi khi cũng phải trả phí bản quyền.
Với đối tượng cá nhân thì không có nhiều sự khác biệt giữa các loại giấy phép.
Giấy phép GNU hiện đang có 2 phiên bản được sử dụng phổ biến là GPL-2.0 và
GPL-3.0. Chúng ta sẽ nói về phiên bản mới nhất GPL-3.0.
* Quyền lợi khi sử dụng phần mềm áp dụng giấy phép GPL
– Được sao chép và phân phối chương trình, được yêu cầu trả phí cho việc phân
phối đó.
– Được thay đổi chương trình để sử dụng cho mục đích cá nhân.
* Nghĩa vụ
– Khi sao chép và phân phối chương trình, phải đính kèm các thông báo về bản
quyền gốc và không bảo hành( trừ trường hợp có văn bản thêm về quy định bảo hành)
– Khi phân phối bản đã được thay đổi bởi bản thân, phải chú thích rõ đó là bản đã
được thay đổi, các thành phần được thay đổi, và áp dụng giấy phép GNU cho bản đã
được thay đổi đó.
– Khi phát hành chương trình phải công khai mã nguồn của chương trình, đồng thời
phải công bố mã nguồn của chương trình trong tối thiểu 3 năm mà không được đòi một
khoản phí nào từ những người yêu cầu mã nguồn trừ chi phí vận chuyển hay tương
đương.
LGPL là một phiên bản sửa đổi của GPL. Giấy phép này thường bị hạn chế đối với
các thư viện phần mềm. Nó được gọi là Lesser General Public License vì nó cung cấp
sự bảo vệ ít hơn so với GPL. Điều này cho phép các chương trình không phải là Open
source có thể truy cập hoặc liên kết tới các thư viện nguồn mở mà không phải công
khai mã nguồn như giấy phép GPL.
9
1.3.2. Giấy phép BSD
a. BSD 3-Clause “New” or “Revised” license
Giấy phép BSD(Berkeley Software Distribution License) có thể nói là lâu đời nhất
trong các giấy phép nguồn mở, nó đã và đang tồn tại ở một số dạng kể từ những năm
1980. Giấy phép BSD 3-Clause “New” or “Revised” license là bản sửa đổi của giấy
phép BSD cũ đã loại bỏ một số điều khoản mà người ta cho rằng phi thực tế.
* Điều khoản của giấy phép:
Tái phân phối và sử dụng ở dạng mã nguồn và nhị phân, có hoặc không có sửa đổi
mã nguồn, đều được cho phép miễn là các điều khoản sau được đáp ứng:
– Việc phân phối lại mã nguồn phải giữ lại thông báo bản quyền, danh sách các điều
kiện và tuyên bố từ chối trách nhiệm.
– Việc phân phối lại dưới dạng nhị phân phải sao chép thông báo bản quyền, danh
sách các điều kiện và tuyên bố từ chối trách nhiệm trong tài liệu và/hoặc các tài liệu
khác được cung cấp bởi bản phân phối.
– Tên của người giữ bản quyền cũng như tên của những người đóng góp của nó có
thể được sử dụng để xác nhận hoặc quảng cáo các sản phẩm có nguồn gốc từ phần
mềm này mà không có sự cho phép trước bằng văn bản cụ thể.
b. BSD 2-Clause “Simplified” or “FreeBSD” license
Giấy phép BSD 2-Clause “Simplified” or “FreeBSD” license về cơ bản giống với
giấy phép BSD 3-Clause. Nhưng BSD 2-Clause yêu cầu “Tên của những người đóng
góp trước đó không được sử dụng để quảng cáo cho bất kỳ phiên bản phái sinh nào mà
không có được sự cho phép bằng văn bản của họ”. BSD 3-Clause đã giảm bớt sự phiền
hà khi sử dụng phần mềm nguồn mở theo giấy phép BSD.
12
Chương 2. Phần mềm mã nguồn mở
2.1. Hệ điều hành mã nguồn mở
Hệ điều hành mã nguồn mở được hiểu là hệ điều hành nhà phát triển cho phép
người dùng gọi chung là các cá nhân hoặc tố chức được phép can thiệp vào sâu bên
trong bao gồm chỉnh sửa hoặc tùy biến mã nguồn thành những hệ điều hành mới để sử
dụng cho các mục đích cụ thể mà không thu phí. Chức năng của các hệ điều hành mã
nguồn mở tương tự như các hệ điều hành bình thường khác như Windows, iOS,
TizenOS…
Các hệ điều hành mã nguồn mở tuy không bị tính phí khi sử dụng nhưng người sử
dụng nó để phát triển hoặc tùy biến vẫn phải tuân theo một số giấy phép đặc biệt do
nhà giới thiệu đưa ra. Cùng tìm hiểu về ưu nhược điểm của hệ điều hành mã nguồn mở
là gì ở phần bên dưới đây.
13
* Ưu điểm nhược điểm của các hệ điều hành mã nguồn mở là gì?
Ưu điểm của các hệ điều hành mã nguồn mở là khả năng tùy biến, người dùng là cá
nhân hoặc tổ chức có thể phát triển, chỉnh sửa tinh chỉnh các chức năng trong hệ điều
hành mã nguồn mở để đưa ra một sản phẩm cụ thể phù hợp với nhu cầu sử dụng cụ thể
của mình. Ví dụ như trình duyệt chrome là một ứng dụng mã nguồn mở, Cốc cốc là
trình duyệt được tùy biến dựa trên Chrome với giao diện khác biệt và một số tính năng
mới như tích hợp Unikey và công cụ internet download manager vào trình duyệt. Ngoài
tính tùy biến, các hệ điều hành mã nguồn mở còn có ưu điểm là được cung cấp miễn
phí.
Nhược điểm của các hệ điều hành mã nguồn mở là tính năng sơ sài, do đó muốn có
nhiều tính năng thông minh hỗ trợ người dùng, nhà phát triển là cá nhân hoặc tổ chức
phải nâng cấp thêm nhiều tính năng về giao diện, ứng dụng, khả năng giao tiếp cũng
như anh ninh bảo mật để các hệ điều hành mã nguồn mở này hoàn thiện hơn và được
người dùng đón nhận.
14
Hình 2.2: Ảnh giao diện của hệ điều hành Ubuntu, một hệ điều hành phát triển từ
Linux
15
Hình 2.3 : Thành phần của một hệ điều hành Linux
16
Hạt nhân Linux gồm 5 thành phần cơ bản sau:
- Bộ định thời : Điều khiển việc truy cập đến CPU
- Bộ quản lý bộ nhớ: Đảm bảo nhiều tiến trình cùng sử dụng bộ nhớ máy tính một
cách an toàn; cung cấp cơ chế bộ nhớ ảo
- Hệ thống tập tin trừu tượng: Trừu tượng hóa những chi tiết khác biệt của các loại
thiết bị bằng cách giới thiệu một giao diện tập tin chung cho tất cả các thiết bị
- Giao diện mạng: Cung cấp truy cập đến nhiều chuẩn mạng và những loại thiết bị
mạng
khác nhau.
- Giao tiếp liên quá trình: Hộ trợ cơ chế giao tiếp giữa các tiến trình trên cùng một
máy
tính
c. Lý do để chọn hệ điều hành Linux
- Ứng dụng: Nhiều ứng dụng sẵn dùng trên Linux (miễn phí lẫn thương mại): văn
bản, đồ họa, đa phương tiện, Internet, bảo mật, quản trị, máy chủ …
- Ngoại vi: Hỗ trợ nhiều chủng loại thiết bị ngoại vi, hỗ trợ nhanh chóng các thiết bị
ngoại vi mới
- Phần mềm: Tồn tại một lượng lớn các phần mềm dưới dạng mã nguồn hoặc mã
thực thi
- Nền: Hỗ trợ nhiều kiến trúc máy tính: Intel, Alpha, MIPS, Motorola, 64bits
system, IBM S/390, SMPs
- Bộ giả lập: Cho phép chạy các ứng dụng của các hệ điều hành khác như MS-DOS,
Windows, Macintosh
- Máy ảo: Bộ quản lý máy ảo cho phép chạy nhiều máy ảo với những hệ điều hành
khác nhau trên cùng một máy tính thật (máy chủ)
- Hệ điều hành chuẩn: Dùng như hệ điều hành cho những nhà sản xuất phần cứng
khác
nhau.
17
- Đa người dùng & Đa tác vụ
- Tương thích: Hơn 95% mã nguồn được viết bằng C , độc lập thiết bị, nên có thể
dịch để dùng cho nhiều loại máy khác nhau: Máy chủ, máy để bàn, di dộng,
- POSIX (Portable Operating System Interface for Computer Environments): Cho
phép
ứng dụng phát triển trên Linux có thể dùng trên các hệ thống khác như UNIX
- Miễn phí, mã nguồn mở & tự do: Tiết kiệm chi phí, không phụ thuộc nhà phát
triển ứng dụng
d. Làm việc trên một hệ điều hành Linux
- Cần được nhà quản trị máy tính Linux cung cấp một tài khoản biểu hiện bằng một
tên
đăng nhập (login name/username) và một mật khẩu (password)
- Thực hiện thao tác đăng nhập (login/logon) vào máy tính Linux bằng giao diện đồ
họa
hoặc dòng lệnh. Người dùng phải khai báo username và password đã cấp trên máy này.
e. Các loại tập tin
Tập tin là một khái niệm trừu tượng để chỉ các thiết bị có thể ghi hoặc đọc dữ liệu
vào/ra như đĩa cứng, màn hình, con chuột, …
Có 3 loại tập tin :
- Tập tin bình thường: là các tập tin chương trình hoặc tập tin chứa dữ liệu, văn bản
- Thư mục
- Các tập tin là các thiết bị ngoại vi
f. Chuẩn phân cấp hệ thống tập tin (FHS-Filesystem Hierarchy Standard)
Chuẩn phân cấp hệ thống tập tin là một tài liệu mô tả cách sắp xếp các thư mục trên
hệ thống Linux. FHS được phát triển để cấp một khuôn mẫu chung nhằm giúp cho việc
phát triển các ứng dụng mà không phụ thuộc vào bản phân phối Linux. FHS mô tả các
thư mục sau:
/ : Thư mục gốc
18
/boot: Các tập tin tĩnh cần thiết cho tiến trình khởi động
/dev : Các tập tin thiết bị
/etc : Các tập tinh cấu hình hệ thống và các ứng dụng
/lib : Các thư viện chia sẻ và các môdule của hạt nhân
/mnt : Điểm gắn nối các hệ thống tập tin một cách tạm thời
/opt : Nơi tích hợp các gói chương trình ứng dụng
/sbin: Các tập tin thực thi cần thiết cho hệ thống
/tmp : Nơi chứa các tập tin tạm
/usr : Hệ phân cấp thứ cấp
/var : Dữ liệu biến đổi
g. Đường dẫn (path)
Đường dẫn là một chuỗi các tên thư mục ngăn cách nhau bởi ký tự '/', kết thúc
đường dẫn có thể là tên một tập tin.
Đường dẫn tuyệt đối: là đường dẫn bắt đầu bằng thư mục gốc '/';
Ví dụ: /home/nbhung/Desktop
Thư mục hiện hành: là một vị trí trên cây thư mục
Ví dụ: /home/nbhung
Đường dẫn tương đối: là đường dẫn được tính bắt đầu từ thư mục hiện hành
Ví dụ: Desktop ; Với thư mục hiện hành là /home/nbhung
h. Một số thư mục đặc biệt
- Thư mục gốc ký hiệu /
- Thư mục hiện hành ký hiêu là . (một chấm)
- Thư mục cha ký hiệu .. (hai chấm)
- Thư mục cá nhân (home directory) ký hiệu ~: Mỗi người dùng có một thư mục cá
nhân nơi mà người dùng có toàn quyền (thêm, sửa, xóa tập tin thư mục).
Lưu ý: Tên thư mục và tập tin có phân biệt chữ hoa và chữ thường.
i. Một số lệnh cơ bản trên thư mục
- Xem thư mục hiện hành: pwd
19
- Xem nội dung thư mục ls [dir]
- Chuyển thư mục: cd newdir
- Tạo thư mục: mkdir newdir
- Sao chép thư mục
cp -r ol
- Xóa thư mục rỗng:
rmdir a
- Xóa thư mục:
rm -rf a
k. Một số lệnh thao tác trên tập tin
- Sao chép tập tin cp old-file new-file
- Đổi tên tập tin mv old-name new-name
- Di chuyển tập tin mv file-name dir-name
- Tạo liên kết ln -s file-name link-name
- Tạo/Cập nhật tập tin touch file-name
- Xóa tập tin rm [-f] file-name
- Hiển thị nội dung cat file-name
21
Hình 2.5a: Cài đặt Linux
22
Cấu hình chuột
Chọn đúng kiểu chuột trong hệ thống. Nếu không tìm được chính xác chọn kiểu
tương
thích trong danh sách.
23
Hình 2.5c: Cài đặt Linux
Sử dụng phím Tab và phím mũi tên để di chuyển, phím Space hay Enter để chọn
- Dùng Delete xoá các phân vùng cũ của hệ thống trước.
- Chọn New để tạo các phân vùng mới.
- Tạo phân vùng bộ nhớ ảo với các thông số sau:
Type: Linux Swap
Size: 256Mb (gấp đôi kích thước vật lý của bộ nhớ RAM của hệ thống)
Allowable Drives [*] sda xác định vị trí vật lý của phân vùng tại ổ đĩa cứng thứ
nhất
- Tạo phân vùng thứ hai cho thư mục gốc của hệ thống
Mount point: / (liên kết phân vùng này với thư mục gốc root của hệ thống.
Type: ext3
Size:1Mb
24
Grow to fill disk [*] (chọn lựa này tạo phân vùng với dung lượng còn lại của ổ
đĩa cứng thứ nhất)
Allowable Drives [*] sda
- Tạo phân vùng thứ 3 cho thư mục /usr của hệ thống:
Mount point: /usr (liên kết phân vùng này với thư mục /usr trên cây thư mục hệ
thống)
Type : ext3
Size : 3072 ( 3 GB )
Allowable Drives [*] sdb
- Tạo phân vùng thứ 4 cho thư mục /var của hệ thống:
Mount point: /var (liên kết phân vùng này với thư mục /usr trên cây thư mục hệ
thống)
Type: ext3
Size: 1
Grow to fill disk [*] (chọn lựa chọn phân vùng với dung lượng còn lại của ổ
cứng thứ hai)
Allowable Drives [*] sdb
- Kết thúc chọn OK và xác nhận hoàn thành việc thay đổi bảng phân vùng để ghi lại
các thay đổi
25
Hình 2.5d: Cài đặt Linux
Boot loader:
1. Bỏ qua lựa chọn định dạng đĩa có kiểm tra lỗi nếu ổ đĩa cứng không có lỗi.
2. Cấu hình Boot loader
Chọn UseLILO as boot loader
***SORRY, THIS MEDIA TYPE IS NOT SUPPORTED.***
Dùng lựa chọn đặt boot loader tại Master Boot Record nếu hệ thống chỉ cài đặt một
hệ điều hành.
***SORRY, THIS MEDIA TYPE IS NOT SUPPORTED.***
26
Cấu hình mạng :
Nếu máy không có card mạng, sẽ không nhận được màn hình này. Thực hiện cấu
hình mạng cho máy như sau:
- Bỏ lựa chọn config using DHCP (chỉ chọn sử dụng chế độ cấp phát địa chỉ IP
động), nhập địa chỉ IP, subnetmask theo hướng dẫn của giáo viên hướng dẫn
thực hành
***SORRY, THIS MEDIA TYPE IS NOT SUPPORTED.***
- Nhập hostname
- Cấu hình firewall, chọn Medium
***SORRY, THIS MEDIA TYPE IS NOT SUPPORTED.***
Lựa chọn ngôn ngữ English (US)
***SORRY, THIS MEDIA TYPE IS NOT SUPPORTED.***
1. Cấu hình Time Zone: (Asia/Saigon)
2. Cấu hình tài khoản:
- Nhập mật khẩu cho tài khoản root, gõ lại mật khẩu tại hộp confirm
***SORRY, THIS MEDIA TYPE IS NOT SUPPORTED.***
- ***SORRY, THIS MEDIA TYPE IS NOT SUPPORTED.*** Khai báo thêm
các tài khoản khác (nếu cần thiết) Tạo thêm tài khoản mới:
- Chọn New để tạo thêm tài khoản mới, nhập thông tin về người dùng. Nhận
được màn hình tạo tài khoản mới như sau:
27
Hình 2.5e: Cài đặt Linux
28
Hình 2.5f: Cài đặt Linux
29
Hình 2.5g: Cài đặt Linux
30
Hình 2.5h: Cài đặt Linux
Xác định kiểu monitor từ danh sách các monitor được hỗ trợ. Chương trình kiểm tra
thử chế độ đồ hoạ, nếu các thông số khai báo không đúng, ta phải khai báo lại.
Nếu cài đặt chế độ đồ hoạ thành công, máy sẽ yêu cầu chọn có nên khởi động máy vào
chế độ đồ hoạ hay không (mặc định là chế độ text)
Hoàn tất quá trình cài đặt và khởi động lại máy (lưu ý bỏ đĩa CD Rom ra khỏi ổ
đĩa trước khi khởi động lại).
* Kết thúc phần hệ điều hành mã nguồn mở. Định hướng nghiên cứu tiếp theo cho sinh viên:
1. Sau khi cài đặt xong hệ điều hành trên. Tiền hành nghiên cứu cách sử dụng, quản trị.
2. Tiến hành cài đặt thêm các hệ điều hành khác và nghiên cứu cách sử dụng, quản trị.
31
2.3. Các ứng dụng cơ bản khác của mã nguồn mở
2.3.1. BIND – Máy chủ tên miền DNS
Dùng BIND cài đặt, cấu hình DNS cho Linux
Hiện tại trên Internet rất nhiều nhà cung cấp phần mềm miễn phí cho
DNS. Nhưng phần mền sử dụng DNS cho unix được sử dụng phổ biến hiện này
là gói phần mềm cho DNS là Bind
Bind được phát triển bởi một tổ chức phi lợi nhuận là Internet Software
Consortium (www.isc.org) và nó cung cấp phần mền bind miễn phí.
Phần mền Bind còn cung cấp tiện ích nslookup là công cụ rất tiện lợi cho việc kiểm
tra tên miền.
32
Với DNS client chỉ cần cấu hình file resolv.conf
33
#/usr/local/sbin/named
Vậy là server đã sẵn sàng cho truy vấn DNS
35
Expire : là khoảng thời gian mà domain sẽ hết hiệu lực nếu secondary không kết nối
được với primary server.
TTL (time to live) : khi một server bất kỳ yêu cầu thông tin về dữ liệu nào đó từ
primary server, và dữ liệu đó sẽ được lưu giữ tại server đó và có hiệu lực trong khoảng
thời gian của TTL. Hết khoảng thời gian đó nếu tiếp tục cần thì nó lại phải truy vấn lại
primary server.
Các bản ghi thường dùng trong DNS server
NS (name server) : Bản ghi NS để xác định DNS server nào sẽ quản lý tên miền.
Như ví dụ ở trên là DNS server vdc-hn01.vnn.vn. và hcmserver1.vnn.vn.
A (address) : Bản ghi dạng A cho tương ứng một domain name với một địa chỉ IP.
Chỉ cho phép khai báo một bản ghi A cho một địa chỉ IP.
Ví dụ:
Tên miền Internet Loại bản ghi Địa chỉ
mr.vnn.vn. IN A 203.162.4.148
mr-hn.vnn.vn. IN A 203.162.0.24
mail.vnn.vn. IN A 203.162.0.9
fmail.vnn.vn. IN A 203.162.4.147
hot.vnn.vn. IN A 203.162.0.23
home.vnn.vn. IN A 203.162.0.12
www.vnn.vn. IN A 203.162.0.16
CNAME (canonical name) : là tên phụ cho một host có sẵn tên miền dạng A. Nó
thường được sử dụng cho các server web, ftp
Ví dụ : các domain có dạng CNAME được chỉ tới các máy chủ web
MX (mail exchange): là tên phụ cho các dịch vụ mail trên các máy chủ đã có tên
miền dạng A. Bản ghi này cho phép máy chủ có thể cung cấp dịch v ụ mail cho các
domain khác nhau. Có thể khai báo nhiều domain khác nhau cùng chỉ tới một server
hoặc một domain trỏ tới nhiều server khác nhau ( sử dụng backup) trong tr ường h ợp
này giá trị ưu tiên phải đặt khác nhau. Với số ưu tiên càng nhỏ thì m ức độ ưu tiên càng
cao.
Ví dụ
Loại bản Mức ưu
Tên miền Internet Server
ghi tiên
mrvn.vnn.vn. IN MX 10 mr.vnn.vn.
clipsalvn.vnn.vn. IN MX 10 mr-hn.vnn.vn.
dbqnam.vnn.vn. IN MX 10 mr-hn.vnn.vn.
thangloi.vnn.vn. IN MX 50 mail.netnam.vn.
100 fallback.netnam.vn.
PTR (Pointer) : là bản ghi tương ứng địa chỉ IP với domain. Các file dạng
db.address. Ví dụ db.203.162.0 cho tương ứng với các địa chỉ IP tương ứng với mạng
203.162.0.xxx
Chú ý :
Trước mỗi phần khai báo domain thường có dòng
$ORIGIN domain.
Để khai báo giá trị mặc định của domain. Cho phép trong phần khai báo giá trị
không phải khai báo lặp lại phần domain mặc định.
37
Ví dụ :
vdc.com.vn. IN A
203.162.0.49
hoặc
$ORIGIN com.vn.
vdc IN A
203.162.0.49
Dấu ";" được sử dụng làm ký hiệu dòng chú thích, các phần sau dấu “;” đều không
có tác dụng.
42
43
44
2.3.2. Apache – Máy chủ Web
Apache là phần mềm web server miễn phí mã nguồn mở, hiện đang là một trong
những web server được sử dụng phổ biến trên thế giới. Tên chính thức của Apache là
Apache HTTP Server, được điều hành và phát triển bởi Apache Software Foundation.
Các yêu cầu gửi tới máy chủ sử dụng phương thức HTTP còn được gọi tắt là HTTP
request.
Sử dụng trình duyệt bạn có thể gửi đi một HTTP request đơn giản bằng cách nhập
một địa chỉ IP (hoặc một URL chứa tên miền) và bấm Enter. Khi đó bạn đã gửi đi một
HTTP request tới một máy chủ trên internet. Địa chỉ máy chủ này được xác định bởi
địa chỉ IP (hoặc URL với tên miền) mà bạn đã nhập vào.
Do được cài đặt trên web server (phần cứng) nên Apache hay được gọi là web
server hay HTTP server. Khi sử dụng thuật ngữ web server, chúng ta hiểu rằng người
nói đang đề cập tới góc độ phần mềm.
Cách thức hoạt động của Apache Web Server
Tuy được gọi là Apache web server nhưng nó không phải là server vật lý mà
Apache chính là một phần mềm chạy trên server đó. Nhiệm vụ chính của Apache là
thiết lập kết nối giữa server và browser (Firefox, Chrome, Safari,...), sau đó chịu trách
nhiệm chuyển file qua lại giữa giữa server và browser (cấu trúc hai chiều client-server).
Apache hoạt động tốt với cả server Unix và Windows và là phần mềm đa nền tảng.
Khi visitor tải một site trên trang web, ví dụ trang "About Us", browser của user sẽ
gửi request tải trang đó lên server và Apache sẽ trả lại kết quả với đầy đủ toàn bộ các
file, các thành phần để hiển thị hoàn chỉnh trang About Us (bao gồm image, text,...).
Server và client giao tiếp với nhau qua HTTP protocol và Apache chịu trách nhiệm
đảm bảo quá trình này diễn ra trơn tru và bảo mật giữa hai máy.
Apache là một nền tảng module có độ tùy biến khá cao. Modules cho phép quản trị
viên server có thể tắt hoặc thêm vào các chức năng. Apache sở hữu các modules cho
bảo mật caching, URL rewriting, chứng thực mật khẩu,...
Ưu điểm và hạn chế của Apache
45
Apache web server là lựa chọn khá tối ưu nếu bạn muốn vận hành website của mình
một cách thật ổn định và có thể tùy chỉnh linh hoạt.
Ưu điểm
- Apache là phần mềm mã nguồn mở, miễn phí kể cả cho mục đích thương mại.
- Apache đáng tin cậy, ổn định.
- Apache luôn được cập nhật thường xuyên, được vá lỗi bảo mật liên tục.
- Apache khá linh hoạt vì có cấu trúc module.
- Apache dễ dàng cấu hình, thân thiện với người mới bắt đầu sử dụng.
- Apache là phần mềm đa nền tảng (Unix và Windows).
- Apache hoạt động cực kỳ hiệu quả với các website WordPress.
- Apache sở hữu một cộng đồng lớn và sẵn sàng hỗ trợ bất kỳ lúc nào khi bạn gặp
sự cố.
Tuy nhiên, bên cạnh các ưu điểm to lớn phía trên thì Apache vẫn đang tồn tại một
số điểm bất lợi dưới đây.
Nhược điểm
- Gặp vấn đề hiệu năng nếu website có lượng traffic cực lớn.
- Quá nhiều tùy chọn trong thiết lập gây ra các điểm yếu về bảo mật.
Cách cài đặt Apache
Hướng dẫn sau đây giúp bạn có thể cài đặt Apache từ source, thuận tiện cho việc
tìm hiểu, tùy chỉnh cài đặt và cấu hình.
Bước 1: Download Apache
Download Apache source từ Apache Lounge phiên bản 64 bit hoặc 32 bit. File cần
download là httpd-2.4.33-win64-VC15.zip.
Bản Apache VC15 được xây dựng trên Visual C Redistributable for Visual Studio
2017 (VC_redist.x64.exe cho 64-bit hoặc VC_redist.x86.exe cho 32-bit) nên bạn cần
phải cài đặt nó trên Windows. Nếu bạn muốn cài đặt Apache trên Win XP thì hãy dùng
bản Apache VC10 vì bản VC15 không hỗ trợ Win XP.
46
Bước 2: Cài đặt Apache
Sau khi download Apache từ source, hãy giải nén thư mục Apache24 vào ổ C. Vì
source này được build mặc định cho ổ C, nếu như bạn muốn cài đặt nó trên ổ D hay bất
kỳ đâu thì bạn cần phải thay đổi lại cấu hình cho DocumentRoot… Vì các cấu hình hơi
rắc rối nên chúng ta sẽ để nó ở ổ C và để tên folder là Apache24 theo mặc định.
Như vậy là quá trình cài đặt Apache đã hoàn thành. Để khởi động Apache, vào thư
mục C:\Apache24\bin và chạy file httpd.exe.
Bây giờ bạn có thể vào http://localhost để kiểm tra. Nếu như bạn nhìn thấy dòng "It
works!" là bạn đã cài đặt và chạy Apache thành công.
Có thể bạn sẽ nhìn thấy thông báo này khi chạy file httpd.exe:
AH00558: httpd.exe: Could not reliably determine the server's fully qualified domain
name, using fe80::b93e:e93c:a570:f94a. Set the 'ServerName' directive globally to
suppress this message
Đây chỉ là cảnh báo, không phải lỗi. Để fix, bạn cần phải gán giá trị cho mục
ServerName trong file C:\Apache24\conf\httpd.conf như sau:
#ServerName www.example.com:80
Bỏ dấu "#" phía trước và thay đổi giá trị thành "localhost" hoặc domain của bạn.
ServerName localhost
Bây giờ bạn tắt cửa sổ httpd.exe và chạy lại file này để khởi động Apache xem còn lỗi
hay không.
Bật mod_rewrite trong Apache trên localhost
Để sử dụng được Wordpress Permalink hoặc rewrite cho htaccess, bạn cần phải bật
mod_rewrite trên localhost. Để bật mod_rewrite trong Apache, bạn cần mở file C:\
Apache24\conf\httpd.conf và tìm đoạn sau:
#LoadModule rewrite_module modules/mod_rewrite.so
Xóa dấu "#" ở trước để bật module này nhé. Sau khi xóa sẽ được như sau:
LoadModule rewrite_module modules/mod_rewrite.so
Tiếp theo bạn cần tìm đến đoạn sau:
47
<Directory "c:/Apache24/htdocs">
………………….
AllowOverride None
………………….
</Directory>
Sửa AllowOverride None thành AllowOverride All như sau:
<Directory "c:/Apache24/htdocs">
………………….
AllowOverride All
………………….
</Directory>
Restart Apache và kiểm tra. Bạn cũng có thể bật mod_rewrite trong XAMPP, WAMP,
Appserv bằng cách làm tương tự.
48
2.3.3. Máy chủ CSDL (MySQL)
MySQL là một hệ thống quản trị cơ sở dữ liệu mã nguồn mở (gọi tắt là
RDBMS) hoạt động theo mô hình client-server. Với RDBMS là viết tắt
của Relational Database Management System. MySQL được tích hợp
apache, PHP. MySQL quản lý dữ liệu thông qua các cơ sở dữ liệu. Mỗi cơ sở dữ liệu
có thể có nhiều bảng quan hệ chứa dữ liệu. MySQL cũng có cùng một cách truy xuất và
mã lệnh tương tự với ngôn ngữ SQL. MySQL được phát hành từ thập niên 90s.
Lịch sử hình thành và phát triển của MySQL
Quá trình hình thành và phát triển của MySQL được tóm tắt như sau:
- Công ty Thuy Điển MySQL AB phát triển MySQL vào năm 1994.
- Phiên bản đầu tiên của MySQL phát hành năm 1995
- Công ty Sun Microsystems mua lại MySQL AB trong năm 2008
- Năm 2010 tập đoàn Oracle thâu tóm Sun Microsystems. Ngay lúc đó, đội ngũ phát
triển của MySQL tách MySQL ra thành 1 nhánh riêng gọi là MariaDB. Oracle tiếp tục
phát triển MySQL lên phiên bản 5.5.
- 2013 MySQL phát hành phiên bản 5.6
- 2015 MySQL phát hành phiên bản 5.7
- MySQL đang được phát triển lên phiên bản 8.0
MySQL hiện nay có 2 phiên bản miễn phí (MySQL Community Server) và có phí
(Enterprise Server).
Ưu điểm và nhược điểm của MySQL
Ưu điểm của MySQL
- Dễ sử dụng: MySQL là cơ sở dữ liệu tốc độ cao, ổn định, dễ sử dụng và hoạt động
trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.
- Độ bảo mật cao: MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên
Internet khi sở hữu nhiều nhiều tính năng bảo mật thậm chí là ở cấp cao.
- Đa tính năng: MySQL hỗ trợ rất nhiều chức năng SQL được mong chờ từ một hệ
quản trị cơ sở dữ liệu quan hệ cả trực tiếp lẫn gián tiếp.
49
- Khả năng mở rộng và mạnh mẽ: MySQL có thể xử lý rất nhiều dữ liệu và hơn thế nữa
nó có thể được mở rộng nếu cần thiết.
- Nhanh chóng: Việc đưa ra một số tiêu chuẩn cho phép MySQL để làm việc rất hiệu
quả và tiết kiệm chi phí, do đó nó làm tăng tốc độ thực thi.
Nhược điểm của MySQL
- Giới hạn: Theo thiết kế, MySQL không có ý định làm tất cả và nó đi kèm với các hạn
chế về chức năng mà một vào ứng dụng có thể cần.
- Độ tin cậy: Cách các chức năng cụ thể được xử lý với MySQL (ví dụ tài liệu tham
khảo, các giao dịch, kiểm toán,…) làm cho nó kém tin cậy hơn so với một số hệ quản
trị cơ sở dữ liệu quan hệ khác.
- Dung lượng hạn chế: Nếu số bản ghi của bạn lớn dần lên thì việc truy xuất dữ liệu
của bạn là khá khó khăn, khi đó chúng ta sẽ phải áp dụng nhiều biện pháp để tăng tốc
độ truy xuất dữ liệu như là chia tải database này ra nhiều server, hoặc tạo cache
MySQL
50
Hoạt động của MySQL
51
Hướng dẫn cài đặt MySQL Server trên Windows
Bạn nên lựa chọn hệ điều hành Windows khi thuê máy chủ, bởi trên
Windows, Server của bạn sẽ được tối ưu tốt nhất
Bước 1: Tải MySQL
Sau khi tải MySQL Cummunity (bản miễn phí) về bạn sẽ có đủ 3 file như sau:
- Microsoft .NET Framework 4 Client Profile
- Visual C++ Redistributable for Visual Studio 2013
- MySQL
Bước 2: Cài đặt MySQL
Đầu tiên bạn cần cài đặt Microsoft .NET Framework 4 Client Profile, Visual C++
Redistributable for Visual Studio 2013 trước sau đó cài đặt đến file MySQL.
Các bước cài đặt MySQL Server như sau:
- Mở file cài đặt —> Accept —> Next
- Chọn Full để cài đặt tất cả, bao gồm cả Database —> Next
- Ở bước này bạn sẽ thấy tất cả các gói được cài đặt. Chọn Execute Chọn Next
52
- Tiếp theo chúng ta sẽ đến phần cấu hình cho MySQL Server. Chọn Next
- Lựa chọn
Config Type: Development Machine
Connectivity: Click chọn TCP/IP —> Open Firewall
- Sau đó click Next
- Tại Accounts and Roles bạn điền mật khẩu của mình vào, sau đó chọn Next
- Mặc định User là root, bạn điền mật khẩu đã thiết lập bên trên vào để check và kết
nối với MySQL server.
- Chờ đợi hoàn tất, chọn Finish.
53
2.3.4. Email – Máy chủ thư điện tử
Thư điện tử là một phương tiện truyền thông tin rất nhanh chóng và tiện lợi. Thông
tin truyền đi có thể được truyền ở dạng mã hoá hoặc dạng thông thường. Một bức thư
điện tử được gửi đi có thể đi qua rất nhiều máy chủ khác nhau trên mạng internet và
cuối cùng đến được một hay nhiều máy người nhận cùng lúc chỉ trong vòng vài chục
giây.
Cấu trúc hệ thống thư điện tử
Hệ thống Mail Server là một hệ thống tổng thể bao gồm nhiều thành phần hoạt động
tương tác với nhau. Mỗi thành phần bản thân phục vụ các dịch vụ khác nhau, nhưng
đồng thời các kết quả lại được đưa đến các thành phần khác để xử lý tiếp theo. Dưới
đây là mô hình của hệ thống Mail Server và sự tương tác giữa các thành phần bên
trong:
54
Hình 2.8: Cấu trúc hệ thống thư điện tử chung
Mail User Agent (MUA): Trình tương tác với người dùng, soạn thảo, gửi hoặc
nhận e- mail
SMTP Server: gọi là Mail Transfer Agent (MTA). SMTP server sử dụng để chuyển
e-mail từ người gửi đến Mail Server chứa hộp thư, dùng giao thức SMTP.
POP3/IMAP Server: Gọi là Mail Delivery Agent (MDA), lưu các thư nhận được
vào hệ thống và khi cần người dùng sử dụng chương trình mail client lấy các thư này
về máy tính để đọc. Chương trình mail client giao tiếp với POP/IMAP server dựa trên
giao thức POP3/IMAP. Thông thường mail server hỗ trợ cả hai giao thức SMTP và
POP3, còn IMAP thì ít hơn.
DNS Server: Lưu trữ 1 hoặc nhiều bản ghi MX cho các tên miền, nhằm xác định
địa chỉ của hệ thống Mail muốn giao tiếp.
Database server: Lưu trữ các thông tin về người dùng hệ thống, cung cấp dữ liệu
phục vụ cho vấn đề chứng thực người dùng.
Webserver, webmail: Cung cấp giao diện người dùng nền web, người dùng có thể
thực hiện các thao tác tương tác với hệ thống qua giao diện này.
Các giải pháp e-Mail mã nguồn mở
Hiện nay trên thế giới đa xuất hiện rất nhiều sản phẩm xây dựng một hệ thống Mail
Server. Có nhiều sản phẩm với giá cả rất rẻ (thậm chí miễn phí), nhỏ gọn, cài đặt và
quản trị đơn giản, như WorkGroupMail, Surge Mail Server, Kerio Mail Server. Cũng
có những sản phẩm lớn, giá thành cao, tính năng phong phú, đáp ứng được sự ổn định
và an toàn như Mail Exchange của Microsoft, Merak Mail Server…
Tuy nhiên các hệ thống này chưa đáp ứng được nhu cầu người dùng. Hệ điều hành
linux là sự lựa chọn tốt nhất cho nền tảng hệ thống. Trong thế giới mã nguồn mở hiện
nay, đã có rất nhiều hệ thống truyền tải thư điện tử MTA (Mail Transfer Agent) được
phát triển. Nổi tiếng và phổ biến trong số đó gồm có: Sendmail, Qmail, Postfix, Exim,
Courier. Mỗi MTA đều có những ưu điểm và nhược điểm riêng:
55
Sendmail
Sendmail (http://www.sendmail.org) là MTA đơn giản và lâu đời nhất trên các dòng
Unix thời xưa. Ngày nay, trên các hệ thống Linux, đặc biệt là các sảm phẩm của
RedHat, Sendmail vẫn được cài đặt là MTA mặc định cho hệ thống. Ngày nay,
Sendmail đa được thương mại hóa bên cạnh sản phẩn miễn phí và vẫn được tiếp tục
duy trì, phát triển. Tuy nhiên, vì được thiết kế theo cấu trúc khối và ảnh hưởng từ cấu
trúc cũ, nên Sendmail chưa đạt được tính năng ổn định và bảo mật của một MTA như
mong muốn.
Qmail
Qmail được viết bởi Bernstein, là một MTA dành cho hệ điều hành tựa Unix, bao
gồm Linux, FreeBSD, Sun Solaris, … Qmail ra đời như một tất yếu thay thế cho
Sendmail và các yếu điểm của nó. Vì vậy, Qmail ngay từ ban đầu đa được thiết kế đơn
giản, module hóa với tiêu chí bảo mật được đặt lên rất cao. Đồng thời, Qmail là một
MTA hiện đại nên hỗ trợ tốt các kiểu định dạng mới hiện nay như định dạng hòm thư
56
Maildir…Do Qmail được thiết kế module hóa và tối ưu hóa các tính năng ngay từ đầu,
nên nó có tốc độ thực thi rất nhanh và ổn định.
Postfix
Weitse Venema, tác giả của các phần mềm miễn phí nổi tiếng như TCP Wrappers,
SATAN và Logdaemon, ông không hài lòng khi sử dụng các MTA hiện có (bao gồm
cả Qmail), vì vậy, ông đa viết ra Postfix (http://www.postfix.org). Postfix là một MTA
mới, có khả năng thực thi cao, thừa kế cấu trúc thiết kế tốt từ Qmail, trong khi đó vẫn
giữ được tính tương thích tối đa với Sendmail. So sánh với Qmail, Postfix có kích
thước lớn hơn, phức tạp hơn, trong khi đó lại kém bảo mật, kém tin cậy và chạy chậm
hơn. Tuy Postfix cũng được thiết kế theo cấu trúc module, nhưng các module của
Postfix chạy dưới quyền của cùng một người dùng hệ thống, vì vậy sự hỏng hóc của
một module có thể ảnh hưởng đến toàn bộ hệ thống. Xét về tổng thể, Postfix là một
MTA tốt. Nếu vấn đề bảo mật và khả năng thực thi của hệ thống không được đoi hỏi
quá cao, người quản trị có thể chọn và sử dụng Postfix.
Exim
57
Philip Hazel đa phát triển Exim (http://www.exim.org) tại trường đại học
Cambridge. Nó được thiết kế theo xu hướng nhỏ và đơn giản nhưng vẫn đảm bảo các
tính năng. Tuy nhiên, Exim vẫn được thiết kế theo cấu trúc khối, và hai yếu tố quan
trọng với các MTA hiện đại là bảo mật và khả năng thực thi lại không được coi trọng.
Hiện nay, Exim là MTA được lựa chọn và cài đặt mặc định trên các phiên bản phân
phối Linux dựa theo Debian, ngoài ra nó không được sử dụng rộng rãi.
58
2.3.5. OpenOffice - Ứng dụng văn phòng
OpenOffice là phần mềm văn phòng mã nguồn mở hàng đầu hiện nay, hoàn toàn có
thể thay thế bộ ứng dụng văn phòng phổ biến Microsoft Office. OpenOffice là đề án
phần mềm nguồn mở với mục đích qua sự đóng góp của cộng đồng những người viết
phần mềm, soạn thảo ra một chương trình ứng dụng văn phòng hoạt động được với tất
cả các hệ điều hành phổ biến và khai thác các chức năng và tài liệu thông qua các thành
phần mở dựa trên các thư viện nguồn API và dạng hồ sơ XML.
OpenOffice gồm các ứng dụng soạn thảo văn bản, bảng tính điện tử, trình chiếu, xử
lý đồ họa vector và soạn thảo trang mạng với tất cả những mệnh lệnh tương đương với
các chương trình ứng dụng văn phòng khác và có thể thay thế được các phần mềm
thương mại này.
OpenOffice bao gồm tất cả các công cụ cần thiết cho một ứng dụng văn phòng. Nó
rất đáng tin cậy, dễ sử dụng và chạy rất trơn tru, ngay cả trên các máy tính cũ.
59
Các ứng dụng chính trong OpenOffice
OpenOffice Writer tương đương Microsoft Word
Đây là một phần của bộ ứng dụng được thiết kế như MS Word. Nó đi kèm với tính
năng kiểm tra chính tả, cho phép người dùng chèn bảng biểu, hình ảnh, tập tin hoặc đồ
thị vào tài liệu mới. Thay đổi địng dạng, xây dựng các macro, chuyển sang ngôn ngữ
khác, thậm chí cài đặt phần mở rộng từ cùng một giao diện.
60
Hình 2.11: Giao diện làm việc của OpenOffice Impress
61
Hình 2.12: Giao diện làm việc của OpenOffice Calc
OpenOffice Draw
Ứng dụng này giúp bạn tạo ra các sơ đồ từ đơn giản tới 3D sống động.
62
Hình 2.13: Giao diện làm việc của OpenOffice Base
OpenOffice Math
Ứng dụng này cho phép bạn viết ra các phương trình, công thức toán học dạng phức
tạp.
63
Hình 2.14: Giao diện làm việc của OpenOffice Math
OpenOffice.org hiện đang được khuyến khích dùng ở các cơ quan hành chính, sự
nghiệp để dần thay thế cho bộ văn phòng nặng nề đắt đỏ của MS. OpenOffice tương
thích hoàn toàn các định dạng của bộ MS Office, do đó bạn có thể chuyển đỗi việc sử
dụng rất dể dàng.
64
2.3.6. CMS mã nguồn mở trong Moodle
Tổng quan về Moodle
- Moodle là từ viết tắt của Modular Object-Oriented Dynamic Learning
Environment, mục đích giúp tạo ra những khóa học trực tuyến với sự tương tác cao.
- Moodle được sáng lập năm 1999 bởi Martin Dougiamas, và được điều phối bởi
Moodle HQ, một công ty Úc với 30 nhà phát triển và được tài trợ bởi một mạng lưới
với hơn 60 công ty dịch vụ Moodle đối tác trên toàn thế giới. Moodle hiện là phần mềm
được sử dụng rộng rãi với nhiều tính năng tuyệt vời.
- Moodle là một hệ thống quản lý học tập (Learning Management System
- LMS hoặc người ta còn gọi là Course Management System hoặc VLE - Virtual
Learning Environment)
- Moodle là một nền tảng học tập mã nguồn mở, miễn phí với độ linh hoạt cao, cho
phép tạo các khóa học trên mạng Internet hay các website học tập trực tuyến, được thiết
kế để cung cấp cho các nhà giáo dục, các quản trị viên và người học với một hệ thống
mạnh mẽ, an toàn và tích hợp duy nhất để tạo ra môi trường học tập cá nhân.
- Moodle được đăng ký theo bản quyền GNU GPL.
Moodle được xây dựng cho việc học tập, trên toàn cầu
Moodle thật sự rất đáng tin cậy, các tổ chức giáo dục lớn và nhỏ trên toàn thế giới
đều đang sử dụng hệ thống này, có thể kể tới: Shell, London School of Economics,
State University of New York, Microsoft and the Open University... Moodle trải rộng
khắp trên 160 quốc gia với hơn 10.000 site, dịch ra 75 ngôn ngữ, đồng thời được hơn 79
triệu người dùng trên thế giới sử dụng làm nền tảng học tập.
Được thiết kế để hỗ trợ giảng dạy và học tập
Moodle nổi bật với thiết kế dành cho giáo dục và những người làm giáo dục với hơn
10 năm phát triển theo phương pháp sư phạm constructionist xã hội. Moodle cung cấp
một bộ công cụ mạnh mẽ và số lượng đồ sộ về tài liệu hỗ trợ, lấy người học làm trung
tâm, môi trường học tập hợp tác, trao quyền cho cả giảng dạy và học tập.
65
Dễ dàng sử dụng
Sở dĩ Moodle dễ sử dụng bởi các giao diện trực quan, tính năng đơn giản, kéo và
thả... Ngoài ra, người dùng còn có thể tự từ cài và nâng cấp Moodle, chỉnh sửa theo các
theme có sẵn hoặc theme tự tạo. Moodle dễ học và dễ sử dụng bởi chúng được nâng cấp
và cải tiến liên tục.
Miễn phí và không cần lệ phí cấp giấy phép
- Moodle là một hệ thống quản lý học tập mã nguồn mở cho phép tạo các khóa học
trên internet hoặc website, vì vậy mà nó được cung cấp tự do miễn phí và có thể sử
dụng, chỉnh sửa, mở rộng bởi bất kì người dùng nào.
- Moodle được cung cấp theo giấy phép GNU General Public và không cần bất kì
khoản phí cấp phép nào.
Luôn luôn được cập nhật
Moodle là mã nguồn mở, có nghĩa là nó liên tục được xem xét và cải tiến cho phù
hợp với nhu cầu hiện tại của người dùng và phát triển trong tương lai.
Moodle hỗ trợ đa ngôn ngữ
Khả năng đa ngôn ngữ của Moodle đảm bảo bạn sẽ không có những hạn chế về ngôn
ngữ khi tham gia môi trường học tập trực tuyến. Các cộng đồng Moodle đã bắt đầu dịch
Moodle ra hơn 120 ngôn ngữ. Người dùng có thể dễ dàng định vị site Moodle của họ,
bên cạnh đó cũng có rất nhiều tài nguyên, các tài liệu hỗ trợ và thảo luận cộng
đồng trong các ngôn ngữ khác nhau giúp người dùng tiếp cận rất dễ dàng.
Tất cả đều năm trong chỉ một nền tảng học tập
- Moodle cung cấp bộ công cụ linh hoạt nhất nhằm hỗ trợ cho việc học tập trực
tuyến. Cấu hình Moodle có thể vô hiệu hoặc cho phép tính năng cốt lõi, dễ dàng tích
hợp tất cả mọi thứ cần thiết cho một khóa học đầy đủ tính năng, bao gồm diễn đàn,
wiki, chat và blog.
- Bạn có thể dùng Moodle với các database mã nguồn mở như MySQL hoặc
PostgreSQL. Phiên bản 1.7 sẽ hỗ trợ thêm các database thương mại như Oracle,
Microsoft SQL, do đó các bạn sẽ có thêm nhiều cơ hội lựa chọn.
66
Rất linh hoạt và tùy biến hoàn toàn
Bởi vì nó là mã nguồn mở, Moodle có thể được tùy chỉnh trong bất kỳ cách nào sao
cho phù hợp với nhu cầu cá nhân, cho phép các nhà phát triển tạo ra các plugin và tích
hợp các ứng dụng bên ngoài vào. Bạn có thể mở rộng tính năng vô tận của Moodle bằng
cách sử dụng các plugin tự do có sẵn và các add-ons.
Khả năng mở rộng
Moodle phát triển dựa trên PHP, nên nó có thể mở rộng từ một lớp học nhỏ có vài
học sinh đến các trường đại học lớn trên 50 000 sinh viên (như Open Technique, Open
university of UK, Athabasca University), đến hàng triệu người dùng. Bởi vì tính linh
hoạt và khả năng mở rộng này, Moodle có thể tùy biến và thích nghi ở tất cả các lĩnh
vực giáo dục, kinh doanh, phi lợi nhuận, chính phủ, và cộng đồng.
Mạnh mẽ, an toàn và miễn phí
Moodle cam kết bảo vệ an toàn dữ liệu và sự riêng tư của người dùng, vì hệ thống
này được kiểm soát an ninh liên tục, được cập nhật và thực hiện các quy trình và phát
triển, giúp ngăn cản việc truy cập trái phép, mất dữ liệu và sử dụng sai. Moodle còn có
thể dễ dàng triển khai trên cloud an toàn hoặc server nhằm đơn giản hóa việc kiểm soát
hơn.
Sử dụng bất cứ lúc nào, bất cứ nơi nào, trên bất kỳ thiết bị
Moodle dựa trên web nên có thể được truy cập từ bất cứ nơi nào vào mọi thời điểm
trên thế giới. Có thể là pc, laptop, smartphone, Tablet,… giao diện của Moodle có
thể tương thích với khá nhiều trình duyệt, đồng thời nội dung trên nền tảng Moodle
cũng rất nhất quán trên các trình duyệt khác nhau của mọi thiết bị khác nhau.
Nguồn lực luôn có sẵn
Tài liệu hướng dẫn và sử dụng moodle hỗ trợ nhiều ngôn ngữ, nội dung và các khóa
học, hàng trăm plugin và tiện ích được chia sẻ bởi người dùng Moodle trên toàn thế giới
đều miễn phí và luôn sẵn sàng cho bạn tiếp cận bất cứ lúc nào.
Được hỗ trợ bởi một cộng đồng mạnh mẽ
67
Được điều phối bởi Moodle HQ, một công ty Úc với 30 nhà phát triển và được tài
trợ bởi một mạng lưới với hơn 60 công ty dịch vụ Moodle đối tác trên toàn thế giới,
chính vì vậy Moodle hiện là phần mềm được sử dụng rộng rãi với nhiều tính năng tuyệt
vời. Điều này giúp cho Moodle luôn nhanh chóng được sửa lỗi và cải tiến, nâng
cấp phiên bản mới sau mỗi 6 tháng.
68
Chương 3. Xây dựng ứng dụng mã nguồn mở
3.1. Giới thiệu 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.
69
Ứng dụng:
Hình 3.2: Trang chủ mặc định sau khi cài đặt Joomla! 1.0.11
Lịch sử
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.
70
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.
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. 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 viết:
“ "...Chúng tôi cho rằng tương lai của Mambo nên được quản lý, điều chỉnh bởi
những yêu cầu của người sử dụng và khả năng của những nhà phát triển. Trong
khi đó, Quỹ tài trợ Mambo lại được thiết kế nhằm trao quyền điều khiển cho
Miro, một thiết kế ngăn cản sự hợp tác giữa Quỹ tài trợ và cộng đồng..." ”
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 chưa được đặt tên của họ. 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. Người đứng
đầu dự án chính là Andrew Eddie, còn được biết đến với tên gọi "Sếp trưởng"
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.
71
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.0.
3.1.1. Cài đặt Joomla
Cần những gì để tạo Website cài đặt bằng Joomla
1. Bộ cài đặt Joomla. Bạn có thể download bộ mã nguồn Joomla tại đây.
2. Phần mềm tạo Webserver như: Xampp, Vertrigo, Wampp… nếu cài đặt trên
Localhost
3. Hosting Linux nếu bạn muốn cài đặt online trên mạng Internet để làm blog cá nhân,
trang bán hàng,…
72
Hình 3.3a: Cài đặt Joomla
2 – Bước kiểm tra trước khi cài đặt, Joomla sẽ tự động kiểm tra các thành phần hỗ trợ
của webserver cho Joomla. Chọn Tiếp theo.
3 – Bước Giấy phép GNU General Public để tham khảo thêm giấy phép hoạt động của
Joomla. Tiếp theo.
73
Hình 3.3c: Cài đặt Joomla
74
- Password: để trống
- Database Name: Tên mà bạn đã tạo ra trong Localhost/Phpmyadmin
FTP là một giao thức truyền file có thể được sử dụng để upload và quản lí các file trong
Joomla!. Tuy nhiên, chức năng này là không cần thiết nếu Joomla! được cài đặt tại máy
tính các nhân với XAMPP. Nhưng nếu Joomla được cài đặt trên một server từ một nhà
cung cấp, thì ta sẽ có thể nhập vào các dữ liệu mà nhà cung cấp đó gửi cho tại phần cấu
hình FTP này.
Chọn Tiếp theo.
75
Hình 3.3f: Cài đặt Joomla
76
Hình 3.3g: Cài đặt Joomla
Đây là bước cài đặt cuối cùng. Click Remove installation folder để tiếp tục để kết thúc
quá trình thực hiện.
77
3.1.2. Quản trị Joomla
Hướng dẫn sử dụng Joomla! – Tạo website
Với Joomla, bạn sẽ có rất nhiều lựa chọn về cách cấu trúc trang web và quản lý nội
dung. Trong bài viết này, bạn sẽ được hướng dẫn sử dụng Joomla để quản lý nội dung dễ
dàng và hiệu quả.
1. Thêm bài viết
Hãy bắt đầu với những điều cơ bản. Từ trang quản trị, bấm vào nút Content, rê chuột
qua tùy chọn quản lý bài viết và nhấp vào Add new article. Một trình soạn thảo sẽ bật lên.
Nó có thể được sử dụng để định dạng và thêm văn bản vào bài viết của bạn. Bạn cũng có
thể thêm hình ảnh hoặc liên kết ở đây.
Một khi bạn đã hoàn thành bài viết, nhấn nút Save để xuất bản.
78
Hình 3.4a: Quản trị Joomla
Một khi bài viết đã được tạo ra, nó sẽ xuất hiện trong phần Latest Articles. Nếu bạn
muốn liên kết nó với trình đơn chính của trang web, hãy làm theo các bước sau:
1. Bấm vào tab Menu
2. Rê chuột tới Main Menu, chọn vào Add new menu item
3. Nhập vào phần tiêu đề cho menu. Ví dụ: My Article
4. Chọn loại menu, do đây là một dạng bài viết nên chọn vào Articles
5. Do cần chọn bài biết mới thêm vào, hãy bấm Single Article
6. Bấm Select ở bài viết cần thêm
79
7. Chọn Save để lưu lại
Như vậy là bạn đã thực hiện thêm bài viết vừa tạo vào menu chính trên website.
80
Có rất nhiều các component được tìm thấy ở menu Components, cách sử dụng tương
tự như trên. Bạn sẽ có thể thiết lập chúng chỉ trong vài cú click chuột.
81
Lưu ý: cũng giống như articles, các components của Joomla cũng có thể sắp xếp theo
category. Tuy nhiên, có một sự khác biệt giữa article và component là khi bạn chọn menu
cho bất kỳ component nào, bạn sẽ được đưa đến trình quản lý category cho component
được chỉ định. Tại đây, để thêm mới bạn chì cần bấm vào nút New. Mặc dù cách đi đến
khác nhau nhưng tùy chọn tạo mới category là tương tự.
Bước đầu tiên là đánh dấu các articles (bài viết) là nổi bật. Điều này rất dễ thực hiện,
chỉ cần vào Content và sau đó nhấp vào Articles. Danh sách các bài viết (articles) trên
trang web của bạn sẽ được hiển thị ở đây. Bạn sẽ nhận thấy rằng có một ngôi sao bên cạnh
mọi bài viết trong danh sách. Tất cả những gì bạn phải làm để làm một bài viết nổi bật là
nhấp vào ngôi sao bên cạnh bài viết đó. Ngôi sao nên chuyển sang màu vàng làm cho bài
báo của bạn trở nên nổi bật.
Để hiển thị các bài viết nổi bật trên trang được liên kết trong menu, hãy thực hiện theo
các bước sau:
1. Tạo một menu mới bằng cách vào Menus > Main Menu
2. Bấm vào Add New Menu
3. Bấm Select để chọn loại menu
82
4. Tại mục chọn loại menu, bấm vào articles và chọn vào mục bài viết nổi bật
5. Đánh tên menu, ví dụ như: Featured Articles
6. Bấm Save để thực hiện
1. Đầu tiên, bạn cần tạo mới một trang liên hệ. Vào Components, chọn Contacts và sau
đó bám chọn New
2. Thêm tên, thông tin liên hệ cho form của bạn. Nếu bạn muốn thêm các miêu tả, hảy
sử dụng tab Miscellaneous Information
3. Khi đã thực hiện xong, bấm Done để lưu lại.
83
Để bật form liên hệ này, bạn chỉ cần thêm nó vào Menu, việc thực hiện tương tự như
thêm article mới vào menu.
6. Dùng Banner
Banners component có thể dùng để quản lý hình ảnh hoặc HTML banners. Các bước
thực hiện như sau:
1. Đầu tiên, chúng ta cần tạo một banner. Vào Components > Banners > Banners
2. Bấm vào nút New ở phía trên bên trái.
3. Ban sẽ cần chọn tên banner, chúng tôi khuyên bạn nên đặt tên có ý nghĩa cụ thể để
dễ dàng sắp xếp sau này.
4. Tải lên hình ảnh của bạn (có thể tùy chọn đặt thông số chiều cao, chiều rộng)
5. Khi hoàn tất, bấm Save để lưu lại
6. Bây giờ, để hiện thì banner này, bạn cần xuất bản nó dưới dạng một module mới.
7. Vào Extensions > Module Manager, bấn New
8. Một danh sách các module sẽ xuất hiện, chọn vào Banners
9. Chọn tiêu đề và vị trí cho module mới. Bấm Save khi đã thực hiện hoàn tất.
Ví dụ: chúng tôi thêm một banner hình mèo con ở phần footer của Joomla như hình sau
84
Hình 3.4f: Quản trị Joomla
85
Bạn cũng có thể thực hiện cài đặt thủ công các phần mở rộng bằng cách:
1. Tải file file nén .zip chứa phần mở rộng từ thư viện trực tuyến của Joomla.
2. Chọn Upload Package File ở mục Extensions
3. Tải lên và cài đặt.
Chúng tôi giới thiệu một số phần mở rộng cần thiết cho mọi website Joomla:
1. ProFiles: trình quản lý file tiện dụng, hữu ích. Nó tiện lợi hơn so với trình FTP mặc
định.
2. Google Maps by Reumer: sử dụng để hiển thị bản đồ trên website của bạn.
3. AllVideos: cho phép nhúng các đoạn video (có thể trên host của bạn hoặc các
website về video như YouTube,…) vào nội dung website.
4. Akeeba backup: sử dụng để tạo bản sao lưu cho website của bạn.
86
8. Cài đặt Joomla Templates
Themes và templates là những phần làm cho các trang web đẹp hơn, dễ chịu hơn và
thân thiện với người dùng. Chọn đúng themes, templates hoặc giải pháp thiết kế là một
điều then chốt cho chức năng và giao diện của trang web của bạn vì vậy hãy suy nghĩ thật
kỹ để đưa ra quyết định.
Joomla cũng có nhiều templates miễn phí và trả phí sẵn có trên mạng nhưng con số này
ít hơn đáng kể so với WordPress hoặc Drupal.
Việc cài đặt templates cho Joomla cũng được thực hiện rát dễ dạng tương tự như các
phần mở rộng:
1. Vào Extensions > Manage
2. Chọn vào Upload Package File
3. Bấm chọn file nén dạng .zip chứa templates để thực hiện
4. Sau khi quá trình tải lên hoàn tất, vào mục Extensions > Templates
5. Bấm chọn hình ngôi sao ở templates bạn muốn bật.
87
3.2. Giới thiệu Wordpress
WordPress là một hệ thống xuất bản blog viết bằng ngôn ngữ lập trình PHP và sử
dụng MySQL database (cơ sở dữ liệu MySQL). WordPress là hậu duệ chính thức
của b2/cafelog, được phát triển bởi Michel Valdrighi. Cái tên WordPress được đề xuất bởi
Christine Selleck, một người bạn của nhà phát triển chính Matt Mullenweg.
Phiên bản mới nhất của WordPress là phiên bản 5.2, phát hành ngày 07 tháng 05 năm
2019. Nó được phát hành dưới Giấy phép Tài liệu Tự do GNU
WordPress được biết đến như một CMS miễn phí nhưng tốt, dễ sử dụng và phổ biến
nhất trên thế giới. Các so sánh đều cho thấy người dùng sử dụng CMS này cho việc lập các
trang web cá nhân đến các trang báo điện tử đồ sộ nhất như CNN, Dow Jones, Wall Street
Journal... sử dụng WordPress.
Thống kê năm 2019 cho thấy có đến xấp xỉ 33.8% các trang web nằm trong top 10 triệu
trang web hàng đầu thế giới đang sử dụng WordPress.
88
Lịch sử
b2/cafelog, thường được biết đến với cái tên đơn giản hơn là b2 hay cafelog là tiền thân
của WordPress. b2/cafelog theo ước lượng đã được sử dụng ở khoảng 2000 blog trong
tháng 5 năm 2003. Nó cũng được viết bằng ngôn ngữ lập trình PHP để dùng với MySQL
bởi Michel Valdrighi, người đã trở thành nhà phát triển chính của WordPress hiện nay.
Mặc dù WordPress là hậu duệ chính thức nhưng một dự án khác, b2evolution, cũng đang
được song song phát triển.
Vào năm 2004, thời hạn cấp phép của gói sản phẩm cạnh tranh Movable Type bị thay
đổi bởi Six Apart, và rất nhiều người dùng của nó chuyển sang sử dụng WordPress, tạo nên
một bước ngoặt lớn trong sự phát triển và phổ biến của WordPress.
Năm 2007, WordPress giành giải thưởng Packt Open Source CMS. Năm 2009.
WordPress dẫn đầu về mã nguồn CMS tốt nhất.
Vào ngày 06 tháng 12 năm 2018, WordPress ra mắt phiên bản 5.0 với cải tiến lớn, giới
thiệu Trình soạn thảo block mang tên Gutenberg giúp tùy chỉnh bố cục bài viết phong phú
và phức tạp hơn. Có nhiều cuộc tranh cãi về sự ra mắt của Gutenberg, bao gồm cả phong
trào tách riêng đến từ nhiều lập trình viên không muốn sử dụng tính năng này.
90
3.2.1. Cài đặt Wordpress
Bước 1: Cài đặt webserver XAMPP. Bạn có thể tham khảo bài viết hướng dẫn cài đặt
XAMPP.
XAMPP là một phần mềm webserver để chạy các website viết bằng PHP. Ngoài
XAMPP bạn có một số lựa chọn khác như WAMPP server hay AppServ hoặc bạn cũng có
thể cài đặt riêng các phần mềm Apache +MySQL + PHP(thường sử dụng trong Linux và
được gọi là LAMP). Bạn có thể tham khảo thêm bài viết cách cài đặt LAMP
Bước 2: Bạn download Worpdress tại http://wordpress.org/latest.zip. Sau khi bạn giải
nén ra sẽ được một thư mục mang tên wordpress bạn có thể đổi tên sang bất kỳ tên gì
miễn là tên của bạn không chứa khoảng trắng (bạn có thể thay khoảng trắng bằng _). Tiếp
theo bạn copy thư mục này vào trong XAMPP/htdocs (ở đây đường dẫn của tôi là D:\
XAMPP\htdocs)
91
Bước 3: Tạo cơ sở dữ liệu (CSDL). Bạn truy cập vào đường
dẫn http://localhost/phpmyadmin/ và nhấn vào tab Databases để tạo CSDL như hình bên
dưới. Bảng mã của CSDL bạn chọn là utf8_general_ci để có thể sử dụng được tiếng Việt
trên website (ci là case insensitive - CSDL không phân biệt chữ hoa và chữ thường).
92
Hình 3.6c: Cài đặt Wordpress
93
Hình 3.6d: Cài đặt Wordpress
Tiếp theo bạn nhập các thông tin kết nối đến CSDL gồm Tên CSDL / Username truy
cập CSDL/ Mật khẩu của tài khoản truy cập CSDL / tên CSDL bạn vừa tạo lúc nãy. Table
prefix bạn có thể gõ các ký tự bất kỳ. Ví dụ: ecode_ đây là các ký tự sẽ thêm vào đầu tên
bảng trong CSDL để tăng thêm tính bảo mật cho CSDL.
94
Hình 3.6e: Cài đặt Wordpress
Nếu như các thông tin bạn nhập vào đúng sau khi bấm submit chúng ta sẽ thấy trang
như bên dưới.
95
Bạn bấm vào Run the install để cài đặt. Ở màn hình tiếp theo bạn sẽ cần phải nhập thêm
các thông tin gồm tên website, username, mật khẩu quản trị, email khôi phục mật quản trị.
Sau khi Wordpress tự động cài đặt xong chúng ta sẽ được một trang giống như thế này.
(bạn truy cập vào http://localhost/folder_chua_wordpress để xem trang nhé).
96
Hình 3.6h: Cài đặt Wordpress
97
3.2.2. Quản trị Wordpress
1. Đăng nhập quản trị
Bước 1: Đăng nhập vào hệ thống quản trị website.
Từ thanh địa chỉ của trình duyệt gõ http://localhost/tên trang web/wp-admin chọn <
Enter > màn hình đăng nhập sẽ xuất hiện
Bước 2: Sau khi nhập đầy đủ các thông tin kick đăng nhập màn hình giao diện của quản
trị sẽ hiển thị như sau :
98
Hình 3.7b: Quản trị Wordpress
99
- Gồm những phần sau:
+ Cấu hình website: mầu sắc kích hoạt thông tin trang, đoạn mã javacript..
+ cài đặt google map: vị trí, mã ký tự.. (theo giao diện thiết kế)
+ cài đặt tìm kiếm: loại trang
+ Tùy chọn chuyên mục
+ Tùy chỉnh chuyên trang chủ
+ Tin nhắn sản phẩm
* Danh sách
Hình 3.7d: Quản trị Wordpress
100
* Bảo mật
Hình 3.7e: Quản trị Wordpress
101
Hình 3.7f: Quản trị Wordpress
102
Hình 3.7g: Quản trị Wordpress
* SEO
Quản trị bài viết
Từ danh sách chức năng bên cột trái màn hình quản trị, chọn chức năng “Bài viết”, màn
hình cấu hình hệ thống xuất hiện:
- Trong mục Bài viết sẽ hiển thị tất cả các đã post, người quản trị có thể quản lý các tin
bài ở mục này
103
Đăng bài viết mới: Click vào “Viết bài mới” để đăng bài giao diện sẽ hiển thị như sau:
104
+ Keyword: Là nơi khai báo những từ khóa tìm kiếm của website được chèn vào thẻ
meta trong header
Chọn chuyên mục để cập nhật tin lên.
Sau khi nhập đầy đủ các nội dung cần thiết,chọn nút ‘ Đăng bài viết” để đăng tin.
Chuyên mục : Quản lý hệ thống các chuyên mục để cập nhật nội dung bài viết (Tạo
mới, Sửa, Xóa…) ví dụ như: Tin tức, thư viện ảnh, slide hiển thị chân trang …
Chú ý : Chuyên mục sẽ là nhóm tin dùng để thêm vào Menu trên.
Tag trang: Liệt kê các danh sách từ khóa mà người quản trị đã nhập ở các bài viết. Chức
năng này hỗ trợ cho việc quảng bá website (SEO) và tăng tính tiện lợi cho người xem tìm
kiếm nội dung các bài viết.
Category Order: Sắp xếp các chuyên mục theo ý của bạn bằng cách kéo thả.
+ Kick “ Thêm vào bài viết” để đưa ảnh vào nội dung.
+ Chọn chuyên mục “ Thư viện ảnh” phía bên phải rồi nhấn “ Đăng bài viết” đề cập
nhật ảnh vào Thư viện
105
3. Thêm hình ảnh/nhạc/video
Từ danh sách chức năng bên cột trái màn hình quản trị, chọn chức năng “Thêm hình
ảnh/nhạc/video”, màn hình cấu hình hệ thống xuất hiện:
Thư viện: Hiển thị các thông tin của ảnh/video đã cập nhật. Ở đây người quản trị có thể
tiến hành Thêm mới, Sửa hoặc Xóa các tài liệu. Ngoài ra bạn có thể xem thông tin về tài
liệu đó bằng cách bấm vào tiêu đề của tài liệu.
Thêm tập tin :
- Chọn chức năng “ Thêm tập tin” để cập nhật ảnh/video
+ Sau khi chọn tập tin tải lên, có các thông tin:
+ Tiêu đề: Tên tập tin (có thể thay thế được).
+ Văn bản thay thế: Văn bản này sẽ hiển thị trong trường hợp không thể truy xuất
được tới ảnh hoặc ảnh không tồn tại thực tế.
+ Chú thích:
+ Mô tả: Nội dung của ảnh/video dạng text
+ Đến tập tin gốc: Hiển thị đường dẫn upload file.
- Chọn “ Lưu các thay đổi ” để thêm mới một ảnh/video.
106
Hình 3.7l: Quản trị Wordpress
107
5. Quản trị Trang
Từ danh sách chức năng bên cột trái màn hình quản trị, chọn chức năng “Trang”, màn
hình cấu hình hệ thống xuất hiện:
108
Hình 3.7n: Quản trị Wordpress
Quản lý các phản hổi của người dùng đánh giá về bài viết,mọi ý kiến đánh giá,nhận xét
sẽ được gửi vào quản trị,người quản trị sẽ đánh giá phản hồi để đưa lên phần bình luận
ngoài trang chủ.
+ Duyệt phản hồi :
1: Chọn các ô check ở đầu các phản hồi để kích hoạt tình trạng làm việc.
2: Chọn các tác vụ để xử lý phản hồi :
Phản đối duyệt tin.
Chấp nhận để duyệt tin lên trang chủ
Mark as spam : đánh dấu là những tin spam.
Bỏ vào thùng rác : những tin không duyệt sẽ cho vào thùng rác.
3 : Lọc các phản hồi muốn xem theo điều kiện lựa chọn.
109
+ Widget: Quản lý các chức năng cột bên phải website, có thể chỉnh sửa, thêm bớt
bằng cách kéo thả.
+ Trình đơn : quản lý hệ thống menu trên của website, khi chọn sẽ hiển thị giao
diện như sau :
110
Sau khi sắp xếp các menu xong chọn “ Save menu” để lưu lại.
Hoàn tất mọi thao tác và chắc chắn rằng sẽ chọn menu,nhấn “Save menu” để hoàn tất
việc lưu menu.
+ Theme Options: Các thuộc tính dành riêng cho giao diện bạn đang dùng.
Chú ý: Nếu không hiểu rõ, bạn về chức năng này, bạn hãy để mặc định.
+ Nền: Quản lý nền của website, bạn có thể chọn màu nền hoặc ảnh nền theo ý bạn.
+ Editor: Chỉnh sửa các file giao diện một cách trực tiếp qua website.
Chú ý: Nếu không thực sự hiểu rõ về PHP, HTML, CSS… bạn không nên thay đổi các
thành phần trong này.
111
9. Quản trị cài đặt
Từ danh sách chức năng bên cột trái màn hình quản trị, chọn chức năng “Công cụ”,
màn hình cấu hình hệ thống xuất hiện:
112
Hình 3.7s: Quản trị Wordpress
Kick vào “ Bảng thông tin” để vào hệ thống quản trị Ngôn ngữ Tiếng Anh của Website.
113
3.3. Giới thiệu Nukeviet
116
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 & quản trị các nội dung củ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à phát hành sau đó 2 năm (vào năm 2016, sau hơn 20 bản thử nghiệm). NukeViet 4 sử
dụng kiến trúc và nền tảng của NukeViet 3 nhưng tiếp cận với những công nghệ web mới
nhất, mạnh dạn loại bỏ những công nghệ cũ kỹ, lạc hậu, những nền tảng đã hết chu kỳ hỗ
trợ như PHP 5.2 hoặc MySQL 5.0...
117
3.3.1. Cài đặt Nukeviet
Từng bước cấu hình và cài đặt Nukeviet để test thử trên localhost
(dùng wampserver để tạo lập localhost, tên thư mục chưa source là nukeviet, tên
database là nukeviet)
Bắt đầu quá trình cài đặt Nukeviet:
Bước 1. Lên trang chủ nukeviet (https://nukeviet.vn/), bấm tải về Nukeviet, chú ý phần
yêu cầu bắt buộc đối với máy chủ như : phiên bản PHP, MYSQL, hệ điều hành..
Bước 2. Tiếp theo vào trong mục www của wampserver tạo thư mục nukeviet (hoặc
tên tùy thích). Giải nén và copy bộ source nukeviet vừa tải về bỏ vào thư mục nukeviet
Bước 3. Truy cập phpmyadmin (http://localhost/phpmyadmin) tạo mới một database
có tên nukeviet (bạn có thể đặt tên theo sở thích miễn sao dễ quản lý) nhớ
chọn utf8_general_ci để tránh lỗi font unicode.
Bước 4. Nhập trên trình duyệt địa chỉ http://localhost/nukeviet và thực hiện các cấu
hình để cài đặt, bao gồm 7 bước cài đặt, bấm Bước kế tiếp để chuyển qua các bước cấu
hình, xem chi tiết 7 bước này như sau:
01 Lựa chọn ngôn ngữ
Có thể lựa chọn tiếng Anh hoặc tiếng Việt, bấm vào Bước kế tiếp
02 Kiểm tra việc CHMOD
118
Danh mục các file, folder được Chmod đều có kết quả Ok thì ổn, nếu báo không tương
thích thì bạn phải kiểm tra lại các cấu hình của wampserver để đảm bảo tương thích.
Yêu cầu thêm (không bắt buộc) tốt nhất là có kết quả tương thích để đảm bảo không bị
lỗi phát sinh trong quá trình sử dụng, bấm vào Bước kế tiếp
119
05 Cấu hình cơ sở dữ liệu
Nhập đầy đủ các thông tin kết nối cơ sở dữ liệu như sau:
Bấm vào Thực hiện để bắt đầu cài đặt, sẽ mất khoảng vài phút theo cấu hình máy tính
chạy nhanh hay chậm
06 Thông tin website
Nhập các thông tin theo hướng dẫn
Chú ý : Mật khẩu cần kết hợp số và chữ, yêu cầu có ký tự đặc biệt
Bấm vào Thực hiện để hoàn thành việc cài đặt
120
07 Kết thúc
Hoàn thành việc cài đặt, nếu cài đặt thành công sẽ báo như sau:
121
3.3.2. Quản trị Nukeviet
Khu vực quản trị
Đăng nhập Admin
Trước tiên bạn cần đăng nhập vào tài khoản quản trị: http://ten-mien-website/admin/
http://sitecuaban/admin/http://locninh.locninh.edu.vn/admin/
Khi bạn truy cập vào trang quản trị trong trạng thái chưa đăng nhập thì màn hình đăng
nhập hiện ra như sau:
122
Tại giao diện đăng nhập admin
Bạn cần nhập tài khoản,mật khẩu và mã bảo mật được cấp để truy cập vào khu vực
quản trị
Chú ý: khi đăng nhập vào admin trong admin có các khu vực (bao viền đỏ) ở hình dưới.
Khu vực 1: Khu vực hiện thị các chức năng
Khu vực 2: Khu vực hiển thị thông tin và điền dữ liệu
Hoặc thoát khỏi quản trị admin ngay trên trang chủ website thì bạn click vào nút
“Thoát” như hình sau:
123
Thay đổi thông tin tài khoản quản trị
Để thay đổi thông tin tài khoản quản trị bạn tiến hành theo các bước sau:
Bước 1: Bạn tiến hành click vào module Tin tức (khối menu bên trái) và hiển thị danh
sách tài khoản quản trị và tài khoản thông thường như hình sau:
Bước 2: Bạn click vào nút “Sửa” chính tài khoản quản trị của bạn như hình:
Lưu ý: Danh sách có thể có nhiều tài khoản khác: bao gồm tài khoản quản trị và tài
khoản thông thường
Xử lý khi quên mật khẩu
Khi bạn đăng nhập không thành do bạn quên mật khẩu thì bạn tiến hành click vào
“Quên mật khẩu?” như hình sau để tiến hành lấy lại mật khẩu.
124
Sau khi bạn click, website sẽ chuyển hướng bạn đến phần điền thông tin gmail và mã
chống spam để bạn lấy lại mật khẩu như hình sau:
Tại đây bạn tiến hành điền thông tin đầy đủ và gửi yêu cầu.
Bước cuối cùng là bạn vào mail để nhận thông tin mật khẩu mới và tiến hành đổi mật
khẩu để đảm bảo an toàn.
Lưu ý: Mail để lấy lại thông tin mật khẩu là mail bạn sử dụng cho tài khoản quản trị
Các lưu ý bảo mật tài khoản
125
Không nên sử dụng tài khoản quản trị tối cao cho những hoạt động thông thường (Ví dụ
đăng tin, post bài…) Thay vào đó bạn nên tạo thêm tài khoản khác để sử dụng riêng cho
nhu cầu này. Ví dụ việc tạo thêm cho mình một tài khoản Điều hành chung hoặc với quyền
thấp hơn là Người điều hành module (tất cả module) để xử lý các công việc này, đây là một
ý tưởng không tồi (đừng quên là sử dụng các mật khẩu đủ mạnh và khác nhau).
Không nên trao quá nhiều quyền không cần thiết cho một tài khoản nào đó. Chỉ cấp quyền
truy cập cho họ vào những khu vực phù hợp.
Thêm tài khoản mới
Để thực hiện chức năng này bạn nhấn vào mục Tài khoản trong khu vực 1 Sau đó nhấn
Thêm tài khoản và điền đầy đủ thông tin.
126
Phân quyền
Để thực hiện chức năng này bạn nhấn vào mục Tài khoản trong khu vực 1
127
Sau đó nhấn
Sau đó nhấn
128
Quản lý quyền của các tài khoản
129
Modules Giới thiệu
Để thực hiện chức năng này bạn nhấn vào mục “Giới thiệu” trong khu vực 1
Sau đó nhấn: “Thêm bài mới”
130
Quản trị Modules tin tức
Để thực hiện chức năng này bạn nhấn vào mục tin tức trong khu vực 1 ở hình trên bạn sẽ
thấy các chức năng của modules này:
Sauk khi bạn click vào chức năng này thì hệ thống sẽ đẩy chức năng này lên vị trí trên
đầuđể tiện dùng các chức năng con của modules.
131
Quản lý chuyên mục tin tức (chủ đề)
Tại thanh chức năng con của modules tin tức (Ảnh trên) Bạn nhấn vào quản lý chuyên
mục:
132
Thêm chuyên mục
Tại phần quản lý chuyên mục bạn kéo thanh cuộn xuống dưới phần: như
hình trên sau đó điền đầy đủ thông tin:
133
Khi điền đủ thông tin rồi bạn nhấn để hoàn thành.
mục:
Sau đó bạn cần thao tác ở khu vực 2 . Bạn điền đầy đủ thông tin rồi nhấn:
134
135
Xem danh sách bài viết (có tìm kiếm nhanh), sửa và xóa bài viết
Để sửa bài viếtbạn nhấn vào nút sửa bên trên và sửa lại thông tin cần sửa rồi nhấn
136
Quản lý nhóm tin
Để thực hiện quản lý bình luận bạn nhấn vào “Quản lý bình luận” trong khu vực 1
Tại đây bạn tiến hành bật tắt hoặc xóa bình luận nếu bạn không cho nó còn trên hệ thống
Cấu hình: là cấu hình tính năng quản lý bình luận cho phép module nào có tính năng này
hoặc không có tính năng này.
Module Videoclips
Bên khu vực 1 click vào Videoclips ở khu vực 1 hiển thị như hình sau:
137
+ Quản lý video-clips: Hiển thị danh sách các video đã được cập nhật trước đó. Tại đây,
người quản trị có thể cập nhật (thêm, sửa, xóa) các video thông qua các thao tác click chuột
và nhập thông tin.
138
Thêm thể loại mới
Để thực hiện việc thêm 1 thể loại bạn ấn vào “Thêm thể loại mới”
trong khu vực 1
Sau đó bạn sẽ thao tác ở khu vực 2 . Bạn cần điền đầy đủ thông tin rồi ấn
” Lưu ý :
Phần màu đỏ là bắt buộc nên bạn phải điền đầy đủ thông tin, phần màu đen là không bắt
buộc. “
Cấu Hình
Bên khu vực 1 click vào “Cấu hình” ở khu vực 1 hiển thị như hình sau:
139
Thiết lập các thông số (hoặc để mặc định) cho phần “cấu hình”. Sau khi đã thiết lập xong
Album Ảnh
Bên khu vực 1 click vào Album Ảnh ở khu vực 1 hiển thị như hình sau:
Khu vực 2 sẽ hiển thị toàn bộ album hiện đang có trên site, bạn có thể : chỉnh vị trí (thứ
tự) hiển thị, thêm ảnh cho album, thiết lập trạng thái cho album hoặc sửa, xóa album nếu
muốn .
Thêm album :
- Để thực hiện việc thêm 1 thể loại bạn ấn vào “Thêm album” trong
khu vực 1
- Sau đó bạn sẽ thao tác ở khu vực 2 . Bạn cần điền đầy đủ thông tin rồi ấn
Quản lý ảnh
140
Bên khu vực 1 click vào “Quản lý ảnh” ở khu vực 1 hiển
thị như hình sau:
Quản lý ảnh : hiển thị danh sách hình ảnh đã được cập nhập trước đó. Tại đây, người quản
trị có thể cập nhật (tên, mô tả, xóa) các hình ảnh thông qua các thao tác click chuột và
nhập thông tin. Ngoài ra người quản trị còn có thể xóa cùng 1 lúc nhiều ảnh bằng cách
đánh dấu vào ô trống bên tay trái của ảnh sau đó ở phần dưới cùng của các hình ảnh
Chọn xóa ảnh, một hộp thoại sẽ hiển thị để xác nhận là bạn có muốn xóa những bức ảnh
được đánh dấu trước đó hay không -> sau khi xác nhận, tất cả những hình ảnh mà bạn đánh
dấu sẽ bị xóa đi.
Thêm ảnh
Bên khu vực 1 click vào “Thêm ảnh” ở khu vực 1 hiển thị
như hình sau:
141
Thêm ảnh : Để có thể thêm ảnh người quản trị có thể kéo thả trực tiếp ảnh từ máy tính vào
khung hình ảnh hoặc ấn vào nút thêm ảnh . Một cửa sổ sẽ được mở ra,
người quản trị tìm tới vị trí để ảnh và lựa chọn hình ảnh để tải lên
(quản trị cũng có thể loại bỏ ảnh nếu muốn) và ấn bắt đầu để hoàn tất quá
trình tải lên của ảnh. Sau khi tải lên hoàn tất, bạn ấn vào “tiếp tục” để chuyển
sang bước tiếp theo. Bạn điền thông tin cho những bức ảnh vừa tải và ấn “lưu lại”
142
Cuối cùng, người quản trị lựa chọn album cho những hình ảnh vừa tải lên
Hoặc hủy bỏ toàn bộ ảnh vừa tải bằng cách đánh dấu vào ô
Cấu hình
Bên khu vực 1 click vào “Cấu hình module” ở khu vực 1
hiển thị như hình sau:
143
+ Cấu hình module : Hiển thị thông tin về kích thước ảnh bìa cho album, kích thước ảnh
hiển thị ngoài site, số album và ảnh được hiển thị trên 1 hàng, số hàng mà album và ảnh có
thể hiển thị…
144
Cách thể hiện trên trang chủ : có 2 cách thể hiện là hiện thị theo album hoặc hiển thị ảnh
trong album
Cuối cùng bạn ấn “lưu lại” để xác nhận cấu hình mới cho album ảnh.
Module Menu
Bên khu vực 1 click vào Menu Site ở khu vực 2 hiển thị như hình sau:
Khu vực 2 sẽ hiển thị toàn bộ khối menu hiện đang có trên site, bạn có thể sửa, xóa khối
menu nếu muốn.
Thêm khối menu
Bên khu vực 1 click vào “Thêm khối menu” ở khu vực 2
hiển thị như hình sau:
145
Sau khi đã đặt tên cho khối menu cùng với thành phần của khối menu đó, bạn ấn vào “lưu”
Khu vực 2 sẽ hiển thị toàn bộ “thành phần (mục)” hiện đang của khối menu đó, bạn có
thể : chỉnh vị trí (thứ tự) hiển thị, sửa, xóa “thành phần (mục)” nếu muốn .
146
Ngoài ra bạn có thể thêm thành phần cho khối menu bằng cách kéo xuống phía dưới :
Sau khi đã điền đầy đủ thông tin (màu đỏ là bắt buộc, màu đen là tùy chỉnh có thể hoặc giữ
nguyên) bạn ấn vào “lưu” để hoàn tất việc thêm 1 thành phần mới cho
menu.
Trong trường hợp quản trị muốn thêm mục con ( menu con ) của mục
147
Thông thường khi lựa chọn thành phần của khối menu thì các menu con sẽ được hiển thị
theo mục được chọn. Trường hợp này quản trị sẽ áp dụng như hướng dẫn phía trên “Tùy
chỉnh thành phần (mục) cho khối menu”.
Thăm dò ý kiến
Bên khu vực 1 click vào “Thăm dò ý kiến” ở khu vực 2 hiển thị như hình sau:
Khu vực 2 sẽ hiển thị toàn bộ các tiêu đề thăm dò hiện đang có trên site, bạn có thể sửa,
xóa nếu muốn.
Thêm thăm dò :
Bên khu vực 1 click vào “Thêm thăm dò” ở khu vực 2
hiển thị như hình sau:
148
Sau khi đã hoàn tất việc điền thông tin, bạn ấn vào lưu thay đổi để hoàn tất việc thêm thăm
dò.
Module Liên hệ (contact)
Bên khu vực 1 click vào “Liên hệ” ở khu vực 2 hiển thị như hình sau:
Khu vực 2 sẽ hiển thị toàn bộ các liên hệ hiện đang có , bạn có thể xóa nếu muốn.
Các bộ phận
Bên khu vực 1 click vào “Các bộ phận” ở khu vực 2 hiển
thị như hình sau:
Quản trị có thể sửa hoặc xóa bất kỳ bộ phận nào được hiển thị trong site cũng như lựa chọn
trạng thái cho từng bộ phận
Thêm bộ phận:
Bên khu vực 2 click vào “Thêm bộ phận” ở khu vực 2 hiển thị như hình
sau:
149
Phía dưới cùng là danh sách liệt kê các admin có trong bộ phận đó. Sau khi đã hoàn tất
việc điền thông tin cho bộ phận, bạn ấn vào “thực hiện” để hoàn tất quá trình thêm 1 bộ
phận.
Nội dung thông báo :
150
Module Cơ cấu tổ chức
Bên khu vực 1 click vào “Cơ cấu tổ chức” ở khu vực 2 hiển thị như hình sau:
151
152
Sau khi đã điền đầy đủ thông tin (màu đỏ là bắt buộc, màu đen là tùy chỉnh có thể hoặc giữ
nguyên) bạn ấn vào “Ghi lại nội dung” để hoàn tất việc thêm 1 tổ chức mới.
Thêm nhân sự:
Nhấn vào nút Thêm nhân sự như hình trên khi đó bên khu vực 2 sẽ hiện ra:
153
154
Sau khi đã điền đầy đủ thông tin (màu đỏ là bắt buộc, màu đen là tùy chỉnh có thể hoặc giữ
nguyên) bạn ấn vào “Ghi lại nội dung” để hoàn tất việc thêm 1 nhân sự mới.
Xem danh sách nhân sự tại thuộc 1 tổ chức:
Tại khu vực 1 nhấn vào nút: Cơ cấu tổ chức thì khu vực 2 sẽ hiển thị ra:
Nhấn vào link: Danh sách nhân sự (2) sẽ hiện thỉ ra danh sách nhân sự:
155
+
Đầu tiên chúng ta cần thêm người ký văn bản:
Khi đó tại phần người ký văn bản tại khu vực 1 sẽ hiển thịdanh sách:
156
Tại danh này người quản trị có thể cập nhật thông tin người ký văn bản.
Tiếp đó chúng ta cần nhập dữ liệu cho các phần: Quản lý lĩnh vực, quản lý thể loại văn
bản, quản lý cơ quan ban hành.
+ Quản lý lĩnh vực: Hiển thị danh sách các lĩnh vực. Người quản trị có thể cập nhật thông
tin các lĩnh vực tại đây.
+ Quản lý thể loại văn bản: Hiển thị danh sách các thể loại. Người quản trị có thể cập nhật
thông tin các thể loại tại đây.
+ Quản lý cơ quan ban hành: Hiển thị danh sách các cơ quan ban hành. Người quản trị có
thể cập nhật thông tin các cơ quan ban hành tại đây.
Sau khi đã điền hết các dữ liệu trên chúng ta mới bắt đầu đến phần Quản lý văn bản
Tại khu vực 1 nhấn Quản lý văn bản, khi đó tại khu vực 2 hiển thị danh sách các văn bản
đã thêm trước đó. Tại đây, người quản trị có thể cập nhật (thêm, sửa, xóa) các văn bản
thông qua các thao tác click chuột và nhập thông tin.
:
157
Giao diện thêm văn bản
158
+ Cấu hình module: Các thiết đặt hiển thị cho module
159
Tài liệu của môn học:
[1] Nguyễn Minh Hoàng (2002), Linux - Giáo trình lý thuyết và thực hành, Nxb Lao
động Xã hội.
[2] Diomidis Spinesllis (2003), The Open Source Perspective.
[3] Karl Fogel (2005) , Producing Open Source Software.
[4] Andrew M. St. Laurent (2004), Open Source and Free Software Licensing.
[5] Website: http://www.ubuntu-vn.org
[6] Website: http://www.joomla.org
[7] Website: http://www.nukeviet.vn
[8] Website: http://www.tomatocms.com
[9] Website: http://www.oss-watch.ac.uk
[10] Website: http://www.code.google.com
[11] Website: http://www.TeachingOpenSource.org
[12] Website: http://www.opensource.com.vn
[13] Website: http://www.sourceforge.net
160