基本簡介
内容管理系統(Content Management System,簡稱CMS)是指在一個合作模式下,用于管理工作流程的一套制度。該系統可應用于手工操作中,也可以應用到電腦或網絡裡。作為一種中央儲存器(Central Repository),内容管理系統可将相關内容集中儲存并具有群組管理、版本控制等功能。版本控制是内容管理系統的一個主要優勢。
内容管理系統在物品或文案或數據的存儲、掌管、修訂(盤存)、語用充實、文檔發布等方面有着廣泛的應用。現在流行的開源CMS系統有Joomla!、Drupal、Xoops等。
如何開發
内容管理系統是一個很泛的概念:從商業門戶網站的新聞系統到個人的Weblog都可以稱作發布系統。
框架型:本身不包含任何應用實現,隻是提供了底層框架,具體應用需要一定的二次開發,比如Cocoon,Vignette;
應用型:本身是一個面向具體類型的應用實現,已經包含了新聞/評論管理,投票,論壇,WIKI等一些子系統。比如:postNukexoops等;
但無論如何,在發布系統選型之前,首先了解自己的實際需求是最重要的:想根據現成系統将自己的需求硬往上照搬是非常不可取的。訪問量,權限控制和各種功能需求。每個模塊和功能自己都比較清晰一點以後,如果沒有:你的需求太特殊,或者可以嘗試分解成更小的系統組合實現。
内容管理系統被分離成以下幾個層面:各個層面優先考慮的需求不同
1,後台業務子系統管理(管理優先:内容管理):新聞錄入系統,BBS論壇子系統,全文檢索子系統等,針對不同系統的方便管理者的内容錄入:所見即所得的編輯管理界面等,清晰的業務邏輯:各種子系統的權限控制機制等;
2,Portal系統(表現優先:模闆管理):大部分最終的輸出頁面:網站首頁,子頻道/專題頁,新聞詳情頁一般就是各種後台子系統模塊的各種組合,這種發布組合邏輯是非常豐富的,Portal系統就是負責以上這些後台子系統的組合表現管理;
3,前台發布(效率優先:發布管理):面向最終用戶的緩存發布,和搜索引擎spider的URL設計等……
内容管理和表現的分離:很多成套的CMS系統沒有把後台各種子系統和Portal分離開設計,以至于在Portal層的模闆表現管理和新聞子系統的内容管理邏輯混合在一起,甚至和BBS等子系統的管理都耦合的非常高,整個系統會顯得非常龐雜。而且這樣的系統各個子系統捆綁的比較死,如果後台的模塊很難改變。但是如果把後台各種子系統内容管理邏輯和前台的表現/發布分離後,Portal和後台各個子系統之間隻是數據傳遞的關系:Portal隻決定後台各個子系統數據的取舍和表現,而後台的各個子系統也都非常容易插拔。
内容管理和數據分發的分離:需要要Portal系統設計的時候注意可緩存性(CacheFriendly)性設計:CMS後台管理和發布機制,本身不要過多考慮"效率"問題,隻要最終頁面輸出設計的比較Cacheable,效率問題可通過更前端專門的緩存服務器解決。
此外,就是除了面向最終浏覽器用戶外,還要注意面向搜索引擎友好(SearchengineFriendly)的URL設計:通過URLREWRITE轉向或基于PATH_INFO的參數解析使得動态網頁在鍊接(URI)形式上更像靜态的目錄結構,方便網站内容被搜索引擎收錄;
四要素
第一點:你要選擇的CMS編碼類型,是PHP的,還是.NET開發的,數據庫是ACCESS的,還是Mssql的,或者Mysql。選擇不同編碼的CMS系統意味着你要選擇不同類型的虛拟主機,也就是說你選擇的虛拟主機必須要支持你想要使用的CMS系統,最好的情況是你能夠有足夠的預算自由的選擇虛拟主機
第二點:明确自己的建站需求,如果是建立門戶類型的網站,就需要程序能夠實現自定義模型,能夠讓你自定義頻道的功能與字段。如果你想建立視頻網站,就需要一個視頻管理系統的CMS,如果你想建立軟件下載站,那麼就要有軟件下載功能的CMS。并不是功能越多的CMS越适合你,如同殺雞用宰牛的刀,到頭來被複雜的設置和龐大的系統弄得暈頭轉向,最好的CMS就是适合你的需求,能夠讓你的網站通過最少的設置和最簡單的步驟穩定的建立起來,這才是最終目的。
第三點:最好CMS要程序和模闆分離。網站的風格非常的重要,網站的風格就如同人的衣裳,給人一個好的印象就要有漂亮的包裝,因此如果對網站代碼設計懂得比較多,可以完全脫離開程序,自己制作好看的網站模闆,如果懂得少一點,最好有在線設計風格系統,也可以在線設計文字的顔色,網站的背景等等。再有就是看看你選擇的CMS廠商有沒有出一些優質的模闆,事實證明,隻有開發商的模闆能夠真正保證低錯誤率,讓網站完美的運行。
第四點:程序要有最好的SEO效果。做站不能不知道SEO,SEO就是搜索引擎優化。最基本的幾點:1、CMS能夠生成網站地圖,利于搜索引擎抓取頁面。2、CMS能夠生成全站靜态文件。3、CMS能夠制作全站關鍵詞。4、網站導航采用面包屑。5、網站代碼成熟,訪問穩定,負載量高。
提供商
Vignette.奧斯汀,TX Vignette公司,網站内容管理系統的領導者,今天宣布在中層樓資金上它取得了1億4千萬美元,成為奧斯汀基礎軟件公司中最大的私人資産投資,同時也使Vignette成為在奧斯汀發展最快的互聯網軟件公司。Vignette公司,作為全世界網站内容應用系統的領導者,為公司們提出了解決方案——在互聯網上建立非常成功的商業。
Vignette的王牌産品是StoryServer 3,它能使公司以應用軟件(如在線發布、知識管理和複雜電子商務系統)為基礎建立、管理和發布服務,最終加速和提高客戶的忠實度和持續力。超過75個一流公司,包括Ziff- Davis' ZDNet, First Chicago NBD, Bay Networks 和 CNET ,使用StoryServer 3 ,每天提供2500萬個網頁浏覽。
StoryServer3 獲得了5個行業獎勵,包括UPSIDE雜志的"網絡基礎組織類最活躍的私人公司"。它的 V/5 系列是一套應用軟件包,設計用來為門戶、B2C 和 B2B 市場需求提供内容管理。V/5系列具有高度的可定制化能力和廣泛的功能,它包括内容和模闆的開發、個性化定制和發布。但是,它的多數功能還需要開發。
Documentum.Documentum是文檔管理解決方案的長期供應商。帶着它的4i網站内容管理(WCM)版本,公司有力地進入了CM舞台,它提供了一個解決方案來支持具有在線而動态的内容的電子商務應用軟件。對大中型組織來說,它也是一個健全的可擴展的網站内容管理解決方案。
Eprise. Eprise的 Participant Server 2.6.6是該公司内容管理的産品,它為大型商務和.com提供商業應用軟件,包括互聯網、企業内部網和公共網站。該産品能促進内容添加、修改和全球發布。Participant Server 的主要組件包括内容中心、操作中心、共享中心和内容分配套件。産品為投稿和創造提供基于網絡的界面,同時内容分配組件處理适于交易的内容分配。 A single Web based administrative interface is a plus because administration can be distributed across the organization. 單一的基于網絡的管理界面是附加的,因為管理在組織範圍内可以是分布式的。
Interwoven. Interwoven的 TeamSite 4.5是橫向聚焦的網站内容管理解決方案,它向财富500強和全球2000個上市公司提供企業範圍的網站内容管理。TeamSite 的管理和組成能力通過桌面和基于Java的接口提供,這種桌面和接口作為操作系統的一部分出現。用戶可以通過Windows Explorer把内容拖放到存儲庫中。
Xpedio. Xpedio CMS 4.0是全球2000 B2B 和 B2E 公司所用的解決方案包,它為沒有技術的用戶提供了容易使用的網站建設能力。該産品在企業内部互聯網、外部互聯網和電子商務網站上促進了内容的快速發展和管理。在管理和發布内容方面,它是強大的解決方案,它提供具有分布式管理能力的創作工具、安全、發布的靈活性和完全基于浏覽器的界面。
Ncompass. NCompass Labs于2001年4月通過微軟成立,以網站内容管理解決方案為基礎,在2001年底,它做為微軟的産品(稱為微軟内容管理服務器)再次發布。
Open Market. Open Market 的Content Server 3.1是 J2EE兼容的内容管理解決方案,pen Market 把内容服務器定位為推動以内容為中心的電子商務應用軟件的産品,它處理訪問者、客戶和合作者之間的交互。該産品有用于管理和組織的網絡界面,包括了一個個性化的引擎和用于發布的應用軟件服務器。
BroadVision. BroadVision 把應用方法用于内容管理,主要目标是B2B,B2E 和 B2C 市場。 BroadVision以應用軟件程序包的形式出售産品,如出售給附帶商業、合作商業、市場和雇員自我服務。内容管理解決方案也獨立地出售。
FileNET. FileNET是文檔管理市場的傳統領導者,FileNET套件主要面向于金融、保險、政府、電信、公共事業和制造業。FileNET把它的網站内容管理套件定位在内容管理的全部解決方案,它貫穿内容的生命周期,從創造到審批、發布和分配。然而,如個性化和動态内容的表達。
Megellan.2000年7月,Gauss Interprise 和美國軟件開發者Magellan合并,主要銷售它的内容管理系列 Versatile Internet Platform (VIP)。VIP定位于企業管理内容、網站内容和門戶的平台。對于集中的環境,産品系列有适應需求的基本功能,包括基于網絡的管理,單一和大批的輸入、第三方廠商提供的基本庫服務、以及用于分布式内容創造的模闆設計工具。
InStranet. InStranet 成立于1999年,總部設在紐約,并且在巴黎設有歐洲總部。公司的王牌産品是InStranet 2000 1.5,它是一個浏覽器和基于Java的網站内容管理解決方案。産品聚焦于,在B2B和雇員工作環境下,向企業内部互聯網和外部互聯網發布業務文件和内容。InStranet 2000 1.5在 J2EE兼容的應用服務器上運行,已在BEA WebLogic, IBM WebSphere和iPlanet 應用服務器上經過檢驗。
Mediasurface. Mediasurface的總部設在倫敦,它的美國辦事處在紐約和弗朗西絲科。公司為組織提供管理内容軟件,用于企業内部互聯網和外部互聯網。公司的核心産品是 Mediasurface 3.5,它瞄準垂直市場,包括金融服務、政府、教育、衛生保健、IT服務、媒體、出版和廣播、零售和消費服務。
Six Open Systems. Six Offene Systeme GmbH 在美國稱為Six Open Systems (Six),于1991年在德國成立。Six在德國有重要的消費群,它以産品Six CMS 4.0打入美國市場。 該産品是由内到外的、以浏覽器為基礎的解決方案,它用來幫助媒體出版商簡化和管理内容設計及網頁和門戶、互聯網、企業内部互聯網等的設計。
Starbase. Starbase銷售合作産品,該産品為電子商務應用軟件創造、管理代碼和内容。2001年2月,Starbase收購了worldweb_net和它的産品 Expressroom I/O 、以及基于Java和XML(标準通用标記語言的子集)的網站内容管理解決方案。Starbase正把Expressroom I/O添加到它的代碼和内容管理解決方案的協作套件中。
國内用的比較多的有Active Context、turbocms、cms4i,不過這些都是純商業性系統,價格很高。一般個人建站,建議選取國内外比較有名的開源系統。
韓國的模闆,當中比較有代表性的,在美國有較大影響力的當屬怪獸模闆。怪獸模闆開發了WordPress很多CMS網站模闆包括joomla,WordPress,magento,drupal,mambo等,以及設計精美的ZenCart,magento,oscommerce網店系統等目前市場上最流行各種類型各種行業的的網站模闆。
常見系統
PHPCMS
五指CMS:基于php5技術實現的一套高性能網站内容管理系統,默認支持pc網站和手機網站,能夠自動識别用戶客戶端,給用戶呈現不同的内容。模型功能首創共享模型/獨立模型/相結合為不同的級别系統提供強有力的技術平台,數據庫支持主從讀寫分離。
CmsTop:基于LAMP架構,融合文章/圖集/視頻/專題/頁面/一鍵轉載/編輯考核/活動報名/投票評選/全文搜索/個人專欄等功能,提供“PC網站+手機網站+手機客戶端+平闆客戶端”多終端一體化媒體網站技術解決方案。
國微CMS:(原PHP168二代架構系統S系列)主打二代架構,主要在千萬級數據負載、海量數據搜索方面具備核心優勢,架構為核心+模塊+插件方式,非常适合大型平台的使用。
織夢CMS是集實用、複雜、功能強大、安全、靈活、開源幾大特點的開源内容管理系統,是國内開源CMS的領先品牌,系統并不簡單。
e107:是一個内容管理系統采用PHP寫成的,并使用流行的開源MySQL數據庫系統的内容存儲。這是完全免費的,完全可定制的,并在不斷發展,2007年最佳開源(PHP)cms軟件之一!
MODx:MODx是一個開源的PHP應用框架,可以幫助使用者控制自己的網上内容。它是開發人員和高級用戶理想的控制系統,任何人都可以使用MODx發布、更新、維護動态網站,或html(标準通用标記語言下的一個應用)靜态頁面的網站内容。MODx是一個完全開源免費的php内容管理系統(CMS),被評選為2007年度“最有前途的開源内容管理系統”(MostPromisingOpenSourceCMS)。
MyfCMSMyfCMS-闵益飛内容管理系統是國内第一款基于Thinkphp框架開發的、完全開源免費的phpcms系統,任何個人或組織,不論赢利與否均可以免費使用。
帝國CMS:是一個經過完善設計的适用于Linux/windows/Unix等環境下高效的網站解決方案它的不同版本可以滿足從小流量到大流量,從個人到企業各方面應用的要求。
fcontex:基于PHP和MySQL技術構建的CMS和博客系統,同時也支持SQLite數據庫。這款系統有兩個不錯的亮點,一是采用了WebOS風格的後台管理界面可以并列打開多個窗口來操作而互不幹擾,二是采用Ajax技術實現的交互方式帶來了流暢的操作體驗。
phpcms:采用PHP5+MYSQL做為技術基礎進行開發。V9采用OOP(面向對象)方式進行基礎運行框架搭建。模塊化開發方式做為功能開發形式。MVC框架易于功能擴展,代碼維護,優秀的二次開發能力,可滿足所有網站的應用需求。
NETCMS
EoyooCMS是一套基于B/S多層架構的.NET開發的一套網站的内容管理系統前擁有的成熟模型有:單頁、文章、圖冊、産品、下載、視頻、人才、留言。并且每個模型都可以自定義擴展字段,由用戶自定義屬性字段,後台管理系統擁有一流的用戶體驗結合數字營銷集成了對訪客用戶的行為進行分析,數據挖掘。
DeepSoonCMS是一款輕量級、開源免費的基于.NET和MySQL的内容管理系統,主要特色包括:給上傳的圖片添加自定義版權水印;多種URL方式的僞靜态化;論壇式說說插件,讓網站交互無極限;主題風格一鍵切換;瀑布流模闆,圖文混排;縮略圖自動提取等。
ASPCMS
KingCMS:KingCMS是集簡約的操作界面、靈活的頁面設計、無限的擴展能力;集成完善的Vbscript開發類;完全模塊化方式的框架式内容管理系統。
逐浪CMS是基于.net開發的CMS,已經采用Zoomla!逐浪CMS的用戶大多以高端電子商務應用為主,其中包括對接金蝶K3等應用,并融合三維全景、3D、智能組卷、教育行業、視頻、微博等應用,系統集成站群、開放API、數據接口,同時不集成任何強制LOGO,定位是“面向開發者的CMS”,與動易CMS正好定位相反,初學者困難,但一旦上手即進入自我境界。每年元旦逐浪CMS都會發布重要版本,是國内更新與研發投入最大的CMS系統之一。
DedeCMS
采用XML名字空間風格核心模闆:模闆全部使用文件形式保存,對用戶設計模闆、網站升級轉移均提供很大的便利,健壯的模闆标簽為站長DIY自己的網站提供了強有力的支持。高效率标簽緩存機制:允許對類同的标簽進行緩存,在生成HTML的時候,有利于提高系統反應速度,降低系統消耗的資源。模型與模塊概念并存:在模型不能滿足用戶所有需求的情況下,DedeCMS推出一些互動的模塊對系統進行補充,盡量滿足用戶的需求。
JAVACMS
1.ZCMS:是一套基于J2EE和插件技術的、面向高端用戶的網站内容管理軟件,集内容規劃、内容創作、内容編輯、内容審核、基于模闆的内容發布等功能于一身,并提供互動組件、可視化專題、内容采集、内容檢索、訪問統計等擴展功能。
基本特點
有利于為數衆多的人員投稿(或添磚加瓦)及分享所存儲的數據;以類似于人力資源職位管理的方式,根據用戶的角色控制他們對于以上數據的訪問和使用的權限。比如Joomla 1.6中,就可以讓不同的用戶組在網站文章的撰寫、修改、發布等方面,具有不同的權限,或者讓指定用戶訪問或管理指定的欄目或内容;有助于快捷簡便地存儲數據及檢索到所需要的數據;減少資料的重複錄入工作;降低工作報告寫作的難度;加強用戶間的交流。
在CMS領域,在各個層面都有極多地優點,在政府、學校、商業門戶、信息港、地方門戶網,等各種設計到文章發布和用管理的網站建設中。
nn1、CMS具有許多模塊的優秀設計,如程序和模塊分離技術等,可加快網站開發的速度和減少開發的成本。
nn2、CMS不但可以處理文本,還可以處理圖片、Flash動畫、聲頻、視頻甚至電子郵件檔案等。不但可以針對各種内容進行分類和發布整理,還可以針對不同類型的用戶發布不同的内容。
nn3、CMS的用戶接口可編輯性強,可以根據客戶要求訂做用戶接口和風格模塊。
nn4、可分布式管理。站點管理人員和維護人員無須集中在同一個辦公室,甚至無須在同一城市,全球任何一個有網絡的地方都可以讓您實現高效率的治理。
nn5、面向搜索引擎友好性。CMS系統一般都專為搜索引擎收錄優化過,包括目錄結構、文件名、title、keywords等。
nn6、可開發性強,可以針對不同的需求進行專門的開發。更可喜的是,相當一部分的CMS還是開源的。
7、易于使用。無須專業網頁編程技術,任何個人經過數小時專業培訓都能輕松的管理整套系統。
設計目标
C++的設計目标,就是要讓C++既具有适合于系統程序設計的C語言所具有的可适應性和高效性,又能在其程序組織結構方面具有像Simula那樣的語言設施(Simula所支持的這種程序組織結構通常被稱為面向對象程序設計風格)。在設計的時候,還做了很大的努力,使得引借自Simula的高層次的程序設計技術能夠應用于系統程序設計之中。這即是說,C++所提供的抽象機制能夠被應用于那些對效率和可适應性具有極高要求的程序設計任務之中。
編寫實現
一個程序從編寫到最後得到運行結果要經曆以下一些步驟。
用C++語言編寫程序
用高級語言編寫的程序稱為“源程序”(source program)。C++的源程序是以.cpp作為後綴的(cpp是c plus plus 的縮寫)。
對源程序進行編譯
為了使計算機能執行高級語言源程序,必須先用一種稱為“編譯器(complier)”的軟件(也稱編譯程序或編譯系統),把源程序翻譯成二進制形式的“目标程序(object program)”。
編譯是以源程序文件為單位分别編譯的。目标程序一般以.obj或.o作為後綴(object的縮寫)。編譯的作用是對源程序進行詞法檢查和語法檢查。編譯時對文件中的全部内容進行檢查,編譯結束後會顯示出所有的編譯出錯信息。一般編譯系統給出的出錯信息分為兩種,一種是錯誤(error);一種是警告(warning)。
将目标文件連接
在改正所有的錯誤并全部通過編譯後,得到一個或多個目标文件。此時要用系統提供的“連接程序(linker)”将一個程序的所有目标程序和系統的庫文件以及系統提供的其他信息連接起來,最終形成一個可執行的二進制文件,它的後綴是.exe,是可以直接執行的。
運行程序
運行最終形成的可執行的二進制文件(.exe文件),得到運行結果。
分析運行結果
如果運行結果不正确,應檢查程序或算法是否有問題。



















