Linux系統中搭建LAMP動態博客網站

2020-11-27 站長之家

在新Web2.0革命中,博客是最早出現的,也被更多的人所了解。博客的中文有兩重含義,既指撰寫個人網絡日誌的人(Blogger),也指承載個人網絡日誌的網站(Blog)。用全球最大博客網站Blogger.com的解釋:「blog可以是個人日記、每日道壇、合作空間、政治講壇、特發新聞集散地、各種連結的匯集地、您的個人想法、世界大事備忘錄等」,「簡單地說,blog是一個網站,您可以源源不斷地往裡填充內容。新內容顯示在頂部,以便訪問者能夠閱讀到最新內容。然後他們可以發表評論、進行連結或給您發電子郵件」。顯然最早的博客是作為網絡「過濾器」的作用出現的,那就是挑選一些特別的網站,並作簡單的介紹。因此有人認為瀏覽器發明人MarcAndreesen開發的Mosaic的What’sNew網頁就是最早的博客網頁。JustinHall的(http://www.links.net/vita/web/story.html)也是最早的博客網站原型之一。1998年誕生了博客這個概念並有了固定的網站。在美國2000年前後博客發展如火如荼,受到了社會普遍關注。美國很多政治、經濟和文化屆的名流都有自己的博客,並且這些博客有時就是一些重大新聞事件的源頭,對社會有著深遠的影響。

目前LAMP(Linux+Apache+MySQL+PHP)近幾年來發展迅速,已經成為Web伺服器的事實標準。現在的Web網站已經不再是僅向瀏覽者或用戶提供靜態網頁內容的瀏覽,而是要求能夠和用戶進行動態的信息交流的動態Web網站,所以,搭建Web網站平臺不僅要支持簡單的HTML網頁瀏覽,更重要的是使Web站點能和用戶實現一種動態的交互式操作。這就要求Web伺服器在提供標準的HTML網頁瀏覽之外提供一種能和用戶交流的技術。這種技術不但要能夠收集和反饋用戶信息,還要支持資料庫操作(把信息存入資料庫和從資料庫中檢索信息)。PHP是一種跨平臺的伺服器端的嵌入式腳本語言,它大量的借鑑C、Java和Perl語言的語法,並加入了PHP自己的特性,使Web開發者能夠快速地寫出動態頁面。PHP支持所有主流資料庫。它是完全免費的,使用時不需要支付任何費用。本文將要搭建LAMP動態網站博客是基於Linux的完全免費的PHP技術的實現方法。

一、軟體的獲得安裝

在整個配置過程中,我們使用的軟體都是完全免費的開放原始碼軟體,可以從網際網路上免費下載。在Linux下開發Web應用,一定要有一個HTTP伺服器,這就是著名的Apache。當然資料庫是一定少不了的,Linux支持多種資料庫,包括像Oracle、DB2等這樣大型的資料庫。不過與PHP最為相配、也是運用最多的資料庫當屬MySQL了。另外PHP語言本身也是必不可少的。下面是它們相應的網站:Apachehttp://www.apache.org;MySQLhttp://www.mysql.com;PHPhttp://www.php.net。就Apache而言,有1.3.X版本與2.X版本兩個分支。由於2.X是在1.3.X上進行重寫,因此在結構和功能上都有很大的改進。關於Apache1.3.X的安裝介紹比較多,故本文選用了Apache2.X版本。同樣,也選用了支持Apache2.X版本的PHP版本。如何用RedHatEnterpriseLinuxAS4.0+Apache+PHP+MySQL+bblog來架構動態網站論壇,所選取的是目前最新版本的軟體,均從原始碼開始編譯,而不是下載二進位文件來進行安裝。LAMP的具體安裝過程,由於這方面文章比較多筆者就不贅述了。

二、搭建bblog博客網站

下面以Linux發行版RedHatEnterpriseLinuxAS4.0為例,介紹搭建bblog博客網站從安裝到使用。

bblog官方網站是http://www.bblog.com/最新版本:0.7.6。

1.bblog軟體下載:

#cdvar/www/html

wegthttp://jaist.dl.sourceforge.net/sourceforge/bblog/bBlog-0.7.6.tar.gz

#tar–zxvfbBlog-0.7.6.tar.gz「建立一個目錄」


2.為bblog建立資料庫:

#mysql–uroot–p

Enterpassword:xxxxxxxxx

YourMysqlconnectionidis3toserverversion:4.11

Type『help;』or『\h』forhelp.Type『\c’toclearthebuffer.

Mysql>createdatabasebblog;「為phpbb2建立資料庫」

QueryOK,1rowaffected(0.01sec)

Mysql>grantallprivilegesonbblog.*tobblog@localhostidentifiedby『76543981』;「將建立的bblog權限給bblog帳號,並且設定密碼」

mysql>quit
Bye


3.測試剛建立的資料庫與帳號是否可以使用:

#mysql–ubblog–p
Enterpassword:xxxxxxxxx

YourMysqlconnectionidis3toserverversion:4.11

Type『help;』or『\h』forhelp.Type『\c’toclearthebuffer.

Mysql>connectbblog;
Connectionid:5
Currentdatabase:bblog

mysql>showdatabases;

+--------------+

|Database|

+--------------+

|mysql|

|bblog|

+--------------+

2rowsinset(0.00sec)

mysql>quitquit
Bye


4.開始安裝bblog:

安裝前需要說明的是:Mysql伺服器名稱為localhost,這個是Mysql的伺服器名稱,不是Linux伺服器名稱。通常Mysql的伺服器名稱是:localhost。Mysql資料庫名稱為bblog,Mysql帳號為bblog且密碼為上面設定值。

#cd/var/www/html/bblog#進入到Apache伺服器的確省目錄中#
#chmod777cache#賦予文件和目錄的可以執行權限#

#chmod777config.php

#chmod777compiled_templates;#chmod777cache/favorites.xml

#chmod777install.php;#chmod777install


進行網絡安裝安裝非常簡單,打開Linux的Firefox火狐瀏覽器在地址欄直接輸入:http://主機名/bblog/install.php後,出現一個協議書,選擇同意後點擊「NEXT」按鈕,會出現對話框讓你填寫一些系統信息見圖-1。



圖-1填寫系統信息

為了讀者填寫方便筆者把它作一個列表,填寫內容分見表-1:

表-1系統信息

填寫系統信息

填寫內容

說明

GeneralConfig

基本設定

BlogName

Cjk

博客名稱

BlogDescription

Mycjk

博客描述

FullName

Caojh

全名

Username

Admin

管理員名稱

Password

XXXXXXX

管理員口令

Re-enterPassword

XXXXXXX

再次輸入管理員口令

Emailaddress

goodcjh@2911.net

系統管理員電子郵件

MysqlSetting

Mysql資料庫設定

MysqlUsername

bblog

Mysql資料庫用戶帳號

MysqlPassword

XXXXXXXXXXX

Mysql資料庫用戶帳號密碼

Mysqldatabasename

bblog

Mysql資料庫用戶帳號

MysqlHost

localhost

Mysql資料庫主機名稱

tablePrefix

Bb_

Mysql資料庫表格字首

ServerConfig

伺服器設定

Urltoyourblog

http://192.168.1.16/

Blog的完整URL

PathtobBlog

/var/www/html/bblog/

Bblog目錄的完整UNIX路徑

填寫結束後按「Next」按鈕繼續,所有配置結束後系統如果出現圖2表示安裝成功,如果有錯誤會自動退回到開始的對話框讓你從新設定。

圖-2系統設定成功5.安全設定

測試成功後系統提醒你出於安全考慮,刪除安裝文件(防止他人使用這些文件修改系統信息)

#chmod644config.php

#rm–rfinstall;#rm–rfinstall.Php

6.博客的常規設置

以系統管理員的身份登錄,登錄後對話框下邊會出現「博客的管理員控制面板」(見圖-3)。

圖-3博客的管理員控制面板

博客的管理員控制面板,一共十一個大版面:Post(郵局)、comments(注釋)、Archives(管理)、RSSLinks(RSS連結)、RSSFetcher(RSS聯播)、Links(連結)Section、Plugins(插件)、Option(選項)、About(聲明)、docs(在線幫助,http://www.bblog.com/docs)。通過這些版面這樣你也可以自己管理博客了。點擊「Post」按鈕就可以寫自己的博客了,界面見圖4。另外在在線幫助頁有常見問題回答。可以通過點擊「Archives」管理文章。

圖4博客書寫的界面

博客寫完後就可以發布了,可以點擊「VistyouSite」進行瀏覽了,見面見圖5。



圖5Web頁面瀏覽

Bblog的RSS選項:RSS就是網際網路信息相互交流引用的通用語言,是一種簡單的新聞聚合標準,一種將信息推送到用戶端的推送技術。RSS是基於文本的格式。它是XML(可擴展標識語言)的一種形式,所以通常RSS文件都標為XML。目前有很多根據RSS標準開發的閱讀器軟體,或者內容聚合主頁。RSS技術最早是由NetScape設計出來的,目的是建立一種新聞頻道標準,遺憾的是當時NetScape和微軟在瀏覽器兩強爭霸中節節敗退,也就沒有多餘的心思和精力去發展完善RSS技術,RSS也因此沉寂多年,直到這兩年網絡中博客(Blog)橫行,RSS才重新找到了用武之地,使其成為Blog間相互傳遞新聞主題和內容的方式,RSS也由此隨著Blog的日漸盛行而被新聞網站認同並加以應用。Bblog內置了RSSLinker和RSSFetcher。方便用戶使用RSS閱讀器瀏覽博客。RSS應用最火爆的當屬博客、播客等網站支持RSS。在傳統網站中,目前只有一部分支持RSS,而且一般只提供很簡單的內容提要,要閱讀全文還需要打開相應的網頁。因此,RSS應用仍然受到了很大的局限,故此更多地與新型的網絡應用播客、博客等緊密結合。

7.bblog博客的一些安全措施

1.管理員權限

bblog博客的系統管理員具有最大的權限,而該權限可能會與其它的板主權限相衝突而造成不可預期的錯誤,所以最好不要讓系統管理員當版主。另外用root權限運行MYSQL也不太安全,這裡推薦使用其他用戶運行MYSQL。方法是:

#mysql-uroot-p
Enterpassword:xxxxxxxxx

………

mysql>updateusersetuser="cao"whereuser="root";
mysql>flushprivileges;
mysql>quit
Bye

以後就得通過cao帳號訪問mysql資料庫了。

2.關閉Mysql遠程連接

首先,應該關閉3306埠,這是MySQL的默認監聽埠。由於此處MySQL只服務於本地腳本,所以不需要遠程連接。儘管MySQL內建的安全機制很嚴格,但監聽一個TCP埠仍然是危險的行為,因為如果MySQL程序本身有問題,那麼未授權的訪問完全可以繞過MySQL的內建安全機制。關閉網絡監聽的方法很簡單,mysqld進程啟動時,會自動尋找/etc/my.conf這個配置文件。在/etc/my.cnf文件中的[mysqld]部分,去掉#skip-networking前面的「#」即可。另外要儘量養成在mysql下輸入密碼的習慣,因為Shell下面輸入的時候可能會被其它人看見。

3.php配置文件的安全設定:

phpinfo和get_cfg_var函數主要用於調試程序是否正常,當LAMP安裝結束後應當禁用,在php.ini文件加入一行:

disable_functions=phpinfo,get_cfg_var


這樣可以避免洩漏系統服務信息。關於php和Apache其他安全措施可以查看筆者的:教您如何應用PHP開發出安全的應用程式,連結:http://tech.ccidnet.com/pub/article/c1113_a239881_p1.html

4.關注補丁問題

bBlog功能強大包含系統信息也比較多,所以,您必須要了解到這個軟體有可能會產生一些安全上的漏洞的。例如2004-10-12bblog被發現bBlog包含的rss.php腳本不正確處理用戶提交的URI輸入,遠程攻擊者可以利用這個漏洞

進行SQL注入攻擊,可以獲得敏感信息或更改資料庫。rss.php腳本對用戶提交的$p參數缺少過濾,就直接傳遞給$bBlog->make_post_query()函數,攻擊者提交特殊的SQL數據作為$p參數數據,可以更改原有SQL邏輯,可以獲得敏感信息或更改資料庫。使用0.7.3和0.7.2版本的用戶請馬上下載補丁(http://www.servers.co.nz/security/patches/SCN200409-1/rss.php-patch.txt)或者升級到0.7.4版本以上。建議您隨時注意bblog官方網站,這裡不定期的會有一些安全技術公告,可以幫助您的博客使用更加安全。

另外你應該經常到你所安裝的系統發行商的主頁上去找最新的補丁。對於私有作業系統,如Windows/Solaris等,由於個人用戶不能直接接觸其原始碼,其代碼由公司內部開發人員維護,其安全性由同樣的團隊保證,內核的修正與其他應用程式一樣,以patch/SP包的方式發布。對於Linux這樣的開放式系統,是一種開放的結構。應該說,開放的模式是雙刃劍。從機制上講,全世界的開發人員都能獲得原始碼,從而找出其中的紕漏,似乎安全性應該更好;但是同時,如果網絡管理人員不能及時更新內核,也會留下安全隱患。而且,影響作業系統安全的因素有很多。僅僅通過開放或者封閉原始碼,都不能從根本上解決安全問題。如果你是一個Linux網管員,你經常需要上相應的網站看,是否有補丁,是否有了bugfix,是否需要升級。Linux伺服器運行的軟體主要包括:Samba,Mysql,Php,Apache,Firefox等,這些軟體,大都是開源軟體,而且都在不停升級,穩定版和測試版交替出現。在Apache等網站上,最新的ChangeLog中都寫著:bugfix,securitybugfix的字樣。所以Linux網管員要經常的關注相關網站的bugfix和升級,及時升級或添加補丁。

總結:LAMP和bblog可以組成一個優秀的博客網站,可以在網際網路上運行,也可以在Linux區域網中運行。1999年,也是博客開始高速增長的一年,主要是包括Pita、Greymatter、Manila、Diaryland、BigBlogTool,但是基本是基於Windows作業系統。Bblog是Linux網絡環境下的為數不多的博客軟體。有了Bblog一個博客就可以低成本地發布、更新和維護自己的博客網站。在預算短缺的今天,LAMP+bblog組成博客網站無疑具備明顯的價格優勢。

相關焦點

  • lanmp v2.3一鍵安裝包發布(包括lamp,lnmp,lnamp安裝)
    應用環境的快速簡易安裝包,執行一個腳本,整個環境就安裝完成就可使用,快速,方便易用,安全穩定 1 支持lamp(linux+apache+php+mysql),lnmp(linux+nginx+php+mysql)環境快速安裝部署上線 2 支持lnamp,即支持nginx+apache組合環境的應用,也即是nginx前端處理靜態,圖片等,apche處理後臺php腳本程序。
  • 無需重裝系統!一分鐘恢復被黑的WordPress獨立博客網站
    【ALENG 自媒體】8月11日早間自媒體專稿,話說從2008年涉足獨立博客至今,掐指一算,走獨立博客這一行已經10多年了。10多年間,我的獨立博客網站先後使用過早期的Z-blog博客系統,後來還安裝過某著名的CMS系統,直到發現WordPress,才算是找到了一套好的博客系統。
  • 《Linux就該這麼學》與《鳥哥的linux私房菜》哪個更適合初學者?
    也就是說無論你使用Windows多好,對於linux系統來說你都是個小白。那麼對於一個想要變成linux「最強王者」的小白來說,需要怎麼樣才能更好的、更快的變成linux大牛呢自己本身就是學習軟體專業的,畢業後由於當時無法滿足自己生活所需,決然放棄軟體相關工作。但是身邊的朋友卻有不少人還在軟體行業摸爬滾打,也有比較優秀的,比如某某項目經理等。
  • 百度網盤出linux版本了,ubuntu系統下安裝試用
    現在手頭沒有安裝中標麒麟或者Fedora, CentOS之類的linux系統。就在Ubuntu的系統進行相關的安裝試用。直接在百度網盤官網就可以下載到linux安裝包,安裝包為RPM.打開ubuntu的終端,輸入如下的指令#sudo apt-get install alien安裝上面的軟體完成上面的安裝軟體,進入下載了RPM百度網盤軟體包的目錄,使用下面的命令開始進行百度網盤rpm包轉換為ubuntu系統可安裝的DEB安裝包
  • 柳亞:博客、微博、輕博客 誰最有成長價值?
    微博熱了一段時間,騰訊,新浪,搜狐等大力的宣傳,讓織圍脖變得熱火朝天,不過微博有變冷的趨勢,微博本來是一個很私人的東西,但是現在由於微博營銷成為一種網絡推廣的主要方式,使很多企業和個人加入到營銷行業中來,所以,微博上滿天的廣告信息,被不明身份的人@,使微博這個環境變得不那麼和諧,殭屍粉越來越多,再次,我們不能從微博中得到有價值的東西,別人的嘮叨並不是興趣的所在,這個我是深有同感的,剛開始的時候非常的迷它
  • seo優化之網站url路徑的優化技巧
    做過站的朋友應該都知道網站的路徑分為動態、靜態、偽靜態,例如某夢門戶開源程序就是靜態的,當然某夢本身也帶有動態連結的功能,某論壇開源程序則是動態,也有偽靜態功能。但現在的偽靜態和靜態幾乎無法區分。那麼哪一種路徑對seo優化最好呢?
  • 恢復崩潰計算機數據的五款最佳Linux發行版
    編譯自:http://www.linuxandubuntu.com/home/5-best-linux-distributions-to-recover-dead-computers-data-linux-data-recovery 轉載自:51CTO http://os.51cto.com/art/201608/515706.htm&
  • 旅行博客如何賺錢
    筆者之前寫過一篇文章《網易博客關停:是博客兩極發展的必然》,論述了非獨立博客向獨立博客轉移的必然性。也就是說寫博客向獨立博客發展才是未來方向。而獨立博客就涉及到運營的問題。運營不僅僅是品牌的傳播,而且需要賺錢。在各種類型的博客中,旅行博客是一個熱門的類型。
  • 劉遄:作為一名新人讀完《鳥哥的Linux私房菜》的感受
    ,其書發行量巨大,陪伴了一代的運維人員,甚至被封為「linux入門神書」,漸漸的從一本linux技術書籍,上升至精神的高度,不允許再有一點反駁之聲,但思索再三,還是決定闡明我的觀點,與初學者分享下這不同的看法。
  • 如何(一步步)搭建一個成功的亞馬遜聯盟客網站-Megalithant
    > 如何搭建一個成功的亞馬遜聯盟客網站 亞馬遜聯盟項目是什麼 人們可以通過亞馬遜聯盟項目(亞馬遜聯盟)向亞馬遜引介銷售(額)來賺錢。 考慮到這一點,讓我們來看看如何搭建一個每個月都能賺錢的亞馬遜聯盟客網站。 如何搭建成功的亞馬遜聯盟客網站 不同的人對成功有不同的定義。 對於一些人來說,成功意味著一個月能賺 1,000 美金的網站。對另外一些人來說,它可能是更加雄心勃勃的每月 10,000 美金。
  • 企業官方網站怎麼註冊與搭建?
    公司營業執照註冊完成以後,就可以開始製作自己的網站,一般通過自助建站系統、網站公司和網站工作室進行網站註冊與搭建。製作公司網站的費用現在製作一個公司官網的價格從十幾元到幾百元不等,不少公司和商家在製作公司官方網站時,容易鑽價格的牛角尖,盲目地去追求低價格。
  • 十個不錯的 Linux 網絡監視工具
    iftopiftop network monitoring toolLinux 用戶通常都熟悉 top —— 這是一個系統監視工具,它允許我們知道在我們的系統中實時運行的進程,並可以很容易地管理它們。monitorix system monitoring tool for linuxMonitorix 是一個輕量級的免費應用程式,它設計用於去監視儘可能多的 Linux / Unix 伺服器的系統和網絡資源
  • 怎樣把個人電腦打造成發布網站的伺服器?
    建站從零開始--第一篇文章《怎樣在不懂技術的情況下建立自己的網站?》中有提到怎樣在個人電腦上發布我們的網站,現在李學朋就來說說怎樣讓自己的電腦成為發布網站的伺服器。目前筆者只對Windows系統熟悉,所以就講解Windows系統下的配置方法。
  • 大型網站架構設計十步秘密攻略
    第一步:物理分離web伺服器和資料庫最開始,由於某些想法,於是在網際網路上搭建了一個網站,這個時候甚至有可能主機都是租借的,但由於這篇文章我們只關注架構的演變歷程,因此就假設這個時候 已經是託管了一臺主機,並且有一定的帶寬了,這個時候由於網站具備了一定的特色,吸引了部分人訪問,逐漸你發現系統的壓力越來越高,響應速度越來越慢,
  • Linux Mint 新工具:將網站轉變為獨立的應用
    Linux Mint 目前正在積極推進 20.1 版本,日前官方博客介紹了新版本將會帶來的一項有意思的新特性:WebApp 管理器
  • Linux系統top命令中的io使用率,很多人都誤解了它的具體含義
    最近在做連續數據流的緩衝系統,C語言代碼實現後,粗略測試了下,功能上應該沒有問題。那麼,接下來就該測試性能了。輸入 top 命令,的確可以看到一系列 cpu 使用率,其中一個值得注意的子項就是 io 使用率了,如下圖:
  • 博客自製搜狐博客巨型宣傳廣告 感動數萬博友
    真相調查:博客自製「搜狐博客巨幅廣告」  2月12日,記者從網友提供的博客地址上發現了網友描述的「搜狐博客巨幅廣告」。記者在個人檔案裡看到這名博客叫楊瑱,是一名19歲天津女學生。從其博客頁面獲悉,楊瑱參加了搜狐博客舉行的首屆搜狐校園博客大師賽之最佳宿舍風採博客獎,目前已獲得22780票。
  • 知識付費系統搭建應該如何選擇?
    現如今想要通過知識變現,那麼必須得選擇一套高質量的知識付費系統,而知識付費系統的最終作用就是實現售賣變現。而現在有這樣的需求機構公司也是有很多,下面就為大家簡單介紹一下知識付費系統搭建該如何選擇?一、結合自身領域知識付費系統種類有很多,那麼可以實現知識付費系統搭建需求也很多。首先我們要結合自身行業領域來進行全面的考慮,包括前期的調查、功能性、用戶需求等等,最終搭建屬於自己的知識店鋪,錄製、售賣課程,實現知識變現。
  • FLASH K9F1G08U0M在MSP430F149嵌入式系統中的應用
    NAND Flash是採用NAND結構技術的非易失存儲器,具有ROM存儲器的特點,存儲在該晶片中的數據可在斷電情況下維持10年不丟失,而晶片的引腳與訪問又具有類似於RAM的特點。