lampLinux+Apache+Mysql+Perl/PHP/Python一組常用來搭建動態(tài)網(wǎng)站或者服務(wù)器的開源軟件,本身都是各自獨立的程序,但是因為常被放在一起使用,擁有了越來越高的兼容度,共同組成了一個強大的Web應(yīng)用程序平臺。
隨著開源潮流的蓬勃發(fā)展,開放源代碼的LAMP已經(jīng)與J2EE和.Net商業(yè)軟件形成三足鼎立之勢,并且該軟件開發(fā)的項目在軟件方面的投資成本較低,因此受到整個IT界的關(guān)注。從網(wǎng)站的流量上來說,70%以上的訪問流量是LAMP來提供的,LAMP是最強大的網(wǎng)站解決方案.
LAMP由來
LAMP是基于Linux,Apache,MySQL和PHP的開放資源網(wǎng)絡(luò)開發(fā)平臺,PHP是一種有時候用Perl或Python可代替的編程語言。這個術(shù)語來自歐洲,在那里這些程序常用來作為一種標(biāo)準(zhǔn)開發(fā)環(huán)境。名字來源于每個程序的第一個字母。每個程序在所有權(quán)里都符合開放源代碼標(biāo)準(zhǔn):Linux是開放系統(tǒng);Apache是最通用的網(wǎng)絡(luò)服務(wù)器;mySQL是帶有基于網(wǎng)絡(luò)管理附加工具的關(guān)系數(shù)據(jù)庫;PHP是流行的對象腳本語言,它包含了多數(shù)其它語言的優(yōu)秀特征來使得它的網(wǎng)絡(luò)開發(fā)更加有效。開發(fā)者在Windows操作系統(tǒng)下使用這些Linux環(huán)境里的工具稱為使用WAMP。
比較
雖然這些開放源代碼程序本身并不是專門設(shè)計成同另外幾個程序一起工作的,但由于它們都是影響較大的開源軟件,擁有很多共同特點,這就導(dǎo)致了這些組件經(jīng)常在一起使用。在過去的幾年里,這些組件的兼容性不斷完善,在一起的應(yīng)用情形變得更加普遍。并且它們?yōu)榱烁纳撇煌M件之間的協(xié)作,已經(jīng)創(chuàng)建了某些擴展功能。目前,幾乎在所有的Linux發(fā)布版中都默認(rèn)包含了這些產(chǎn)品。Linux操作系統(tǒng)、Apache服務(wù)器、MySQL數(shù)據(jù)庫和Perl、PHP或者 Python語言,這些產(chǎn)品共同組成了一個強大的Web應(yīng)用程序平臺。
前景
越來越多的供應(yīng)商、用戶和企業(yè)投資者日益認(rèn)識到,經(jīng)過LAMP單個組件的開源軟件組成的平臺用來構(gòu)建以及運行各種商業(yè)應(yīng)用和協(xié)作構(gòu)建各種網(wǎng)絡(luò)應(yīng)用程序變?yōu)橐环N可能和實踐,變得更加具有競爭力,更加吸引客戶。LAMP無論是性能、質(zhì)量還是價格都將成為企業(yè)、政府信息化所必須考慮的平臺。
LAMP名稱起源
1998年
LAMP這個特定名詞最早出現(xiàn)在1998年。當(dāng)時,Michael Kunze為德國計算機雜志c't寫作的一篇關(guān)于自由軟件如何成為商業(yè)軟件替代品的文章時,創(chuàng)建了LAMP這個名詞,用來指代Linux 操作系統(tǒng)、Apache網(wǎng)絡(luò)服務(wù)器、MySQL 數(shù)據(jù)庫和PHP (Perl或Python)腳本語言的組合(由四種技術(shù)的開頭字母組成)。由于IT世界眾所周知的對縮寫的愛好,Kunze提出的LAMP這一術(shù)語很快就被市場接受。O'Reilly和MySQL AB更是在英語人群中推廣普及了這個術(shù)語。隨之LAMP技術(shù)成為了開源軟件業(yè)的一盞真正的明燈。事實上,LAMP,正像一盞開源明燈指引著我們前進的方向!
LAMP是一個縮寫
它指一組通常一起使用來運行動態(tài)網(wǎng)站或者服務(wù)器的自由軟件: Linux,操作系統(tǒng); Apache,網(wǎng)頁服務(wù)器; MySQL,數(shù)據(jù)庫管理系統(tǒng)(或者數(shù)據(jù)庫服務(wù)器); PHP 和有時 Perl或 Python,腳本語言。 雖然這些開放源代碼程序本身并不是專門設(shè)計成同另幾個程序一起工作的,但由于它們的廉價和普遍,這個組合開始流行(大多數(shù)Linux發(fā)行版本捆綁了這些軟件)。當(dāng)一起使用的時候,它們表現(xiàn)的像一個具有活力的解決方案包。 其他的方案包有Apple的 WebObjects(最初是應(yīng)用服務(wù)器),Java/J2EE 和 微軟的 .NET架構(gòu)。
LAMP包
的腳本組件中包括了CGIweb接口,它在90年代初期變得流行。這個技術(shù)允許網(wǎng)頁瀏覽器的用戶在服務(wù)器上執(zhí)行一個程序,并且和接受靜態(tài)的內(nèi)容一樣接受動態(tài)的內(nèi)容。程序員使用腳本語言來創(chuàng)建這些程序因為它們能很容易有效的操作文本流,甚至當(dāng)這些文本流并非源自程序自身時也是。正是由于這個原因系統(tǒng)設(shè)計者經(jīng)常稱這些腳本語言為膠水語言。
O'Reilly和MySQL AB
的確,MySQL AB 自己的市場推廣在某種程度上基于LAMP包的推廣。其他的項目和廠商則推行這個術(shù)語的一些變體,包括:LAPP(以PostgreSQL替代 MySQL) LAMP(最后兩個字母意味著 Middleware和 PostgreSQL) WAM(以 Microsoft Windows 替代 Linux)
其他相關(guān)縮寫
LAMJ 意指 JSP/servlet BAMP 以 BSD 替代 Linux WIMP 指 Microsoft Windows, Microsoft IIS,MySQL, PHP AMP(省略了操作系統(tǒng); Apple最喜歡這個詞眼) 一些人借用LAMP 來描述一類可定制組成的系統(tǒng),而不是制造一系列新詞,并用它來表示這些系統(tǒng)和統(tǒng)一打包的頁面開發(fā)環(huán)境的不同(例如ASP, .NET和 J2EE)。
舉例說明
Wikipedia,免費自由的百科全書,運行的一系列軟件具有LAMP環(huán)境一樣的特點。 Wikipedia 使用MediaWiki軟件,主要在Linux下開發(fā),由Apache HTTP 服務(wù)器提供內(nèi)容,在MySQL 數(shù)據(jù)庫中存儲內(nèi)容,PHP來實現(xiàn)程序邏輯。