Đồ án được chia làm 4 nội dung chính: Phan I: Tong quan về phần mềm nguồn mở Phần II: Giới thiệu về gói mã nguôn mở NukeViet Phần II: Thiết kế và xây dựng website “Thirong mai dién tir
Trang 1Đồ án “Tìm hiểu CMS NuKeViet, Ứng dụng xây dựng Website
Thương mại diện tử ° thực hiện trong kỳ bảo vệ đồ án là dé tài mà em rất
quan tâm vì trong xã hội phát triển ngày nay việc buôn bán qua mạng đó trở
thành vấn đề phổ biến Qua mạng mọi người có thể trao đổi, quảng bá các phẩm của mình, giúp tiết kiệm thời gian, chi phí, không giới hạn về khoảng cách địa lý, đưa mọi người xích lại gần nhau hơn Tuy đã rất cố gắng trong
việc tìm hiểu, nghiên cứu, phân tích và thiết kế trang web nhưng chắc chắn sẽ
không tránh khỏi những thiếu sót Rất mong nhận được sự đóng góp ý kiến của các thầy cô giáo và các bạn để Website ngày càng hoàn thiện hơn
Em xin chân thành cảm ơn Ban chủ nhiệm khoa CNTT cùng các thầy cô
trong bộ môn Kỹ thuật máy tính đã tạo cho em những điều kiện thuận lợi nhất
để em có thể hoàn thành đồ án tốt nghiệp của mình Đặc biệt là sự tận tình
quan tâm dìu dắt của Thầy giáo - Th§ Vữ Văn Nam đó giúp em rất nhiều trong suốt quá trình làm đồ án
Cuối cùng em xin cảm ơn gia đình, bạn bè và tập thể lớp 47E - CNTT
những người luôn bên cạnh động viên, ủng hộ em trong suốt quá trình học tập
và thực hiện đồ án
Em xin chân thành cảm ơn!
Sinh viên thực hiện
Lê Văn Vượng Nguyễn Huy Hoàng
Trang 2LOI NOI DAU Ngày nay, khái niệm phần mềm mã nguồn mở đã không còn xa lạ với
nhiều người và được ứng dụng ngày càng rộng rãi trong các tổ chức và doanh nghiệp Do sử dụng những ưu điểm của mã nguồn mở được thực hiện với chi phí thấp ngang ngửa với website giá rẻ nhưng chất lượng được đảm bảo hơn nhiều lần Đây là điểm đặc biệt mà chưa từng dịch vụ mã nguồn mở nào ở việt nam có (đa phần thiết kế website dựa trên mã nguồn mở ở Việt Nam sử dụng
mã nguồn của nước ngoài Việt hoá với hàm lượng code bổ sung thấp)
Ứng dụng phân mềm mã nguồn mở NukeViet CMS (Content
Management System) trong thiết kế Website đang được sử dụng phổ biến trên thế giới cũng như ở Việt Nam Vì vậy đồ án tốt nghiệp này em muốn giới
thiệu tới thầy cô và các bạn phần mềm mã nguồn mở này Đồng thời áp dụng
để xây dựng website “Thương mại điện tử” mình họa cho những tính năng
nổi bật của phần mềm mã nguồn mở Nuke Viet
Đồ án được chia làm 4 nội dung chính:
Phan I: Tong quan về phần mềm nguồn mở
Phần II: Giới thiệu về gói mã nguôn mở NukeViet
Phần II: Thiết kế và xây dựng website “Thirong mai dién tir”
Phần IV: Một số màn hình giao diện chính của website
Phần V : Kết luận và hướng phát triển
Trang 3PHAN I
TONG QUAN VE PHAN MEM NGUON MO
1 Giới thiệu phần mềm nguôn mở trên thế giới
Phần mềm nguồn mở (OSS — Open Source Sofware) cé lich sir phat triển
qua hàng chục năm Lợi ích của phần mềm nguồn mở có thể thấy rõ qua sự hình thành của các cộng đồng nguồn mở với các sản phẩm có giá trị cao trong thực tế và cả giá trị trong đào tạo
1.1 Sự ra đời và phát triển của phần mềm nguồn mở:
Hơn 2 thập kỉ trước, khi máy tính lần đầu tiên vươn tới mã nguồn của các
trường đại học và được truyền đi miễn phí, các nhà lập trình cho rằng, sẽ được
trả tiền cho việc lập ra chương trình chứ không phải bản thân các chương trình
đó Sự việc thay đổi khi máy tính tiến đến thế giới thương mại và các công ty bắt đầu phát triển, cấp phép cho phần mềm dựa trên nền tảng thương mại, hạn chế sự truy cập mã nguồn
Ý tưởng về công khai mã nguồn đã xuất hiện ngay ở những ngày đầu của nên Công nghệ thông tin dưới những hình thức khác nhau:
- 1940: Đã có những hoạt động chia sẻ mã nguồn khi làm việc trên máy
tính ENIAC, các hoạt động chia sẻ phần mém dùng chung, các nghiên cứu có
công bố kèm theo mã nguồn
- 1970-1980: Donal Knuth phát triển hệ xử lý văn bản nguồn mở Tex
- 1983: Richard Stallman dua ra GNU (GNU is Not Unix): Cac phan
mềm được hàng triệu người sử dụng (hệ điều hành, hệ soạn thảo văn bản ) là
tài sản văn hoá chung của nhân loại, cần được công khai mã nguồn miễn phí
và xem như phần mềm nguồn mở Công lao chính của ông là tạo ra giấy phép
nguồn mở GNU- viết tắt là GPL, chủ yếu là nhằm bảo vệ quyền cho phép bất
Nguyễn Huy Hoàng
Trang 4ky ai cũng có thể sử dụng, sửa đổi và phân phối lại mã nguồn của chương trình
gốc và các chương trình dẫn xuất
- 1984: Dự án GNU và tổ chức phần mềm tự do FSF đã thực hiện một loạt chương trình PMNM Thông qua dự án GNU của FSE, những công cụ lập trình như Emacs, GCC, GNU C++, GNU Ada, GNU Pascal, G77, F2C va
nhiều phần mềm khác đã gặt hái thành công Chính dé 4n GNU va giấy phép
mã nguồn mở GPL là nền tảng then chốt cho sự phát triển của thế giới mã nguồn mở trong đó có Linux
- 1985: MIT công bố mã nguồn mở X-Window (hệ thống giao diện cho các HDH dòng UNIX) như là thành quả của dự án phát triển phần mềm dùng
cho đào tạo
- 1991: Linus Torvalds viết phần nhân của hệ điều hành Linux và công
khai mã nguồn trên Internet Nó có thể hoạt động trên điện thoại di động cũng như những máy tính phức tạp Và phát minh của Torvalds có thể download
miễn phí Từ đó bắt đầu một phong trào rầm rộ các tình nguyện viên phát triển
Linux
- 1995: PMNM Apache Web Server 1.0 được công bố và đã được nhiều người dùng làm Web Server và tiếp tục phát triển mạnh mẽ cho đến hiện nay
- 1997: Eric Raymond viết “The Cathedral and the Bazaar” đúc kết
những thành công trong dự án phần mềm nguồn mở Fetchmail
- 1998: The Open Source Initiative - một tổ chức xúc tiến phần mềm nguồn mở miễn phí được thành lập bởi 2 nhà lập trình Eric Raymond và Bruce Perens Hai ông cho rằng, từ miễn phí nên thay bằng mở để tránh sự nhầm lẫn
Vì vậy, bằng cách đặt lại tên từ miễn phí thành phần mềm mở, Bruce Perens
và đồng nghiệp của ông hy vọng rằng những hình mẫu doanh nghiệp mới sẽ được mở rộng Netscape công bố mã nguồn Netscape Nagivator đã tạo sự cạnh
Trang 5tranh, kết quả là người dùng có lợi từ các trình duyệt nguồn mở miễn phí và trình duyệt nguồn đóng (IE)
- Từ năm 1998 đến nay: phong trào phần mềm nguồn mở đã phát triển mạnh mẽ ở nhiều nước với việc dé cao Linux
1.2 Phân mềm nguồn mở, các hệ điều hành:
- Các hệ điều hành nguồn mở dòng Linux: Red Hat, OpenLinux, Debian, ManDrake, SuSE, TurboLinux, Nirvana, Slackware
- Các hệ điều hành nguồn mở dòng BSD: FreeBSD, NetBSD, OpenBSD
1.3 Phân mềm nguồn mở, hệ quản trị CSDL:
- Hiện nay phần lớn DBMS nguồn đóng (Oracle, Informix, Sybase, DB2
v.v.) đều có các phiên bản chạy dưới Linux và Unix
- MyS§QL, PostgreSQL là các DBMS nguồn mở có thể chuyển đổi dữ liệu
với những DBMS nói trên
- Văn phòng: MS Office, Sun StartOffice, OpenOffice,
- Mail Cline: Netscape Messenger, MS Outlook, MS Internet Mail
- Trình duyét Web: MS IE, Netscape Navigator, Mozila, Opera,
- Mô phỏng Windows: Conntectix Virtual PC, Lindows, Wine,
1.6 Phân mềm nguồn mở, phần mềm server:
- Web: Apache (61,4%), MS IIS (28,5%), Sun Iplanet (2%)
- Thư điện tử: Cyrus IMAP, Sendmail, Quickmail, Fetchmail,
- Xác thực: Cistron Radius
Nguyễn Huy Hoàng
Trang 6- Cap dia chi dong: ISC DHCP
- T6 chttc danh ba: Michigan Univ, OpenLDAP
- Dich vu tén mién: ISC Bind
- Khac: Tomcat (Java servlet), Squid (proxy), proftp (FTP)
1.7 Phần mềm nguôn mở, công cụ lập trình:
- Trình dịch: Borland Kylix (C++), GNU C++, Sun JDK (Java), PHP
- Web Portal: Borland Jbuilder, IBM WebSphere Studio Application
Developer, Sun J2EE
- Windows: Microsoft Visual Studio.Net
- Soạn trang Web: Webalizel
- Phát triển ứng dụng điểm - điểm: Sun JXTA
- Chuyển đổi: Sun LinCat (Linux Compatibility Assurance Toollkit
2 Hệ phân mềm mở Apache, PHP & MySQL
2.1 Apache:
Apache hay là chương trình máy chủ HTTP là một chương trình dành cho máy chủ đối thoại qua giao thức HTTP Apache chạy trên các hệ điều hành tương tự như Unix, Microsoft Windows, Novell Netware và các hệ điều hành khác Apache đóng một vai trò quan trọng trong quá trình phát triển của mạng
web thế giới
Khi được phát hành lần đầu, Apache là chương trình máy chủ mã nguồn
mở duy nhất có khả năng cạnh tranh với chương trình máy chủ tương tự của
NÑetscape Communications Corporation Từ đó, Apache đã không ngừng tiến triển và trở thành một phần mềm có sức cạnh tranh mạnh so với các chương
trình máy chủ khác về mặt hiệu suất và tính năng phong phú Từ tháng 04/1996, Apache trở thành một chương trình máy chủ HTTP thông dụng nhất
Hơn nữa, Apache thường được dùng để so sánh với các phần mềm khác có
Trang 7chức nang tương tự Tính đến tháng 01/2007 thì Apache chiếm đến 60% thị trường các chương trình phân phối trang web
Apache được phát triển và duy trì bởi một cộng đồng mã nguồn mở dưới
sự bảo trợ của Apache Software Foundation Apache được phát hành là một
phần mềm tự do và miễn phí
Apache là một kiểu mẫu webserver rất phổ biến Giống như Linux, PHP, MySQL nó là một dự án nguồn mở Đây là nguồn mở nên bất kỳ ai có khả năng đều có thể viết chương trình mở rộng tính năng của Apache PHP hoạt động với tư cách là một phần mở rộng của Apache, là một module của
Apache Apache có tính ổn định và tốc độ cao Tuy nhiên Apache không hỗ
trợ công cụ đồ hoa trực quan Apache chỉ làm việc tốt trên Unix, nhưng cũng
có những phiên bản chạy tốt trên hệ Windows
2.2 PHP (Personal Home Page):
PHP
Được phát triển từ một sản phẩm có tên là PHP/FI do Rasmus Lerdorf tạo
ra năm 1995, ban đầu được xem như là một tập con đơn giản của các mã kịch bản Perl để theo dõi tình hình truy cập đến bản sơ yếu lý lịch của ông trên mạng Ông đã đặt tên cho bộ mã kịch bản này là “Personal Home Page Tools” Khi cần đến các chức năng rộng hơn, ông đã viết ra một bộ thực thi
bằng C lớn hơn để có thể truy vấn tới các cơ sở dữ liệu và giúp cho người sử
dụng phát triển các ứng dụng web đơn giản ông đã quyết định công bố mã nguồn của PHP/FI cho mọi người xem, sử dụng cũng như sửa các lỗi có trong
nó đồng thời cải tiến mã nguồn
PHP/FI, viét tat tir "Personal Home Page/Forms Interpreter", bao gồm
một số các chức năng cơ bản cho PHP như ta đã biết đến chúng ngày nay Nó
có các biến kiểu như Perl, thông dịch tự động các biến của form và cú pháp
Nguyễn Huy Hoàng
Trang 8HTML nhúng Cú pháp này giống nhu cua Perl, mac dù hạn chế hơn nhiều, đơn giản và có phần thiếu nhất quán
PHP 2
Năm 1997, PHP/FI 2.0, lần viết lại thứ hai của phiên bản C, đã thu hút
được hàng ngàn người sử dụng trên toàn thế giới với xấp xỉ 50.000 tên miền
đã được ghi nhận là có cài đặt nó, chiếm khoảng 1% số tên miền có trên mạng
Internet Tuy đã có tới hàng nghìn người tham gia đóng góp vào việc tu chỉnh
mã nguồn của dự án này thì vào thời đó nó vẫn chủ yếu chỉ là dự án của một
TBƯỜời
PHP/FI 2.0 được chính thức công bố vào 11/1997, sau một thời gian dài chỉ được công bố dưới dạng các bản beta Nhưng không lâu đã được thay thế bởi các bản alpha đầu tiên của PHP 3.0
PHP 3
PHP 3.0 là phiên bản đầu tiên cho thấy một hình ảnh gần gũi với các phiên bản PHP mà chúng ta được biết ngày nay Nó đã được Andi Gutmans và
Zeev Suraski tạo ra năm 1997 sau khi viết lại hoàn toàn bộ mã nguồn trước đó
Ngoài khả năng cung cấp cho người dùng cuối một cơ sở hạ tầng chặt chế dùng cho nhiều cơ sở dữ liệu, giao thức và API khác nhau, các tính năng mở
rộng của PHP 3.0 đã thu hút rất nhiều nhà phát triển tham gia và đề xuất các
mô đun mở rộng mới Các tính năng khác được giới thiệu trong PHP 3.0 gồm
có hỗ trợ cú pháp hướng đối tượng và nhiều cú pháp ngôn ngữ nhất quán khác
PHP 3.0 đã chính thức được công bố vào tháng 6/1998
Trang 9của cơ sở mã PHP Những ứng dụng như vậy đã chạy được trên PHP 3.0 dựa trên các tính năng mới và sự hỗ trợ khá nhiều các cơ sở dữ liệu và API
Với PHP 4, số nhà phát triển dùng PHP đã lên đến hàng trăm nghìn và hàng triệu site đã công bố cài đặt PHP, chiếm khoảng 20% số tên miền trên
mạng Internet
PHP 5
Cộng đồng PHP đã nhận ra những yếu kém của PHP 4 là khả năng hỗ trợ lập trình hướng đối tượng, xử lý XML, không hỗ trợ giao thức máy khách mới
cua MySQL 4.1 va 5.0, hé tro dich vu web yếu Ngày 29/06/2003, PHP 5 Beta
1 đã chính thức được công bố để cộng đồng kiểm nghiệm Phiên bản Beta 2 sau đó đã ra mắt vào tháng 10/2003
Đến ngày 21/12/2003 PHP 5 Beta 3 đã được công bố, bỏ hỗ trợ Windows
95, khả năng gọi các hàm PHP bên trong XSLT, sửa chữa nhiều lỗi và thêm
được nhiều hàm mới Ngày 13/07/2004 bản PHP 5 chính thức đã ra mắt PHP 6
Hiện nay phiên bản tiếp theo của PHP đang được phát triển, PHP 6 bản sử dung thử được download tại địa chi http://snaps.php.net Phién ban PHP 6 được kỳ vọng sé sửa được những thiếu sót của PHP ở phiên bản hiện tại như
hỗ trợ namespace, Unicode; sử dụng PDO làm API chuẩn cho việc truy cập cơ
sở đữ liệu,
2.3 MySQL:
Co sở dữ liệu MySQL đã trở thành cơ sở dữ liệu mã nguồn mở phổ biến nhất trên thế giới vì tốc độ xử lý nhanh, ổn định và dễ sử dụng Nó được sử
dụng mọi nơi ở nhiều tổ chức lớn trên thế giới để tiết kiệm thời gian và kinh
phí cho những website có dung lượng lớn, phần mềm đóng gói như Yahoo,
Google, Nokia,
Nguyễn Huy Hoàng
Trang 10MySQL không chỉ là cơ sở dữ liệu mã nguồn mở phổ biến nhất trên thế giới hiện nay mà nó là cơ sở dữ liệu được chọn cho thế hệ mới của các ứng
dụng xây dựng trên nền Linux, Apache, MySQL, PHP MySQL chạy trên hơn
20 flat form như: Linux, Windows, OS/X, AIX, Netwar MySQL có những đặc tính như:
a) Tính linh hoạt
Máy chủ cơ sở dữ liệu MySQL cung cấp đặc tính linh hoạt, có sức chứa
để xử lý các ứng dụng được nhúng sâu với dung lượng 1MB để chạy các kho
dữ liệu lên đến hàng terabytes thông tin Sự linh hoạt về flat form là một đặc
tính lớn của MySQL với tất cả các phiên bản của Linux, Unix và Windows
đang được hỗ trợ Và tính chất mã nguồn mở của MySQL cho phép sự tùy
biến hoàn toàn theo ý muốn để thêm vào các yêu cầu thích hợp cho database server
b) Tinh thuc thi cao
Kiến trúc storage-engine cho phép các chuyên gia cơ sở dữ liệu cấu hình máy chủ cơ sở dữ liệu MySQL đặc trưng cho các ứng dụng đặc thù Dù ứng dụng là một hệ thống xử lý giao dịch tốc độ cao hay Website dung lượng lớn phục vụ hàng triệu yêu cầu mỗi ngày, MySQL có thể đáp ứng khả năng xử lý của bất kì hệ thống nào Với các tiện ích tải tốc độ cao, bộ nhớ caches và các
cơ chế xử lý nâng cao khác
c) Hỗ trợ giao dịch mạnh
MySQL đưa ra một trong số những engine giao dịch cơ sở dữ liệu mạnh nhất Các đặc trưng bao gồm hỗ trợ giao dịch ACID hoàn thiện, khóa mức
dòng không hạn chế, khả năng giao dịch được phân loại, và hỗ trợ giao dịch
đa dạng mà người đọc không bao giờ gây trở ngại cho người viết và ngược lại Tính toàn vẹn của dữ liệu cũng phải được bảo đảm trong suốt quá trình server
có hiệu lực, các mức giao dịch độc lập được chuyên môn hóa
Trang 11đ) Là nơi lưu trữ Web và Data
MySQL Ia noi cho cdc website trao đổi thường xuyên vì nó có engine xử
lý tốc độ cao, khả năng chèn dữ liệu nhanh, và hỗ trợ mạnh cho các chức năng
chuyên dụng của web như tìm kiếm văn bản nhanh Những tính năng này cũng
được áp dụng cho môi trường lưu trữ dữ liệu mà MySQL tăng cường đến hàng terabyte cho các server đơn
e) Chế độ bảo mật dữ liệu cao
Vì bảo mật dữ liệu cho một công ty là công việc quan trọng nhất của các
chuyên gia về cơ sở dữ liệu, MySQL đưa ra tính năng bảo mật tuyệt đối
Trong việc xác nhận truy cập cơ sở dữ liệu, MySQL cung cấp các kỹ thuật mà chỉ có người sử dụng đã được xác nhận mới có thể truy nhập được vào server
cơ sở dữ liệu Tiện ích backup và recovery cung cấp bởi MySQL và các hãng
phần mềm cho phép backup logic và vật lý hoàn thiện cũng như recovery toàn
bộ hoặc tại một thời điểm nào đó
3 APPSEVER 2.5.9
3.1 Giới thiệu chung về Appsever :
Để xây dựng website NukeViet! trên localhost, cần phải có một server
ảo trên máy tính, Appsever là một software và cũng là một công cụ giả lập sever, hosting ngay trên PC, ngoài Appsever hiện nay còn nhiều trình giả lập
khác như EasyPHP, Xampp, Wamp, VertrigoServ
Appsever tích hợp sẵn các tính năng của Apache, MySQL, PHP và
phpMyadmin Ưu điểm của Appsever là chương trình này hoàn toàn miễn phí,
dễ sử dụng và rất nhẹ, phù hợp với các máy cấu hình trung bình, tương thích
cao và đầy đủ chức năng để chạy PHP
Tải chương trình này tai trang chu: www.appservnetwork.com
Nguyễn Huy Hoàng
Trang 123.2 Cai dit Appsever dé tao localhost :
a Các bước cài đặt
Bước 1: Chạy tập tin chương trình
Bước 2: Xuất hiện giao diện chương trình Nhắn NEXT
Bước 3: Xuất hién ban License, chon I argee Nhắn NEXT
Bước 4: Chọn đường dẫn cài đặt (mặc định 1a C:\AppSev) Nhan NEXT Bước 5: Chọn các Components, ở Appsever đã tô hợp cài đặt Apache, MySQL, PhpMyadmin Nhan NEXT
Bước 6: Điền thông tin sever
SeverName : localhost
Email: Email quản trị viên
Apache HTTP Port: 80
Nhan NEXT
Bước 7: Tên và mật khâu của MySQL
Name: Root (mức ưu tiên cao nhất)
Nhập password và confirm password
Nhấn NEXT
Bước 8: Chương trình tiến hành cài đặt
Bước 9: Hoàn tất cài đặt
Chon Start Apache va Start MySQL dé chuong trinh khởi động
Nhan FINISH
Với cài đặt mặc định:
C:\AppServ\www là địa chỉ webroot, nơi copy các file php vào đây
C:\AppServwnysql\data\ chứa CSDL MySQL, mỗi CSDL sẽ là 1 folder, dé sao lưu đữ liệu MySQL, copy folder này thành nhiều bản sao
Trang 13b Kiém tra
Mở trình duyệt web, gõ địa chỉ: "http://localhost/ "(hoặc "http://127.0.0.1") Trình duyệt sẽ hiện ra như sau:
The AppServ Open Project - 2.5.9 for Windows
BB phpMyAdmin Database Manager Version 2.10.2
2) PHP Information Version 5.2.3
About ApoServ Version 25.9 for Windows
AppServ is & merging open source software installer package for Windows includes
© Apache Web Server Version 2.2.4
© PHP Script Language Version 5.2.3
© MySQL Database Version 5.0.45
© phpMyAdmin Database Manager Version 2.10.2
® OhengeLog
© README
® AUTHORS
© COPYING
© hitpy)www AppServNetwork com
Change Languase : SG] SE4
® Easy way to build Webserver, Database Server with AppServ :›)
Hinh 1 :Hinh anh khi cai thanh công Appserver
Dé xem đầy đủ thông tin về sever vừa cài đặt, ta có thể truy cập trang
"http://localhost/phpinfo.php"
Két qua:
Nguyễn Huy Hoàng
Trang 14
System ‘Windows NT LED-HH 5.1 build 2600
Configure Command escript/nologo configure.js "-enable-snapshot-build" " with-gd=shared"
Server API Apache 2.0 Handler
Configuration File (php.ini) | CAWINDOWS
PHP API 20041225
PHP Extension 20060613
Zend Extension 220060519
Debug Build no
Thread Safety enabled
Zend Memory Manager enabled
IPV6 Support enabled
Registered PHP Streams php, file, data, http, ftp, compress.zlib
Registered Stream Socket top, udp
Transports
Registered Stream Filters conyerticonv.*, string.rot 3, string.toupper, string.tolower, string.strip_tags,
convert*, consumed, zlib.*
This program makes use of the Zend Scripting Language Engine: Powered By
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies Go
ầ
Hình 2: Hình ảnh khi đăng nhập trang phpinƒfor.php
Để đăng nhập cơ sở đữ liệu, vào trình đuyệt "localhost/phpmyadmin"
Hộp thoại xuất hiện yêu cầu nhập User Name và Password (User Name và Password nhập khi cài đặt Appsever, mặc định User Name là root)
Kết quả:
Nguyễn Huy Hoàng
Trang 15
localhost phpMyAdmin - 2.10.2
phpMyAdmin 83 Server version: 5.0.45-community-nt-log > MySQL client version: 5.0.37
2 )8)\e) 83 Server: localhost via TCP/IP e Language @:
ol > User: root@localhost English - 4
[(Databases) ~~) [l mysal charset: UTF-8 Unicode (utf8) & Theme / Style: Original 3]
Please select a database utf8_unicode_ci ge @ phpMyAdmin documentation
® Create new database @ B phpMyAdmin wiki
@ Official phpMyAdmin Homepage
Show MySQL runtime information
® show MySQL system variables @
=) Open new phpMyAdmin window
@ internet fay Rise +
Hình 3: Hình ảnh khi đăng nhập trang phpmyadmin
Nguyễn Huy Hoàng
Trang 16PHAN II GIỚI THIỆU VỀ GÓI MÃ NGUỒN MỞ NUKEVIET
1 Giới thiệu về NuKeViet
a) Khái niệm
NukeViet là một hệ quản trị nội dung (Content Management System -
CMS) cho phép bạn quản lý các cổng thông tin điện tử trên Internet Noi don
giản, NukeViet giống như một phần mềm giúp 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 1a mot phan mém ma nguồn mở, do đó việc sử dụng hoàn toàn miễn
phí, có thể tải NukeViet về bất cứ lúc nào tại website chính thức của NukeViet là nukeviet.vn 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 đễ đà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
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,
Trang 17co quan chu quan cua NukeViet là VINADES JSC - đơn vị chịu trách nhiệm
Nukeviet có cấu trúc rõ ràng như sau:
» Html (Root -thu muc géc Ban cé thé đổi tên tùy thích )
| -\ADMIN (chia cac file phuc vu viéc quan li site)
| -\CASE ( chtra cac ham chinh goi thong qua Admin file)
| -UANGUAGE (chứa các file ngôn ngữ cho khu vực Admin )
| -\LINKS (cac liên kết chính từ Menu trong Admin Control Panel )
| -MMODULE ( chứa các file quản lí từng module )
| -\BLOCKS ( chira cac file hién thi Block )
| -\IMAGES ( chtra anh cho hé thong )
| -\INCLUDES (chtra cac file dit ligu cho hệ thống )
| -\LANGUAGE ( chtra cac file ngôn ngữ cho hệ thống chính )
[ \MODULES (chứa các module của hệ thống )
| -\THEMES ( Giao dién của hệ thống )
Nguyễn Huy Hoàng
Trang 18c) Dac diém cia NuKeViet
NukeViet là hệ thống tạo dựng website viết bằng ngôn ngữ lập trình
PHP Dựa trên bộ mã nguồn PHP-Nuke, nhóm thanh niên gồm 4 người Việt
Nam đã Việt hóa rồi dần dần phát triển thành một hệ thống mới và đặt cho nó
cái tên NukeViet Nếu so sánh NukeViet với một cỗ máy thì nó phải là một cỗ
máy thông minh Chú robot thông minh ấy biết nghe và nói tiếng Việt Với NukeViet, bạn thậm chí chắng cần biết đến ngôn ngữ lập trình PHP làm chỉ, chỉ cần biết một chút Word, biết lướt Web cùng một ít về ngôn ngữ lập trình Web HTML và học thêm một tí về Internet là đủ đề có thể sử dụng, vận hành
NukeViet trơn tru Vậy bạn đã thấy hứng thú rồi chứ
Nếu bạn đã từng tạo dựng cho mình những website viết bằng HTML trên
freewebs, freewebtown hay websamba, web1000 thi ban sé thay su dung NukeViet để tạo cho mình một hệ thống Website thật thú vị không ngờ
NukeViet xây dựng trên nền ngôn ngữ lập trình PHP nên nó là hệ thống Web
“động”, có khả năng “tương tác” với người dùng nên sẽ giúp cho người truy
cập web cảm thấy thú vị, không bị nhàm chán và tất nhiên sẽ ở lại web của bạn lâu hơn NukeViet được viết sẵn và đã hoàn chỉnh nên bạn có thể sử dụng
ngay mà không cần sửa đổi gì Bên cạnh đó, NukeViet là hệ thống tạo web
mã nguồn mở nên nếu bạn biết lập trình PHP và HTML thì có thể đễ dàng can thiệp vào để tùy ý sửa đổi theo ý mình
2 Các dòng phiên bản của NuKeViet
Hién NukeViet co 3 dòng phiên bản chính:
Trang 19NukeViet 2.0 beta, NukeViet 2.0 beta 1, NukeViet 2.0 beta 2, NukeViet 2.0 Phién ban hién tai: NukeViet 3.0
Ban đầu, phần mềm này được phát triển trén nén tang PHP-Nuke Sau
đó, cùng với sự tham gia của một số thành viên (tạo thành Nhóm NukeViet, thường gọi là NukeViet Group), cuối năm 2004 NukeViet 1.0 beta 1 đã ra đời
NukeViet mau chóng được phổ biến trong giới tạo Web Việt Nam
Ngày 12-07-2006, NukeViet chính thức ra mắt phiên ban 2.0 beta 1 véi nhiều tính năng hơn hắn NukeViet 1.0, chủ yếu tập trung vào Module News Phiên bản beta 2 được phát hành ngay sau đó Dưới sự hậu thuẫn về tài chính
của công ty Án Tượng Nét, NukeViet càng được nhiều người biết đến hơn
Ngày 22-03-2010, NukeViet chính thức công bố dự án NukeViet 3 - xây
dựng một bộ code mới cho NukeViet Bản thử nghiệm đầu tiên - NukeViet 3
Closebeta - được phát hành hạn chế lúc 21h ngày 31-05-2010 đã thu hút lượng lớn người truy cập
3 An ninh, bảo mật
NukeViet 3 được thiết kế để nhận biết và chống các truy cập bất hợp pháp vào hệ thống cũng như gửi các dữ liệu có hại lên hệ thống
- Dữ liệu gửi qua hệ thống được kiểm duyệt bằng bộ lọc an ninh nhằm
ngăn chặn các dữ liệu có khả năng tấn công vào hệ thống
- NukeViet có khả năng ngăn chặn, theo dõi và kiểm soát truy cập vào
hệ thống của tất cả các máy chủ tìm kiếm như yahoo và google hay bất cứ
máy chủ tìm kiếm nào khác
- Hệ thống có khả năng chống Spam bằng Captcha, chống lụt đữ liệu
bằng cách giới hạn thời gian gửi đữ liệu
- Hệ thống cho phép theo dõi, ghi nhận các thông số của máy tính truy
cập đến site như: Hệ điều hành, trình duyệt, quốc gia, các liên kết đến site
Nguyễn Huy Hoàng
Trang 20(referer) dé tir đó có thê kip thời ngăn ngừa các nguy cơ tắn công bằng các hình thức như: Kiểm tra và chặn các máy tình dùng proxy, chặn IP truy cập
- Hệ thống sẽ ghi nhận truy cập giúp người quản trị cũng như các thành viên dễ dàng phát hiện ra những đăng nhập bắt hợp pháp từ lần đăng nhập trước đó
- Hệ thống có thể phát hiện các bản nâng cấp mới của phần mềm để nhắc nhở người sử dụng nâng cấp và sửa chữa các lỗi (nếu có)
4 Các khái niệm cơ bản
4.1 Theme là gì :
Theme: Theme hay còn gọi là Skin là các giao diện khác nhau cho
website Đây là giải pháp lí tưởng giúp cho việc thay đổi giao diện website trở
nên đễ dàng Nhờ thiết kế mỹ thuật của tác giả tạo ra theme mà website có thể
được trình bày dưới các bố cục khác nhau Điều này sẽ giúp cho website
không bị nhàm chán
4.2 Các thành phần mở rộng :
Module (còn gọi là Addons hay Plugins — tính năng tăng cường cho hệ thống) là những phần mở rộng của hệ thống Nukeviet Mỗi module sẽ đảm nhận một chức năng riêng cho hệ thống Nếu coi Nukeviet là một tống công
ty hoạt động theo mô hình công ty mẹ - công ty con thì các module chính là
các công ty con, chúng có khả năng hoạt động và hoạch toán độc lập nhưng
chịu sự chỉ đạo của công ty mẹ Phần chính của một module được đặt trong thư mục Modules (trong thư mục gốc của Nukeviet) phần điều hành Module (nếu có ) được đặt trong thư mục admin/modules/
4.3 Cách cài đặt Module :
Bạn hãy vào địa chi http://Nukeviet-download.com/ noi day có rất nhiều module va theme cho Nukeviet
Trang 21Các bước cài đặt Module:
Đây là trình tự tổng quát dé cài đặt một Module nói chung ,mỗi Module
cụ thể sẽ có hướng dẫn cài đặt riêng đi kèm file cài đặt
Bước 1: Upload các file của Module lên web-hosting (nếu cai trén host)
hoặc copy vào thư mục được yêu cầu (khi cài trên PC)
Tùy từng Module sẽ có cách cài đặt khác nhau Tuy nhiên về cơ bản,
phần chính của các Module sẽ được chứa trong thư mục con của thư mục
Modules ( Thư mục Modules nằm trong thư mục gốc của vuonghoang ) Thông thường, tác giả tạo ra Module sẽ thiết lập sẵn cau trúc các thư mục cho Module và bạn chỉ cần copy Module đó vào thư mục gốc là xong (xem hướng
dẫn đi kèm bộ cài đặt Module )
Bước 2: Cài đặt Cơ Sở Dữ Liệu (CSDL)
Một số Module cần có CSDL riêng để chạy, một số khác thì không Để biết Module có cần CSDL hay không bạn hãy đọc kỹ file hướng dẫn cài đặt
có trong mỗi Module
Nếu là Module cần đến cơ sở dữ liệu riêng, khi đó bạn sẽ phải cài đặt thêm Cơ Sở Dữ Liệu (CSDL) cho Module (Nếu Module không cần CSDL
riêng thì bỏ qua bước này)
Chúng ta vào phần quản lý module > chọn cài đặt tự động -> lựa chọn
tiến trình
Bước 3: Kích hoạt Module
» Bạn đăng nhập vào Admin Control Panel (viết tắt là ACP hay Admin
CP, nghĩa là "Bảng điều khiển của Người Quản trị") qua địa chi:
http://localhost/vuonghoang/admin/
» Vào mục Modules, lựa chọn "Kích hoạt" cho Module ban vwa cai
Nguyễn Huy Hoàng
Trang 22Nói chung tùy từng Module, việc cài đặt và mức độ khó, dễ có thể khác
nhau Bạn cần đọc kỹ các file “Readme.txt” hoặc “huong đan.txt” có trong
mỗi bộ cài Module
Sau khi Module được kích hoạt, nó sẽ xuất hiện trong danh sách các Module (mục “Tiện ích trên site”) Ngoài ra, bạn cũng có thể truy cập nó bằng dia chi: http://localhost/vuonghoang/admin/index.php?nv=modules tén-
module Trong đó tên-module là tên thư mục chứa module đó
5 Cai dat NukeViet
Sau khi hoàn tất quá trình cài đặt Appserv chúng ta tiến hành cài đặt NuKeViet
- Download gói cài đặt tại địa chỉ nukeviet.vn Sau khi download xong giải nén vào thư mục WWW
- Tạo database tên tùy ý Import cơ sở dữ liệu của nukeviet vào từ đường dẫn /sql/nukeviet.sql
- Mở IE lên gõ đường dẫn sau htp://localhost/vuonghoang/html (ở đây đặt tên thư mục chứa site là vuonghoang)
- Mở trình duyệt (Internet Explorer gõ địa chỉ:
http://localhost/vuonghoang/ màn hình xuất hiện:
Lựa chọn ngôn ngữ cài đặt
Chọn bước kế tiếp
Trang 23Kiếm tra máy chủ
+_ Kiểm tra vite CHMOD
“Cấu hình cơ sở dữ liệu
Thông tin website
Kigin tra Việc CHKAGSO Cu hình cơ sở ao bệ ¬ =~ eer
Me Thong tin website
Nguyễn Huy Hoàng
Trang 24Nguyễn Huy Hoàng
Trang 25Điền thông tin (Phần này để bạn đăng nhập quản trị nên bạn phải nhớ tên tài khoản ADMIN và Mật khẩu)
Cấu hình cơ sở dữ liệu
Thông tin website
Kết thúc
Hình 10:
Sau khi cài đặt xong sẽ được như sau:
Quang cae tren ma nguén Nukeviet
Nguyễn Huy Hoàng
Trang 26
Hình 12: Danh sách quản trị website
Nguyễn Huy Hoàng
Trang 27PHAN III THIET KE VA XAY DUNG WEBSITE
THUONG MAI DIEN TU
1 Vị trí và chức năng của trang website
Tiến vào thế kỷ XXI, con người bước sang một kỷ nguyên mới về công
nghệ thông tin.Xã hội ngày càng phát triển dẫn đến tư duy của con người
ngày càng được nâng lên một tầm cao mới,công nghệ thông tin cũng vậy
Cuộc sống hiện tại ngày nay được ví như cuộc sống số, tin học được ứng dụng hầu như hoàn toàn cuộc sống xã hội Trong đó có Website, nó là một công cụ
tiện ích giúp các doanh nghiệp, công ty,cá nhân Có thể quang bá hình ảnh của mình, sau đây chúng tôi muốn giới thiệu một số chức năng cũng như vị trí của trang Website thương mại điện tử:
Khi vào trang web mọi người có thể tìm được thông tin chỉ tiết về các
sản phẩm như: giá cả, chủng loại , của laptop, thiết bị văn phòng, thiết bị gia dụng, điện thoại, shop hoa Có thể truy cập để xem hình ảnh về sản phẩm và
đặt hàng online
2 Yêu cầu xây dựng hệ thống
Để thực hiện tốt vai trò, chức năng và nhiệm vụ của mình thì trang web phải đưa ra thông tin đầy đủ chỉ tiết về sản phẩm, các mặt hàng có mặt trong trang web
Trang web phải đảm bảo một số yêu cầu cần thiết của người sử dụng
như: Danh mục sản phẩm phải sắp xếp một cách tuần tự, rõ ràng, tìm kiếm một cách nhanh chóng Thư viện sản phẩm phải tương đối đầy đủ các sản phẩm mới "za /ỏ" hiện nay: Iphone 4GS, Laptop chip core 7
Song bên cạnh đó vẫn còn nhiều mặt hạn chế :
- Yêu cầu về mặt quảng bá thông tin các hoạt động còn chưa đạt yêu cầu
Nguyễn Huy Hoàng
Trang 28Tin Khuyến mại
Tin Giảm giá
-EWWŒ3 Máy Giät
-EfWZZ3 M1áy Nước Nóng
-EWW Hoa Cưới
-EƒW3 Hoa Sinh Nhật
Nguyễn Huy Hoàng
Trang 294 Cài đặt và thiết kế Website
'WEbsize thương mại điện tử
Cai theme bang cach unzip tải gói Theme tại địa chỉ :http://nukeviet.com
Chia sẻ thành công - kết nối đam mê
Nguyễn Huy Hoàng
Trang 30Mở trang quản trị bằng đường dẫn:http://localhost/nukeviet/admin
Tà khoăn Quản tị: vuonghoang | Ban d3 đăng nhập Quản ị cát đây %t phút S0 gây
© Ícaieitneme
(Quant giao điện
Thiếtlậplaout Hãy chọn gói để cài đặc: E\Theme2zip Duyệt
Hinh 15: Cai dat theme
Upload theme lén website
TX ho‡n Quần vẽ vwenghoang fond rg he Qu vị Z2 16129 gây ESGICT Chủ nhật 6862001
© | Quản giao diện
Quản lý gao iện
Hình 16: Quan lÿ giao diện Tại module Quản lý giao diện lựa chọn “Kích hoạt sử dụng theme” mới Tại đây cũng có thể xóa các theme ra khỏi hệ thống khi lựa chọn “Xóa khỏi
hệ thống”
4.2 Cài đặt gói ngôn ngữ Tiếng Việt :
- Tải gói ngôn ngữ tại địa chi: http://nukeviet.com
- Mở trang quản trị bằng đường dẫn
http://localhost/vuonghoang/admin/index.php?nv=language &op=main
Nguyễn Huy Hoàng
Trang 31Để thêm mới ngôn ngữ dữ liệu, bạn cần tạo trước ngôn ngữ giao diện,
xuất ra file và cấu hình cho phép hiển thị trong admin
Hình 18: Thiết lập ngôn ngữ Tiếng Việt
4.3 Chỉnh sửa giao diện :
Một trong những tính năng quan trọng của Nuke Viet là cho phép thay đổi vị
trí của các block Mỗi block đều định nghĩa sắn một số vị trí nhất định block
mặc định của NukeViet có rất nhiều vùng, mỗi vùng này đều được gán 1 vị trí
Nguyễn Huy Hoàng
Trang 32ầ
Sửa |IẾ Xóa | ) Bỗ ra khói nhóm
6 a VU AA , .AÂA 4
size thương mại điện tử
Khuyến Mêi Đặc Biệt Của "Shop Online”
Khuyến Mêi Đặc Biệt Của "Shop Online”
bitin iad Kuuyến WẾÌ | ' nhđn dịp thai trương “Shop Online" cửa
trấp đÍN! | năng gúi qui khâch năng chương tình khuyến mêi đặc biệt Với 1 hóa đơn thanh
toân có giâ trị trín 10 triệu vnd,, quý khâch
sẽ nhận được một điện thoại đi đông 1102 chính hêng NOKIA
‘Bang nhap thănh viín
Xin chăo: vuonghoang
Đổi mật khẩu
Tai khoản
“Shop Online" giảm giâ 20% hơn 200 mặt hăng Nhđn ưu đêi khi hòa
mạng địch vụ Intemet &
ADSL (ĩn 31/5) P
HDBank tầng 10% phí bao hiểm TCM khai trương cửa Di Sữa | # Xóa > | Ö Bồ ra khối nhóm =
hăng mới (ngăy 13/5) Hình 19 : Vị trí câc block
Do vậy có thể chuyển một bất kỳ tới 1 trong câc vị trí
- Mở menu -> Quản lý giao diĩn-> Thiĩt lap layout
Thiết lập layout:default Hêy lúa chon ~
Tin tre Laptop T.8 văn phỏng
Content leftbody-ight ~ Man letbodyright ~ Man letbodyrighi v
Detail Man leftbody-night + letbodyight + Detail Viewcat letbodyright ~ lefebody-ight > Detail Viencat leftbodyighL lefbody-right >
Search leftbody-ight ~ Search letbodyrighi ~ Search leftbody-ight +
Topic leftbody-ight > Can leftbody-tight = Can leftbodytight +
Vieweat leftbodyright ~ Order leftbodysight + order leftbody+ight +
Payment leftbody-ight ~ Payment lefebodyight >
Complete leRbodyright ~ Complete leftbody-ight + History leftbody-ight > History leftbodysight + Group Iefbodyright ~ Group leftbody-ight + Điện Tử Gia Dụng, Điện Thoại Shop Hoa
Main letbodyright + Man leRbodyrighi ~ Man bodylefrighL +
Viewcat leftbody-ight ~ Viewcat leftbody-ight ~ Viencat bodylefrighL >
Detail leftbody-ight + Detail lebodyxight ~ Detail bodylefiright ~
Search lefebody-right > Search lefebody-ight > Search body-leftright +
Cart leftbody-ight > Cart leftbodysight > Can bodylefighL +
order leftbody-ight > order leftbody-ight + order bodylefrighL ~
Payment leftbody-ight + Payment letbodyxight ~ Payment
Complete leftbody-ight + Complete leRbodyright ~ Complete
Hình 20: Câch chọn vị trí
ŠVTH: Lí Văn Vượng 31
Nguyĩn Huy Hoang
Lớp: 47E - KS CNTT