1. Trang chủ
  2. » Công Nghệ Thông Tin

MÔ TẢ KỸ THUẬT MÃ NGUỒN MỞ NUKEVIET v3.x doc

60 279 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Mô Tả Kỹ Thuật Mã Nguồn Mở NukeViet v3.x
Trường học Trường Đại Học Công Nghệ Thông Tin - Đại Học Quốc Gia Thành Phố Hồ Chí Minh
Chuyên ngành Kỹ Thuật Mã Nguồn Mở
Thể loại Tài liệu hướng dẫn kỹ thuật
Thành phố Hồ Chí Minh
Định dạng
Số trang 60
Dung lượng 1,48 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

 $language_array: Thông tin ngôn ng...  NV_DEL_ONLINE_TIME: Th i gian xóa tr ng thái online..  NV_USER_AGENT: Thông tin useragent..  NV_AUTHORS_GLOBALTABLE: Tên table authors..  NV_

Trang 1

MÔ T K THU T

MÃ NGU N M NUKEVIET v3.x

I T ng quan v c u trúc NukeViet 3

1 Các thu t ng 3

a) Template, theme: 3

b) Module: 3

c) Block: 4

d) Crontjobs: 4

2 C u trúc file và folder: 4

a) Mô t các file trong th m c g c: 5

b) Mô t các th m c: 5

II Thi t l p h th ng NukeViet: 8

1 Thi t l p các giá tr m c đ nh: 8

2 Thi t l p các nhà cung c p OpenID: 10

3 Thi t l p m t s ch c n ng b o m t: 10

a) Ch ng flood (ch ng l t d li u): 10

b) Ch ng quá t i máy ch : 11

c) Ki m tra và ch n các máy tính dùng proxy: 11

d) Ki m tra và chuy n h ng các REFERER bên ngoài đ n trang ch : 12

e) Sao l u CSDL: 12

f) Ki m tra an ninh khu v c admin: 13

III Các hàm đ c xây d ng s n, các class, các tài nguyên khác: 14

1 Các hàm đ c xây d ng trong NukeViet: 14

2 Các bi n dùng chung: 20

3 Các h ng: 24

4 Các class dùng trong l p trình NukeViet: 26

a) Các class đ c g i s n: 26

b) Các class có th ng dùng: 28

IV L p trình NukeViet 29

1 Quy c chung 29

2 Themes: 30

a) T ng quan v theme c a NukeViet: 30

b) Xây d ng giao di n c b n: 30

c) Xây d ng giao di n nâng cao: 32

3 Modules: 32

a) T ng quan v Module c a NukeViet: 32

b) Vi t module đ n gi n: 33

c) Vi t module nâng cao: 37

4 Blocks: 39

a) T ng quan v block: 39

b) Vi t block module: 40

c) Vi t block global: 41

5 Cronjobs (Tác v t đ ng): 46

a) T ng quan v crontjob: 46

b) Vi t crontjob: 47

6 M t s l u ý: 47

Trang 2

7 Làm vi c v i ngôn ng và d ch thu t h th ng NukeViet: 49

7.1 L a ch n ph i pháp đa ngôn ng : 50

7.2 D ch thu t ngôn ng giao di n cho h th ng: 50

V B o m t h th ng NukeViet: 51

1 C p nh t phiên b n m i nh t 51

2 H n ch s d ng các module và block 52

3 Ch n truy c p th m c không đ c phép 52

4 V n đ Chmod: 53

5 Thông tin Admin 53

5.1 i tên th m c admin: 53

5.2 B t ch đ captcha trong khi đ ng nh p: 53

5.3 B t ch đ Ki m tra IP khi truy c p khu v c admin 54

5.4 B o v th m c admin b ng ch c n ng b o v th m c c a hosting 55

6 Gi u file config.php 55

7 Thay đ i đ ng d n t i các th m c h th ng 55

8 Mư hoá file c u hình h th ng 55

9 C p nh t thông tin t di n đàn nukeviet.vn 55

VI H ng d n t i u t p tin JavaScript trong mư ngu n m NukeViet 3.x 56

1 Các ki u t i u JavaScript 56

1.1 Ki u RegExp: 56

1.2 Mư hóa ki u Gzip n a v i: 56

1.3 Gi m kích th c t p tin d a trên công ngh t i u c u trúc mư ngu n và rút g n các ký t 56

2 Cách s d ng Google Closure Compiler t i u JavaScript cho NukeViet 3: 57

2.1 T i u cho các l p trình viên 57

2.2 T i u cho khách truy c p web 58

VII Các công c dành cho ng i phát tri n NukeViet 58

1 Công c t o module 58

2 Công c t o gói giao di n m i 58

3 Công c nén JavaScript 59

4 Công c nén CSS 59

5 Công c d ch thu t dành cho NukeViet 59

VIII L i k t 60

Trang 3

theme: admin_default và admin_full cho khu v c qu n tr

Hai theme admin_default và default là hai theme h th ng, n u các giao di n khác không h tr b t kì thành ph n gì thì nh ng thành ph n đó đ c l y m c đ nh t hai theme này, vì v y tuy t đ i không đ c đ i tên hay ch nh s a hai theme này

b) Module:

(đ c là Mô-đun, còn có tên g i khác 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 nhi m m t ch c n ng riêng cho h th ng Tùy ch c n ng và nhi m v c a module mà

nó có th ph c v h th ng ch y các tác v n n ho c ch t ng tác bên ngoài v i ng i

s d ng (t ng ng v i vi c can thi p sâu ho c không sâu vào h th ng)

Có th hình dung nh th này: 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ó th có ch c n ng và nhi m v khác nhau, có kh n ng ho t đ ng t ng đ i đ c l p

nh ng đ u ch u s ch đ o c a công ty m

H th ng NukeViet m c đ nh đư có s n m t s module, ngoài ra ng i s d ng có

th cài thêm các module m i v t website http://nukeviet.vn đ cài lên h th ng ho c

g b nó kh i h th ng

Các module đ c cài b ng cách v t lý (cài thêm code lên h th ng) đ c g i là module th ng, n u các module này cho phép thì h th ng có th "nhân b n" nó lên thành nhi u module khác có ch c n ng gi ng nó Các module đ c nhân b n lên theo hình th c đó g i là module o

Tóm l i: Module o là module đ c nhân b n t m t module b t k c a h th ng NukeViet (n u module đó cho phép t o module o)

Trang 4

L u ý:Module o là khái ni m ch có k t phiên b n NukeViet 3.0 (khi NukeViet

h tr công ngh đa nhân module) Công ngh này cho phép ng i s d ng có th

kh i t o hàng ngàn module m t cách t đ ng mà không c n đ ng đ n m t dòng code Các module đ c sinh ra t công ngh này g i là module o

c) Block:

Block (kh i) là các kh i nh trên website nh m m c đích đa d ng d li u trên m t trang và có th s d ng đ trang trí cho website Các block có th b t, t t ho c di chuy n d dàng đ n b t c v trí nào (đ c ng i thi t k ch đ nh trên website khi thi t k giao di n web)

Nh các Block mà n i dung website tr lên đa d ng và phong phú h n Khách truy

c p c ng nh th mà d dàng n m b t n i dung website và nhanh chóng ti p c n đ n

có th hi n th module, còn block s d ng cho toàn b site có th hi n th toàn b

website Riêng block global đ c phân làm hai lo i: Block module và block th

m c includes/blocks/

Block kh i qu ng cáo giúp hi n th các qu ng cáo t o ra t module Banner

Block HTML cho phép t o các d li u t HTML

Block RSS cho phép l y n i dung t các ngu n RSS

M i block có th áp các m u trình bày giao di n khác nhau tùy vào theme s d ng

Trang 5

Th m c g c ch a NukeViet bao g m 15 th m c và 10 t p

a) Mô t các file trong th m c g c:

 File index.php: Là file kh i đ ng h th ng, g i ra t t c các tài nguyên NukeViet

s d ng, xác đ nh các module, các template, th ng kê s ng i online, xác đ nh quy n đi u hành module

 File mainfile.php: Là file g i ra t t c các tài nguyên c a h th ng s d ng, kh i

t o các h ng, các bi n dùng chung File này đ c g i ngay index.php đ c g i

 File htaccess: C u hình Charset m c đ nh cho các file HTML, CSS, JS, PHP, HTM, ch n truy c p bên ngoài đ n m t s file Thi t l p cho các modules c a

Apache

 File CJzip.php: Ch a các thành ph n ph c v vi c nén trang

 File favicon.ico: Icon c a website

 Các file robots.php, robots.txt, web.config: Thi t l p quy n tìm ki m c a các máy

Là b nh đ m c a h th ng, khi th c hi n ch c n ng xóa cache thì các file trong

th m c này s b xóa Cache s giúp h th ng ho t đ ng nhanh h n, gi m b t công vi c x lý c a CPU

iii Th m c data:

Ch a các file d li u t các module, ví d các file d li u qu ng cáo (module

banners), file config_global.php ch a thông tin c u hình c a site, file metatags.xml l u

c u hình meta-tag…

Trang 6

Ngoài ra th m c này c ng có th ch a nhi u file khác tùy theo m i module có

ho c không có l u file vào

iv Th m c files:

G m 5 th m c con:

 Css: Ch a các file css nén c a website n u b t ch c n ng t i u h th ng

 Dcache: B nh đ m c a module uploads Các file trong th m c này không

đ c xóa khi dùng ch c n ng xóa cache c a module webtools, vì v y n u g p

l i ph n upload thì b c đ u tiên nên làm là xóa th công các file trong th

Ch a toàn b tài nguyên c a b nhân NukeViet

 Th m c blocks: Ch a các block global c a h th ng

 Th m c class: Ch a các class: array2xml.class, checkurl.class, crypt.class,

Diagnostic.class, download.class, error.class, flood.class…

 Th m c core: Ch a các file x lý c t lõi c a h th ng

 Th m c cronjobs: Ch a các file ti n trình t đ ng c a h th ng

 Th m c fonts: Ch a font cho ph n capcha

 Th m c ini: Ch a các file d li u nh đ n v ti n t , kí hi u ngôn ng , trình duy t, h đi u hành

 Th m c ip_files: D li u IP c a các n c

 Th m c keywords: Ch a các hàm tách t khóa

 Th m c phpmailer: Ch a phpmailer class, là ph n ph trách vi c g i email

 Th m c phpsvnclient: Class dùng đ giao ti p v i máy ch SVN

Trang 7

 Th m c utf8: Các hàm x lý mư utf-8

Các file:

 bots.php: C u hình các máy ch tìm ki m

 constants.php: Các thi t l p h th ng Ph n thi t l p này s đ c h ng d n t i

m c thi t l p h th ng

 footer.php, header.php: File thi t l p đ nh d ng xu t ra c a website

 functions.php: Ch a các hàm NukeViet xây d ng s n

 getloadavg.php: Ch ng quá t i máy ch

 ini.php: c d li u t file ini, đ i chi u đ xu t ra bi n $sys_info

 language.php : Xác đ nh ngôn ng data, ngôn ng giao di n

 openid.php: Thông tin các nhà cung c p openID đ c s a d ng

 request_uri.php: X lý bi n $_GET

 rewrite.php, rewrite_index.php, rewrite_language.php: Ch a n ng rewrite c a

NukeViet

 sqldata.php: Ch a d li u t o table trong CSDL c a các module h th ng

 timezone.php: Thông tin v múi gi

vii Th m c install: Ph n cài đ t NukeViet

viii Th m c js: Ch a các file javascript NueViet s d ng

 Ngôn ng module (các module khu v c qu n tr ): admin_ten-module.php

 Ngôn ng block: (các block trong th m c includes/blocks/) block.ten-block.php

 Ngôn ng cài đ t: install.php

x Th m c logs: Ch a toàn b nh t kí h th ng:

xi Th m c modules: Ch a các module khu v c ng i dùng

xii Th m c sess: V trí l u các session

Trang 8

xiii Th m c themes: Ch a các giao di n

xiv Th m c tmp: Các file t m Các file trong th m c này s đ c t đ ng xóa nh

ti n trình t đ ng

xv Th m c uploads: Ch a các file upload c a các module, m i th m c trong th

m c này t ng đ ng v i m t module

II Thi t l p h th ng NukeViet:

Ph n này ch đ c p t i các thi t l p b ng cách thay đ i các file h th ng và các thi t l p an ninh

1 Thi t l p các giá tr m c đ nh:

Các thi t l p m c đ nh n m trong file includes/constants.php, các thi t l p này

đ c khuy n cáo ch nên làm m t l n và làm tr c khi cài đ t NukeViet

N u thay đ i các thi t l p này sau khi website đư đ c cài đ t, sau khi thay đ i c n vào khu v c qu n tr site ph n c u hình chung đ l u l i

 Thi t l p file config.php

define( "NV_CONFIG_FILENAME", "config.php" );

Có th thay config.php b ng b t kì tên nào c ng nh đ ng d n đ n file đó

Ví d :

define( "NV_CONFIG_FILENAME", "hh/dfggfd.nuke" );

nh v y file config.php gi có tên dfggfd.nuke và n m trong th m c hh

 Thay đ i tên th m c admin:

đ c h th ng hi u có tên nukemin

);

Trang 9

 Thay đ i th m c ch a cache: define( "NV_CACHEDIR", "cache" );

L u ý: ti p đ u t có t i đa 3 kí t

"adminrelogin" );

"NV_ADMIN_CHECK_PASS_TIME", 3600 );

'NV_LIVE_COOKIE_TIME', 31536000 );

đ nh b ng 0, giá tr này s thi t l p session t n t i cho đ n khi c a s trình duy t đóng l i

hai giá tr : 1 - mã hóa md5, 2- mã hóa sha1

define( 'NV_UPASSMIN', 5 );

define( 'NV_UNICKMIN', 4 );

'NV_GFX_HEIGHT', 25 );

Trang 10

2 Thi t l p các nhà cung c p OpenID:

NukeViet m c đ nh cung c p ph ng th c đ ng nh p thành viên thông qua 4 nhà cung c p OpenID, ngoài ra qu n tr wesite c ng có th thay đ i, thêm ho c b t nhà cung c p OpenID

D li u v các nhà cung c p OpenID đ c l u file includes/openid.php

thêm m t nhà cung c p OpenID, th c hi n các thao tác sau:

đ ng d n đ n website có cung c p OpenID

 Vào qu n tr site ph n module users => c u hình module, t i dòng Các nhà

cung c p OpenID đ c ch p nh n, ch n nhà cung c p v a thêm sau đó l u l i

NukeViet m c đ nh đư kích ho t s n ch c n ng ch ng flood cho website, tuy nhiên

ng i qu n tr có th b t, t t ho c thay đ i cách th c ch ng flood riêng cho website

Trang 11

M c đ nh giá tr s là 1 – ch c n ng đang b t, đ t t ch c n ng này, c n thay đ i giá tr thành 0

thay đ i cách ch ng flood, trong file constants.php, tìm đ n dòng

//So requests toi da trong 1 phut

L u ý: Sau khi thay đ i c n vào khu v c qu n tr ph n c u hình chung đ l u l i

c u hình

b) Ch ng quá t i máy ch :

NukeViet cung c p công c b o v máy ch n u tr ng thái x lý c a CPU v t quá 80%, h th ng s t m ng ng ho t đ ng

Ch c n ng này không đ c b t lên trong NukeViet m c đ nh, đ kích ho t ch c

n ng này c n vào khu v c qu n tr ph n c u hình chung, tìm và đánh d u vào ô ki m

Ki m tra tr ng thái máy ch , n u > 80% s thông báo "Server too busy Please try

again later" sau đó l u l i c u hình

Hình 2: Ch c n ng ch ng quá t i máy ch

c) Ki m tra và ch n các máy tính dùng proxy:

Trang 12

NukeViet m c đ nh không kích ho t ch c n ng ki m tra các máy tính dùng proxy,

đ kích ho t ch c n ng này, hưy đ ng nh p qu n tr web sau đó đ n ph n c u hình

chung, ch n ch c n ng ki m tra và ch n các máy tính dùng proxy là nh , v a ho c tuy t đ i

Hình 3 Ch c n ng ki m tra và ch n các máy tính dùng proxy

này, m file data/config_global.php tìm đ n dòng $global_config['proxy_blocker'] = sau đó ch nh l i thành $global_config['proxy_blocker'] = 0;, vào khu v c qu n tr và thi t l p l i ch c n ng này

d) Ki m tra và chuy n h ng các REFERER bên ngoài đ n trang ch :

NukeViet m c đ nh không kích ho t ch c n ng này, đ kích ho t, vào khu v c

qu n tr ph n c u hình chung, t i dòng Kích ho t ti n ích ki m tra và chuy n h ng các REFERER bên ngoài đ n trang ch đánh d u vào ô ki m sau đó l u l i

Hình 4 Ki m tra và chuy n h ng các REFERER bên ngoài đ n trang ch

Trang 13

Hình 5 Sao l u CSDL

t i v CSDL đư sao l u, vào admin ph n CSDL => Data backup sau đó ch n file c n t i và n “T i v ”

L u ý: Các file backup CSDL đ c l u t i th m c logs/dump_backup

f) Ki m tra an ninh khu v c admin:

Admin là khu v c c c kì quan tr ng đ i v i website, do đó c n b o v ch t ch khu

v c này NukeViet cung c p hai công c giúp b o v khu v c admin: Ki m tra t ng

l a truy c p admin và ki m tra IP truy c p admin

b t ch c n ng t ng l a cho khu v c admin hưy đ ng nh p qu n tr site, vào

khu v c qu n tr => c u hình, đánh d u ch n t i ô “Ki m tra t ng l a cho khu v c

admin” và n “L u thay đ i”

Hình 6 Ki m tra t ng l u cho khu v c admin

L u ý: N u sau khi b t ch c n ng này tài kho n qu n tr t i cao b ch n, hãy m

file config_global.php tìm đ n dòng $global_config['admfirewall'] = 1; và s a l i thành $global_config['admfirewall'] = 0; sau đó c u hình l i ch c n ng này

b t ch c n ng ki m tra IP khi truy c p vào khu v c admin, hưy đ ng nh p qu n

tr site, vào khu v c qu n tr => c u hình, đánh d u ch n t i ô “Ki m tra IP khi truy

c p khu v c admin”, n “L u thay đ i”

Trang 14

Hình 7 Ki m tra IP khi truy c p khu v c admin

Sau khi b t ch c n ng “Ki m tra IP khi truy c p khu v c admin” hưy nh p nh ng

IP đ c phép truy c p vào khu v c admin đ hoàn t t

Hình 8 Qu n lý IP truy c p khu v c admin

L u ý: N u sau khi kích ho t ch c n ng này, do vô tình đánh sai IP, tài kho n

qu n tr t i cao b ch n truy c p có th kh c ph c b ng cách m file config_global.php tìm đ n dòng $global_config['block_admin_ip'] = 1; và s a l i thành $global_config['block_admin_ip'] = 0;, sau đó hãy đ ng nh p qu n tr và thi t

l p l i ch c n ng này

III Các hàm đ c xây d ng s n, các class, các tài nguyên khác:

1 Các hàm đ c xây d ng trong NukeViet:

Trang 15

viên, 2: Qu n tr , 3: Nhóm thành viên $groups là m t chu i ID các nhóm thành viên ví d 1,2,3,4,5 ho c đ tr ng ho c ch m t ID ví d 8 Hàm tr v true n u

đ c phép và false n u không đ c phép Ch c n ng đ ki m tra quy n h n đ xem m t n i dung ví d quy n download, quy n xem tin t c

c a hàm date trong php xem t i http://php.net/manual/en/function.date.php $time

- nv_unhtmlspecialchars ( $string )chuy n các kí t '&', ''', '"', '<', '>', '\', '/', '(', ')', '*', '[', ']', '!', '=', '#', '%',

'^', ':', '{', '}', '`', '~'t ng ng

thành '&', '\'', '"', '<', '>', '\\', '/', '(', ')', '*', '[', ']', '!',

chu i kí t ho c m t m ng m t chi u ch a các chu i kí t

Trang 16

- nv_editor_br2nl ( $text )ng c l i v i nv_editor_nl2br ( $text )

Các hàm nv_editor_br2nl ( $text ), nv_editor_nl2br ( $text ), nv_br2nl (

textarea r i l u vào CSDL r i đ a ng c t CSDL ra EDITOR hay textarea (Ví d

vi t m t bài vi t và s a m t vài vi t nào đó)

- filter_text_input: l y d li u đ c submit

c a input có tên là alias, ph ng th c post, giá tr m c đ nh n u không có d li u

đ l y là GIA TRI MAC DINH

);

$from là tên ng i g i ho c tên và đ a ch mail ng i g i, n u g m tên và đ a ch mail thì chúng là m t m ng m t chi u g m hai ph n t ph n t m t là tên và ph n

t th 2 là email, $to là đ a ch email nh n, $subject tiêu đ c a email, $message là

n i dung email có th có đ nh d ng HTML, $files là đ a ch t p tin đính kèm (có

th b tr ng)

"dungpt.vinades.vn", "Tiêu đ ", "<strong>N i dung</strong>" );

- nv_generate_page: Xu t s trang ví d TRANG TR C 1 2 3 90 100 101

TRANG SAU

l t là link c b n khi n vào m t trang ví d nukeviet.vn/ khi n vào trang link s

thêm page=So-trang dùng $nv_Request->get_int( 'page', 'get', 0 ); đ l y,

trang ví d 5 bài trên m t trang, $page ph n t th m y ví d bài th 5 D li u

Trang 17

xu t s là m t đo n mư HTML bao g m các link đ n vào ch c n xu t ra trình duy t tr c ti p

Nâng cao: nv_generate_page ( $base_url, $num_items, $per_page,

$start_item, $add_prevnext_text = true, $onclick = false, $js_func_name

= 'nv_urldecode_ajax', $containerid = 'generate_page' )

Trong đó:

giá tr tr v là true n u đúng và false n u sai

có m t qu n tr viên xóa m t chuyên m c

$array['title'][N i dung công vi c], $admin_info['userid'][ID c a thành

Trang 18

$info_content[Thông tin2], $adminlink = 0[Cho phép hi n th link đ n khu

trang web b n c g ng truy c p hi n không t n t i

có kích th c l n h n nh thumb

- change_alias( $title )t o liên k t t nh

Trang 19

Ví d change_alias("Tiêu đ ") k t qu : Tieu-de

thích", 10 )K t qu : Nukeviet là ph n

$module_name đ tr ng thì giá tr m c đ nh s là module hi n t i đang làm vi c

m c uploads n u giá tr $return là true

đ ng d n ch a rewrite n u giá tr $is_url là true

-nv_get_keywords ( $content = "" ):Tr v t khóa t $content

-nv_capcha_txt ( $seccode ): Tr v true n u mư capcha $seccode là h p l ,

ng c l i tr v false

$content

scandir.

đ i t ng xóa là th m c và giá tr $delsub là true thì hàm ch xóa các th m c

r ng

các thu m c con n u $subdir có giá tr true $conn_id là connection FTP

(ft_connect());

Trang 20

- nv_error_info ( ): Tr v các thông báo l i h th ng

Trang 21

'copyright' => 'Chú ý: Vi c đ ng l i bài vi t trên website ho c các ph ng ti n truy n thông khác mà không ghi rõ ngu n http://nukeviet.vn là vi ph m b n quy n',

Trang 22

 $user_info: Bi n l u thông tin thành viên, bi n này ch có giá tr khi thành viên

đư đ ng nh p bên ngoài site ho c admin ho t đ ng bên ngoài site

 $admin_info: L u thông tin c a admin, ch có giá tr khi admin đ ng nh p

 $sys_info: L u thông tin máy ch

Trang 23

đ ng Thành th t xin l i các b n vì s b t ti n này!',

'Home' => 'Trang nh t',

Trang 24

 $rss: L u đ ng d n rss c a module

 $nv_vertical_menu: L u menu ngang c a module

 $array_mod_title: L u thông tin Mod title c a m i module

 $contents: N i dung c a m t module

 $content: N i dung c a m t block

 $module_name: Tên c a m t module

 $module_file: Tên th m c ch a module

 $module_data: Tên table c a module

 $page_title: tiêu đ trang

 $keywords: T khóa c a trang

 $description: Mô t trang

 $op: funcs c a m t module

 $language_array: Thông tin ngôn ng

 $lang_module: Ngôn ng c a module

 $my_head: N i dung thêm trong th <head></head>

 $my_footer: N i dung thêm cu i trang

 $module_info: Thông tin m t module

3 Các h ng:

Các h ng c u hình h th ng đ c đ nh ngh a trong file constants.php, ngoài ra

NukeViet còn đ nh ngh a m t s h ng sau:

 NV_START_TIME: Th i gian b t đ u phiên làm vi c

 NV_IS_USER_FORUM: Có giá tr true n u site có tích h p di n đàn

 NV_OPENID_ALLOWED: Cho phép đ ng nh p b ng OpenID

 NV_CURRENTTIME: Th i gian hi n t i, giá tr b ng time()

Trang 25

 NV_CURRENTMONTH_STXT: Tháng hi n t i, giá tr t Jan – Dec

 NV_CURRENTDAY_2NUM: Ngày, giá tr t 01 – 31

 NV_CURRENTDAY_1NUM: Ngày, giá tr t 1 – 31

 NV_CURRENT12HOUR_2NUM: Gi , giá tr t 00 – 12

 NV_CURRENT12HOUR_1NUM: Gi , giá tr t 0 – 12

 NV_CURRENT24HOUR_2NUM: Gi , giá tr t 00 – 23

 NV_CURRENT24HOUR_1NUM: Gi , giá tr t 0 – 23

 NV_CURRENTMIN_2NUM: Giây, giá tr t 00 – 59

 NV_DEL_ONLINE_TIME: Th i gian xóa tr ng thái online

 NV_USER_AGENT: Thông tin useragent

 NV_BASE_SITEURL: Tên th m c g c ch a file, ví d /nukeviet/

 NV_BASE_ADMINURL: đ ng d n đ n admin, ví d /nukeviet/admin

server, ví d D:/AppServ/www

 NV_EOL: Kí t ng t dòng

 NV_UPLOAD_MAX_FILESIZE: Kích th c t i đa file t i lên, tính b ng byte

 NV_CACHE_PREFIX: Ti p đ u t c a cache

 NV_IS_AJAX: Ki m tra referer h th ng hay bên ngoài, giá tr true ho c false

 NV_IS_MY_USER_AGENT:Xác đ nh có ph i User_Agent c a NukeViet hay

khô ng

 NV_AUTHORS_GLOBALTABLE: Tên table authors

 NV_GROUPS_GLOBALTABLE: Tên table nhóm thành viên

 NV_USERS_GLOBALTABLE: Tên table thành viên

Trang 26

 NV_SESSIONS_GLOBALTABLE: Ten table l u session

 NV_LANGUAGE_GLOBALTABLE: Tên bable l u ngôn ng

 NV_BANNERS_CLIENTS_GLOBALTABLE: Tên table ch a khách hàng ph n

qu ng cáo

 NV_BANNERS_PLANS_GLOBALTABLE: Tên table ch a

 NV_BANNERS_ROWS_GLOBALTABLE: Tên table ch a qu ng cáo

 NV_BANNERS_CLICK_GLOBALTABLE: Tên table ch a thông tin th ng kê

qu ng cáo

 NV_CONFIG_GLOBALTABLE: Tên table c u hình h th ng

 NV_CRONJOBS_GLOBALTABLE: Tên table l u ti n trình t đ ng

 NV_PREFIXLANG: Ti p đ u t + ngôn ng c a table ví d nv3_vi

 NV_MODULES_TABLE: Tên table l u thông tin các module

 NV_BLOCKS_TABLE: Tên table l u thông tin các blcok

 NV_MODFUNCS_TABLE: Tên table thi t l p các layout cho theme

 NV_COUNTER_TABLE: Tên table ch a thông tin th ng kê

 NV_SEARCHKEYS_TABLE: Tên table ch a các t khóa tìm ki m

 NV_REFSTAT_TABLE: Tên table th ng kê các referer

 UPLOAD_CHECKING_MODE: Ki u ki m tra file t i lên

 ADMIN_LOGIN_MODE: Ki u đ ng nh p c a admin

 PCLZIP_TEMPORARY_DIR: Tên th m c ch a file nén t m th i

 NV_IS_USERS: Có ph i là thành viên không

 NV_IS_SPADMIN: Có ph i là admin t i cao ho c ng i đi u hành chung không

 NV_IS_GODADMIN: Có ph i là admin t i cao không

 NV_ALLOW_FILES_TYPE: Các ki u file đ c t i lên

 NV_ALLOW_UPLOAD_FILES: Cho phép t i file lên

 NV_LANG_DATA: Ngôn ng data

 NV_LANG_INTERFACE: Ngôn ng giao di n

4 Các class dùng trong l p trình NukeViet:

a) Các class đ c g i s n:

 $nv_Request: là bi n ch a class request:

Trang 27

 L y m ng : $nv_Request ->get_typed_array ( $name, $mode = null, $type

= null, $default = null );

$default = null, $decode = true );

null, $decode = true )

null, $decode = true );

= null, $decode = true )

$mode, $all = true );

0, $encode = true )

 $db: Là bi n ch a class mysql

 $crypt: Là bi n ch a class crypt

 $xtpl: Trong h th ng NukeViet bi n $xtpl th ng đ c ch a class xtemplate Tuy nhiên bi n này ch a đ c t o s n

Trang 28

 Kh i t o: $xtpl = new XTemplate( $file_name, $file_location );

Trong đó $file_name là tên file, $file_location là đ ng d n tuy t đ i đ n file

 Upload class: Dùng đ upload m t file lên h th ng

"/includes/class/upload.class.php" );

$global_config['forbid_extensions'],

$global_config['forbid_mimes'],NV_UPLOAD_MAX_FILESIZE, NV_MAX_WIDTH, NV_MAX_HEIGHT );

$replace_if_exists = true );

 Giá tr tr v c a vi c l u m t file là m t m ng bao g m

 error: Thông tin l i

 Basename: Tên file

Trang 29

tuy t đ i đ n file, $directory là th m c ch a file, $file_basename tên file t i

v , $is_resume cho phép t m ng ng và download l i, $max_speed t c đ t i đa

* @Author VINADES.,JSC (contact@vinades.vn)

* @Copyright (C) 2010 VINADES.,JSC All rights reserved

* @Createdate 1-27-2010 5:25

*/

Trang 30

 i v i các file php c a block global và crontjobs sau ph n mô t file là ph n

ki m tra an ninh:

if ( ! defined( 'NV_MAINFILE' ) ) die( 'Stop!!!' );

2 Themes:

a) T ng quan v theme c a NukeViet:

Các theme đ c đ t trong th m c themes/ M c đ nh h th ng NukeViet có b n

theme Tên c a th m c ch a theme bao g m ch cái, ch s , d u – và d u _ C u trúc c a m t theme bao g m:

 Th m c block: Ch a các file template (.tpl) c a các block global n m trong th

m c includes/blocks/ Các file trong th m c này có th đ tr ng

 Th m c ch a các file css M i file css c a module có tên là tên c a module, khi

ng i dùng truy c p m t module thì file css này s đ c load t đ ng, khi đóng gói module các file này c ng s đ c đóng gói t đ ng

 Th m c images: Ch a các file nh, m t theme nên ch a các th m c con:

admin, arrows, icons Trong th m c này còn ch a các th m c có tên là tên c a module, khi đóng gói module, các th m c này s đ c đóng gói t đ ng

 Th m c js: Ch a các file javascript n u theme có s d ng

 Th m c layout: Ch a các file tpl – các file đ nh d ng cho theme

 Th m c modules: Trong th m c này ch a các th m c có tên là tên c a module, khi đóng gói m t module các th m c t ng ng c ng đ c đóng gói

 Th m c system: Ch a các file tpl h th ng, thông th ng m i theme đ u gi ng nhau v các file này, không c n ph i s a chúng

 File config.ini: Thi t l p theme

 File default.jpg: nh mô t theme

 File favicon.ico: Icon c a theme

 File theme.php: File ch c n ng c a theme

b) Xây d ng giao di n c b n:

xây d ng m t giao di n c b n t giao di n đư có ta ti n hành copy m t theme

đư có, đ t l i tên theme, xóa các ph n sau:

 T t c các file trong th m c, ho c c th m c blocks

Ngày đăng: 25/03/2014, 05:24

HÌNH ẢNH LIÊN QUAN

Hình 2: Ch c n ng ch ng quá t i máy ch . - MÔ TẢ KỸ THUẬT MÃ NGUỒN MỞ NUKEVIET v3.x doc
Hình 2 Ch c n ng ch ng quá t i máy ch (Trang 11)
Hình 3. Ch c n ng ki m tra và ch n các máy tính dùng proxy . - MÔ TẢ KỸ THUẬT MÃ NGUỒN MỞ NUKEVIET v3.x doc
Hình 3. Ch c n ng ki m tra và ch n các máy tính dùng proxy (Trang 12)
Hình 4. Ki m tra và chuy n h ng các REFERER bên ngoài đ n trang ch . - MÔ TẢ KỸ THUẬT MÃ NGUỒN MỞ NUKEVIET v3.x doc
Hình 4. Ki m tra và chuy n h ng các REFERER bên ngoài đ n trang ch (Trang 12)
Hình 5. Sao l u CSDL. - MÔ TẢ KỸ THUẬT MÃ NGUỒN MỞ NUKEVIET v3.x doc
Hình 5. Sao l u CSDL (Trang 13)
Hình 7. Ki m tra IP khi truy c p khu v c admin. - MÔ TẢ KỸ THUẬT MÃ NGUỒN MỞ NUKEVIET v3.x doc
Hình 7. Ki m tra IP khi truy c p khu v c admin (Trang 14)
Hình 9:  B t ch  đ  Ki m tra IP khi truy c p khu v c admin - MÔ TẢ KỸ THUẬT MÃ NGUỒN MỞ NUKEVIET v3.x doc
Hình 9 B t ch đ Ki m tra IP khi truy c p khu v c admin (Trang 54)
Hình 13 :  o n code đ c t i  u h t c , vi c đ c nó c ng không còn d  dàng vì c u trúc  dòng l nh c ng b  h y. - MÔ TẢ KỸ THUẬT MÃ NGUỒN MỞ NUKEVIET v3.x doc
Hình 13 o n code đ c t i u h t c , vi c đ c nó c ng không còn d dàng vì c u trúc dòng l nh c ng b h y (Trang 58)

TỪ KHÓA LIÊN QUAN

w