基于linux的web服務(wù)器的搭建與設(shè)計(jì)_第1頁
基于linux的web服務(wù)器的搭建與設(shè)計(jì)_第2頁
基于linux的web服務(wù)器的搭建與設(shè)計(jì)_第3頁
基于linux的web服務(wù)器的搭建與設(shè)計(jì)_第4頁
基于linux的web服務(wù)器的搭建與設(shè)計(jì)_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第1章 緒論在當(dāng)前這樣的一種社會環(huán)境之下,我國的網(wǎng)絡(luò)技術(shù)是得到了大力的發(fā)展和全面的普及,互聯(lián)網(wǎng)技術(shù)滲透到了人們實(shí)際的生活和具體的工作過程中的方方面面,越來越多的系統(tǒng)在具體的運(yùn)行過程中,都必須是要建立在互聯(lián)網(wǎng)的基礎(chǔ)之上,才能夠有效的予以完成和實(shí)施的。人們之間再也沒有什么隔閡,人們可以通過互聯(lián)網(wǎng)進(jìn)行網(wǎng)上聊天,網(wǎng)絡(luò)也被使用的越來越多,人們可以通過網(wǎng)絡(luò)在網(wǎng)上逛網(wǎng)店買自己需要的生活用品。還有手機(jī)也可以在瀏覽器上通過網(wǎng)絡(luò)實(shí)現(xiàn)很多功能,人們上網(wǎng)的成本也是實(shí)現(xiàn)了極大程度的降低,越來越多的人,是可以輕易的實(shí)現(xiàn)上網(wǎng)的。我們上網(wǎng)不再只是通過電腦的瀏覽器,也不用每天坐在電腦前了我們在手機(jī)上刷朋友圈QQ上看好友的動態(tài),

2、開車的時(shí)候通過手機(jī)導(dǎo)航定位來實(shí)現(xiàn)遠(yuǎn)距離出行。根據(jù)我國的相關(guān)權(quán)威機(jī)構(gòu)發(fā)表的相關(guān)統(tǒng)計(jì)結(jié)果和研究數(shù)據(jù)表明,截至 2016 年 12 月 31 日,我國的網(wǎng)民數(shù)量以及網(wǎng)民規(guī)模實(shí)現(xiàn)了極大程度的提升和增強(qiáng),我國當(dāng)前網(wǎng)民在全世界的占有率中逐漸上升。由于全世界的人對網(wǎng)絡(luò)的需求越來越強(qiáng)烈,所以網(wǎng)絡(luò)的升級也是不可避免的也迫切需要更先進(jìn)以來滿足這與日俱增的網(wǎng)民。所以現(xiàn)代的網(wǎng)絡(luò)除了給網(wǎng)民們更先進(jìn)更好的體驗(yàn)也必須保持其之前的穩(wěn)定性和高效性。從當(dāng)前的現(xiàn)實(shí)環(huán)境上來講, web 服務(wù)器的功能已經(jīng)得到了極大程度的擴(kuò)展,并且其功能也是日益完善的狀態(tài),在為少數(shù)人提供對應(yīng)的服務(wù)的同時(shí),他的表現(xiàn)是非常優(yōu)質(zhì)的,在提供對應(yīng)的服務(wù)的時(shí)候,他

3、表現(xiàn)出來的狀態(tài)也是非常好的。但是如果在面臨一些重大的電商節(jié)日比如光棍節(jié),12月12日之類的節(jié)日,淘寶京東拼多多等電商舉辦一些大型的打折活動,網(wǎng)民們們往往使難以抵擋住誘惑都會控制不住自己錢包去買買買,這個(gè)時(shí)候由于搶著購物導(dǎo)致網(wǎng)絡(luò)癱瘓甚至使進(jìn)不去服務(wù)器這就是廣為認(rèn)知的服務(wù)器崩潰。這個(gè)時(shí)候人們就普遍感受到完整全面的服務(wù)器就變的尤為重要了,如此現(xiàn)實(shí)的問題這就激發(fā)了廣大學(xué)者們的研究,他們想要研究出更加優(yōu)秀的web服務(wù)器來滿足人們需求。 這個(gè)時(shí)候linux系統(tǒng)被人們發(fā)掘出來,人們發(fā)現(xiàn)它是一種穩(wěn)定的開發(fā)平臺,并且也在不斷的改進(jìn)完善,在這些產(chǎn)品中必須要通過一種傳輸協(xié)議,大多數(shù)用的傳輸協(xié)議就是HTTP,UDP,

4、這種傳輸協(xié)議的研發(fā)使得電子產(chǎn)品更加的先進(jìn),人民也通過這些傳輸協(xié)議更方便的操縱產(chǎn)品。在各種類型的傳感器、驅(qū)動器等現(xiàn)場的數(shù)據(jù)采集系統(tǒng)中,也使得到了全面廣泛的應(yīng)用。在這期間終于是有令人尊敬的人率先研發(fā)出了設(shè)備供給人們使用,后來通過互聯(lián)網(wǎng)實(shí)現(xiàn)了對設(shè)備的控制。最終使得人力以及物力等與之相關(guān)的成本實(shí)現(xiàn)了大幅度的降低和減少,進(jìn)而使得在具體的工業(yè)生產(chǎn)的過程中,其經(jīng)營成本實(shí)現(xiàn)了大幅度的下滑。從最近這幾年的綜合發(fā)展形勢上來講,我國也不甘落后,也把這種嵌入式的web服務(wù)器用在了許多更能被大眾所接受的產(chǎn)品上,例如基于linux系統(tǒng)的廣播,基于linux系統(tǒng)的mcu主服務(wù)器實(shí)現(xiàn)了數(shù)字廣播遠(yuǎn)程視頻會議等在這嵌入式平臺的使

5、用上據(jù)我所知的不止是廣州市的諸多電子有限公司,還有許多通訊設(shè)備上。再比如現(xiàn)在普遍被教師所接受的錄播系統(tǒng)被許多操縱臺使用的分布式綜合管理平臺矩陣系統(tǒng)。還有用的最多的地方遠(yuǎn)程監(jiān)控,網(wǎng)絡(luò)攝像。在這方面的研發(fā),南京航天航空大學(xué),北京工業(yè)大學(xué),華中科技大學(xué)都走在了國內(nèi)前列,在嵌入式web服務(wù)器的基礎(chǔ)衍生了許多的產(chǎn)品,那我們?yōu)槭裁催x擇在嵌入式linux系統(tǒng)上搭建所需要的服務(wù)器呢,那是因?yàn)槟敲炊嗟漠a(chǎn)品只需要通過簡單的瀏覽器的方式就能夠?qū)嵤┛刂?,想看產(chǎn)品的運(yùn)行是否正常,在服務(wù)器中設(shè)置自己想要的工作形式,他們只需要通過檢測數(shù)據(jù)的交換來知曉工作狀態(tài),對設(shè)備有效監(jiān)管。這樣不需要人親自去查看設(shè)備,只需要在電腦上打開瀏

6、覽器查看當(dāng)然更能被人接受。本篇文章我將主要像大家介紹什么是www服務(wù)器,以及什么是linux系統(tǒng),什么是HTTP,IDP,UDP傳輸協(xié)議。簡易web服務(wù)器的工作原理,以及我們?nèi)绾我徊讲皆O(shè)計(jì)實(shí)現(xiàn)web服務(wù)器。第2章web服務(wù)器 2.1 linux系統(tǒng)簡單介紹近年來,linux系統(tǒng)是一種平臺,近年來由于使用網(wǎng)絡(luò)的人數(shù)逐漸增多研發(fā)出各種系統(tǒng)平臺來搭建網(wǎng)絡(luò)就成了全世界的主流趨勢在這個(gè)系統(tǒng)被科學(xué)家們研發(fā)出來后,但是并沒有對它進(jìn)行收費(fèi)也就說免費(fèi)給大眾使用的,所以由這個(gè)平臺衍生出了各種各樣適于人們操作的科技產(chǎn)品,他們利用linux這個(gè)平臺來實(shí)現(xiàn)花式的功能,這在我們的生活中也是經(jīng)常能碰到的,例如基于linux

7、的led燈,基于linux的電子相冊,基于linux的存儲空間等等之類的。 Linux有著比其他系統(tǒng)平臺更高效靈活的優(yōu)點(diǎn),linux的適用人群也不單一,它可以普通群眾中普及,也可以在大中小型企業(yè)中有著必不可少不能忽略的地位。我們現(xiàn)在所用的電腦裝的都是windows系統(tǒng),在windows系統(tǒng)中我們可以通過對話框以及鼠標(biāo)來進(jìn)行點(diǎn)擊來操作,同樣我們的linux系統(tǒng)中也有類似的菜單欄。當(dāng)然linux有這著它卓越的優(yōu)點(diǎn)穩(wěn)定高效,但是linux系統(tǒng)的弊端也是存在的這里我們不多深究,反正linux系統(tǒng)還是在不斷完善前進(jìn)的路上,因?yàn)樗哿藷o數(shù)程序員的心血與汗水,目的就是能讓我們普通老百姓能夠使用簡易請便的系

8、統(tǒng)平臺而不被那些研發(fā)公司所約束。 Linux強(qiáng)大的功能使得它能夠在網(wǎng)絡(luò)上被廣泛使用,它可以支持多種協(xié)議的傳輸,較為常見的就是DNS,FTP,DHCP 的協(xié)議。它也可以用來當(dāng)路由器使用,也可以實(shí)現(xiàn)我們常見email服務(wù)。2.2 web服務(wù)器簡介首先我們來了解一下web服務(wù)器是用來干嘛的,當(dāng)我們搭建了一個(gè)服務(wù)器后,用戶可以在客戶端通過HTTP協(xié)議向我們搭建的服務(wù)器傳輸數(shù)據(jù),之后我們我們的web服務(wù)器會接收到數(shù)據(jù)并且做出響應(yīng),但是前提是我們必須要將客戶端與web服務(wù)器建立TCP/IP的連接,這樣我們的服務(wù)器才能與客戶端之間進(jìn)行傳輸。如下圖所示2.1所示如下圖所示,web服務(wù)器的工作方式就是這樣客戶給

9、服務(wù)器傳輸HTTP協(xié)議請求,然后服務(wù)器會作出響應(yīng)的回應(yīng)。如下圖所示,web服務(wù)器的工作方式就是這樣客戶給服務(wù)器傳輸HTTP協(xié)議請求,然后服務(wù)器會作出響應(yīng)的回應(yīng)。圖2.1Linux憑借它超出其它系統(tǒng)的穩(wěn)定性所被人鐘愛,所以我們的www服務(wù)器同樣是采用了linux系統(tǒng)來做平臺,那我們該如何在linux系統(tǒng)中來搭建服務(wù)器呢,首先我們要使用到一個(gè)軟件,它就是Apache,如圖2.2。圖2.22.3 配置Apache如下圖所示我們我們把我們需要的文件以一種形式保存在一個(gè)文件中并且給這個(gè)文件命名,以便于下次我們更方便查找。圖2.3 下一步同樣如下圖所示我們把web衍生出的文件保存在一個(gè)文件夾中,這里就是我

10、們保存日志的地方圖2.4圖3.1列出與Apache服務(wù)器和Web站點(diǎn)相關(guān)的目錄文件。 圖2.5httpd.conf是Apache服務(wù)器的配置文件,其代碼長達(dá)千行,其中的參數(shù)非常復(fù)雜。全局參數(shù)Apache的默認(rèn)配置基本能滿足用戶得需要,用戶可能需要修改的全局參數(shù),如表3.1所示。表3.1 Apache服務(wù)器得全局參數(shù)參數(shù)功能Timeout這里是我們規(guī)定的web服務(wù)器做出的響應(yīng)的時(shí)間一般情況下我們把他設(shè)置為3000秒,為什么要設(shè)置這個(gè)時(shí)間,一方面是保證安全性如果這個(gè)時(shí)間內(nèi),沒有任何數(shù)據(jù)傳輸那么服務(wù)器會自動斷開鏈接KeepAlive這里我們一般會打開它,沒打開前顯示的是關(guān)閉狀態(tài),為什么要打開呢,那是

11、因?yàn)榇蜷_了它之后性能會大幅度上升,服務(wù)器的處理速度快變快。MaxKeepAliveRequests這個(gè)就是我們常說的限制訪問人數(shù),因?yàn)橐粋€(gè)服務(wù)器如果負(fù)載的用戶太多它就不能夠承受,結(jié)果就會造成服務(wù)器崩潰。一般我們設(shè)置為數(shù)字100,如果設(shè)置為數(shù)字0的話那就是沒有限制的,那就會面臨一個(gè)嚴(yán)峻的負(fù)荷問題。KeepAloveTimeout這個(gè)就是我們在服務(wù)器中難免會遇到網(wǎng)絡(luò)斷開連接的問題,這個(gè)時(shí)候我們就必須要進(jìn)行重連,這個(gè)就是限制重連時(shí)間的,超出了重連時(shí)間,那么服務(wù)器就會做出與客戶端斷開連接的表率。(2)Web站點(diǎn)的相關(guān)參數(shù)用戶修改http.conf文件也可以設(shè)置默認(rèn)Web站點(diǎn)的屬性,其中可能需要的參數(shù)如

12、表3.3所示表3.2 Apache服務(wù)器得主要參數(shù)參數(shù)功能ServerAdmin默認(rèn)為rootlocalhost,應(yīng)將其設(shè)定Apache服務(wù)器管理員的電子郵件地址ServerName指定主機(jī)名稱DocumentRoot指定Web站點(diǎn)的根目錄,默認(rèn)為“/var/www/html”DirectoryIndex默認(rèn)值為index.html index.html.var,客戶訪問Apache服務(wù)器時(shí)沒有選擇一個(gè)所需要的網(wǎng)頁名,那么Apache就會自動默認(rèn)選擇index.html.var文件在這里我們根據(jù)WWW服務(wù)器實(shí)際表現(xiàn)出來的情況修改http.conf文件中部分參數(shù),重新啟動httpd守護(hù)進(jìn)程,并將

13、包括index.html在內(nèi)的相關(guān)文件復(fù)制到指定的Web站點(diǎn)根目錄(默認(rèn)為/var/www/html)就能架設(shè)一個(gè)簡單的WWW服務(wù)器。在桌面環(huán)境下我們該如何配置Apache服務(wù)器呢,具體的步驟就是超級用戶先打開主菜單,然后在主菜單的系統(tǒng)設(shè)置這一欄選擇系統(tǒng)設(shè)置中的服務(wù)器設(shè)置然后選擇HTTP協(xié)議,這里我們就可以配置Apache了,對話框中顯示出主,虛擬主機(jī),服務(wù)器,調(diào)整性能這里我們點(diǎn)擊端口上所有可用地址80。如圖3.5所示。圖2.5卡圖 2.6監(jiān)聽地址(1) 第一步設(shè)置 我們在對話框中顯示的服務(wù)器名中填寫web服務(wù)器的域名然后可以在“網(wǎng)主電子郵件地址”文本框內(nèi)輸入管理的電子郵件地址rootloca

14、lbost,填寫完成后,我們按鍵盤快捷鍵E這個(gè)時(shí)候彈出了文本框讓我們編寫地址,這時(shí)會讓我們編寫一個(gè)地址,這里我們輸入0端口號我們填80,另外,在這個(gè)位置我們填“*”那結(jié)果就是會對所有的地址進(jìn)行監(jiān)聽。最后我們一定要記得點(diǎn)擊確定按鈕來保存我們的設(shè)置。(2)第二步設(shè)置單擊“服務(wù)器”選項(xiàng)卡,出現(xiàn)如圖3.7所示窗口,則通常不需要修改。圖2.7選項(xiàng) 圖3.8 調(diào)整性能選項(xiàng)(3)第三步設(shè)置性能在這里設(shè)置服務(wù)器性能即我們上邊提到的服務(wù)器的最大連接數(shù)量,除此之外,每個(gè)連接的請求數(shù)量也可能不同同樣這里也可以限制它的數(shù)量。如上圖。(4)第四步設(shè)置主機(jī)的數(shù)量單擊“虛擬主機(jī)”選項(xiàng)卡,顯示當(dāng)前只有

15、一個(gè)默認(rèn)的虛擬主機(jī),如圖3.9所示。如圖3.10所示,在此對話框中可設(shè)置默認(rèn)虛擬主機(jī)的各項(xiàng)內(nèi)容。 圖29 默認(rèn)虛擬主機(jī)的常規(guī) 圖210 “虛擬主機(jī)”常規(guī)選項(xiàng)在虛擬主機(jī)的屬性這一欄我們可以看到“常規(guī)選項(xiàng)”四個(gè)字,基本設(shè)置里有顯示虛擬主機(jī)名,文件根目錄網(wǎng)上電子郵件地址。站點(diǎn)配置在這里我們可以選擇在目錄搜尋列表中添加或者刪除編輯我們的站點(diǎn),即目錄被要求時(shí)所要搜尋的文件列表。在我們登錄網(wǎng)站時(shí)我們經(jīng)常會遇到網(wǎng)絡(luò)錯(cuò)誤,這個(gè)時(shí)候會彈出一些提示,最常見的例如“你的請求錯(cuò)誤”?!澳阏埱蟮慕缑娌淮嬖凇钡鹊龋?dāng)然這些文字我們也是可以編輯的這里我就不再敘述了。“默認(rèn)錯(cuò)誤頁頁腳”下拉列表可選擇下列選項(xiàng):“顯示頁腳和電子

16、郵件地址”:在所有錯(cuò)誤頁的底部顯示默認(rèn)頁腳以及網(wǎng)站管理員的電子郵件?!帮@示頁腳”:在錯(cuò)誤頁的底部只顯示默認(rèn)的頁腳?!盁o頁腳”:在錯(cuò)誤的底部不顯示頁腳。通常不需要修改“錯(cuò)誤頁碼”欄和“默認(rèn)錯(cuò)誤頁頁腳”欄。圖211 默認(rèn)虛擬主機(jī)的站點(diǎn)配置記錄日記單擊“記錄日記”選項(xiàng),我們選擇記錄到文件到logs/access_log,這里是我們要傳輸?shù)模绻清e(cuò)誤的那我們就會選擇記錄文件到logs/error_log,日志級別我們一般就選擇Debug,逆向DNS查詢我們選擇無逆向查詢,單擊確定保存我們的設(shè)置。圖2.12默認(rèn)虛擬主機(jī)的記錄日志環(huán)境變量單擊“環(huán)境變量”選項(xiàng),可配置CGI腳本的環(huán)境變量,如圖3.13所示

17、圖2.13 我們點(diǎn)開環(huán)境變量選項(xiàng),如圖有三個(gè)空白框,我們在右邊的添加來做出我們想要的設(shè)置,點(diǎn)擊確定保存下來。圖2.14 觀察圖2.14發(fā)現(xiàn)這里還剩下目錄和SSL選項(xiàng),默認(rèn)目錄選項(xiàng)這里有ExccCGL,F(xiàn)ollowSymlinks,Includes,具體的如上圖中所示,我們同樣可以編輯參加,SSL主要是用來加密用,一般我們都用不到。我們打開編輯,這里會有三個(gè)選項(xiàng),第一個(gè)是允許所有主機(jī)訪問該目錄,第二個(gè)是處理拒絕列表后在處理允許列表,第三個(gè)是處理允許列表后再處理拒絕列表。這里我們勾選第一個(gè)。在目錄下我們輸入一個(gè)目錄點(diǎn)擊確定保存如圖3.15。圖2.15 添加虛擬機(jī)是必不可少的一步, 首先我們要有一個(gè)

18、虛擬機(jī)名,然后我們需要選擇一個(gè)目錄來保存我們所進(jìn)行的操作來進(jìn)行一個(gè)存檔在主機(jī)信息這一欄有幾個(gè)選項(xiàng),在這里我們選擇“基于IP的虛擬主機(jī)”,然后給我們的虛擬機(jī)一個(gè)IP地址,最后給我們服務(wù)器主機(jī)起一個(gè)名稱,具體操作如3.16所示。 圖2.16圖2.17 如圖3.18,如果是超級用戶我們同樣要進(jìn)行設(shè)置,我們先點(diǎn)擊站點(diǎn)配置,我們也要為我們的web服務(wù)器設(shè)置如圖所示的默認(rèn)打開的網(wǎng)頁在我們使用虛擬機(jī)時(shí)我們每個(gè)人都需要注冊 一個(gè)用戶,來實(shí)現(xiàn)我們在虛擬機(jī)中通過我們搭建的服務(wù)器來實(shí)現(xiàn)用戶之間傳輸和交流,虛擬機(jī)在我們平時(shí)的關(guān)于網(wǎng)絡(luò)服務(wù)器的搭建與測試中有很大的作用。圖2.18在我們修改之后還是不行的,我們還需要一個(gè)很

19、關(guān)鍵的步驟,那就是重啟htppd服務(wù)。 圖2.19tpd服務(wù)第3章DNS服務(wù)器3.1 DNS服務(wù)器簡介域名服務(wù)是TCP/IP網(wǎng)絡(luò)中最為關(guān)鍵也最為核心的網(wǎng)絡(luò)服務(wù),從其執(zhí)行的主要的功能上來講,如果我們想要實(shí)現(xiàn)IP地址和域名轉(zhuǎn)換就可以通過它來執(zhí)行。域名系統(tǒng)從其使用的具體的結(jié)構(gòu)上來講,它使用的結(jié)構(gòu)是被大家最常用的分布式,而且主要由以下幾個(gè)部分組成。第一個(gè)是域名空間,其含義就是有域名和空間組成,域名就是我們平時(shí)在網(wǎng)站上登錄網(wǎng)址所要使用到的,空間就有點(diǎn)像是虛擬的空間。第二個(gè)是域名服務(wù)器,有了域名空間那就必須給它配備服務(wù)器來處理傳輸?shù)臄?shù)據(jù),這就是其主要作用。第三個(gè)就是解析器,顯然我們在網(wǎng)頁中登錄網(wǎng)址就需要解

20、析器來做解析并發(fā)送請求。在我們的互聯(lián)網(wǎng)中,域名在一個(gè)域中必然是不能有相同的,它屬于比它等級高的域但是它也可以沒有比自己低級的域,如果這里有兩個(gè)域名但是它們所屬的域不同,這是可以被允許的。在整個(gè)Internet中,我們對域做出了分級,就像樹狀圖一樣,有最頂端的域,相反也有最底層的域,最頂層的域我們稱它為根域,最底層的叫它三級域,這其中還包含著頂級域、二級域、三級域,并且基于這樣的一種基礎(chǔ),不斷地向外輻射和高效的擴(kuò)展。頂級域數(shù)目是非常少的,并且通常情況下,他是不能夠輕易的被改變的,有InterNIC來對頂級域進(jìn)行管控,這個(gè)時(shí)候域名服務(wù)器就體現(xiàn)出了它的作用,由它來存儲信息數(shù)據(jù)。跟分級管理一樣,等級高

21、的域就會管理比它等級低的域。例如三級域是在二級域的作用之下進(jìn)行分出的,其相關(guān)信息保存于二級,域服務(wù)器,按照這樣的一種方式是可以進(jìn)行不斷遞推和演化的。以此類推,根域管理頂級域,頂級域管理二級域?;ヂ?lián)網(wǎng)中每一臺計(jì)算機(jī)的域名在命名的過程中,都是必須要充分的遵循相關(guān)的原則的,這樣解析器在解析的時(shí)候也會有條有理,我們平時(shí)登陸用的網(wǎng)址你會發(fā)現(xiàn)一般都是www.開頭的,這個(gè)就是頂級域,后邊就會跟著二級域,現(xiàn)在所有的個(gè)人或者企業(yè)想要建立自己的網(wǎng)站都必須先注冊。3.2 DNS服務(wù)器的類型 我們現(xiàn)在所用的linux系統(tǒng)必須要使用一個(gè)軟件它的名字是BIND,而后named就可以對域名中的解析服務(wù)進(jìn)行全面系統(tǒng)的管理。要

22、配置Internet域名服務(wù)器,還必須在桌面環(huán)境下運(yùn)行“添加/刪除應(yīng)用程序”如下圖刪除應(yīng)用程序界面圖從“DNS名稱服務(wù)器”軟件包組選擇安裝caching-nameserver軟件包,其包含配置Internet域名服務(wù)器所需的初始文件如下圖圖3.2internet域名服務(wù)器所需的初始文件圖3.3 DNS常規(guī)服務(wù)器配置配置Internet域名服務(wù)器是需要使用一組文件如2.1圖,其中最重要的是主配置文件named.conf如圖圖主配置文件named.confnamed守護(hù)進(jìn)程運(yùn)行時(shí)首先從named.conf文件獲取其他配置文件得信息,然后才按照各區(qū)域文件的設(shè)置內(nèi)容提供域名解析服務(wù)。圖3.1第4章 傳

23、輸層協(xié)議上邊我們說到了要想客戶端與服務(wù)器之間能進(jìn)行交流,就必須建立一個(gè)協(xié)議連接,它就是TCP/IP協(xié)議,所以我們必須要對此協(xié)議有一定的了解,知道他們的使用方法。下面我來介紹一下。4.1 TCP/IP協(xié)議 網(wǎng)絡(luò)之間的傳輸必須要進(jìn)行分層而且客戶端與服務(wù)器也必須要對應(yīng)相應(yīng)的層,即在應(yīng)用層HTTP客戶與HTTP服務(wù)器之間通過HTTP協(xié)議,傳輸層客戶邊的TCP就要與服務(wù)器的TCP通過TCP協(xié)議,以此類推,在網(wǎng)絡(luò)層就是IP協(xié)議間的傳輸,在鏈路層就是以太網(wǎng)程序之間通過以太網(wǎng)協(xié)議傳輸,這是他們之間的結(jié)構(gòu)。4.2 IP協(xié)議 我們在生活中經(jīng)常會聽說到什么ip地址之類的,這里的IP是一種協(xié)議,它是把網(wǎng)絡(luò)用戶集中在一

24、起的一種橋梁,只有都遵守了這樣一種協(xié)議,我們才能夠在網(wǎng)絡(luò)中交流,由于IP協(xié)議的靈活性使得很多底層網(wǎng)絡(luò)硬件也能加入到網(wǎng)絡(luò)中來,我們都知道計(jì)算機(jī)是二進(jìn)制,如果想要加入到網(wǎng)絡(luò)中進(jìn)行交流,只要遵守IP協(xié)議就可以加入到網(wǎng)絡(luò)中來。龐大的網(wǎng)絡(luò)群體可能會使我們產(chǎn)生網(wǎng)路真實(shí)存在的幻覺,事實(shí)是網(wǎng)絡(luò)是虛擬的,IP協(xié)議的作用就是把我們這些想要加入到網(wǎng)絡(luò)中來的人通過一種約定好的協(xié)議來聚集在一起交流。4.3 傳輸層協(xié)議TCP是一種傳輸服務(wù),它通過比特流通信,我們會指定一個(gè)端口,我們必須在這個(gè)端口來實(shí)現(xiàn)傳送,客戶機(jī)與服務(wù)機(jī)建立連接必須經(jīng)過三次握手,當(dāng)想要建立連接時(shí),客戶就會想服務(wù)器發(fā)送連接請求,這個(gè)時(shí)候發(fā)送的都是分成一小段

25、一小段的,服務(wù)器也必須相對應(yīng)做出每一段的回應(yīng),回復(fù)確認(rèn)信息,這樣才能建立一個(gè)完整的連接。UDP協(xié)議通常被我們用于傳輸數(shù)據(jù)不多的情況下并且主機(jī)也不需要做出回應(yīng)的那種簡單傳輸。4.3 HTTP協(xié)議因?yàn)槲覀兯罱ǖ姆?wù)器與客戶之間傳輸運(yùn)用的就是這種協(xié)議,所以我們必須要了解這個(gè)協(xié)議并且知道他的優(yōu)缺點(diǎn)和該如何使用。HTTTP協(xié)議的工作原理在我們搭建的服務(wù)器中顯得至關(guān)重要。上邊我們提到過HTTP協(xié)議位于應(yīng)用層,所以是服務(wù)器中最重要的組成部分,它的主要特點(diǎn)就是快速簡單,因?yàn)檫@個(gè)協(xié)議簡單,所以通信速度也就變的很快。因?yàn)镠TTP協(xié)議傳輸?shù)臄?shù)據(jù)對象非常廣泛,所以這也就表現(xiàn)了它的靈活性。HTTP協(xié)議相對其他協(xié)議能省

26、很多的時(shí)間因?yàn)樗幌拗泼看沃荒芴幚硪粋€(gè)請求,只有處理完這個(gè)請求之后,收到客戶那邊的回答之后就可以斷開連接了,因此會大大的節(jié)省了傳輸時(shí)間。當(dāng)然HTTP協(xié)議也有著它的缺點(diǎn),那就是它是一種對之前傳輸過的數(shù)據(jù)沒有記憶,所以每次傳輸數(shù)據(jù)的時(shí)候它都要把之前傳輸過的也再傳輸一遍,這也就間接導(dǎo)致每次傳輸?shù)臄?shù)據(jù)量會很大。HTTP運(yùn)行的前提是TCP所以這就要求我們對TCP協(xié)議的了解必須全面。第5章 具體實(shí)現(xiàn)整個(gè)安裝有以下幾個(gè)步驟,首先安裝linux系統(tǒng),這是基礎(chǔ),第二步是Tomcat和MySQL,緊接著是安裝Apache和PHP,然后是最為復(fù)雜容易出現(xiàn)錯(cuò)誤的一步,Tomcat和Apache的整理,在這個(gè)步驟里我們

27、一定要小心翼翼,否則其間有一點(diǎn)小小的錯(cuò)誤,我們的配置就會全部功虧一簣,最后是5.1 安裝linux系統(tǒng) 因?yàn)槲覀兇舜未罱ǚ?wù)器的操作是在linux系統(tǒng)下進(jìn)行的,所以我們的首要任務(wù)當(dāng)然就是安裝linux系統(tǒng)了,首先我們必須要有一個(gè)裝有l(wèi)inux系統(tǒng)的光盤,而后我們把光盤插到電腦中,然后根據(jù)操作提示進(jìn)行一步步操作,此間可能有很長的等待時(shí)間,很正常,等到所有步驟完成之后,我們就可以進(jìn)行我們下一步的步驟了,安裝vsptd最后我們配置APache。 5.2 Tomcat與MySQL安裝為什么要安裝這個(gè)呢,那是因?yàn)槲覀儽仨氁泄餐恼Z言,這個(gè)我們在系統(tǒng)中運(yùn)行不會出現(xiàn)錯(cuò)誤,只有語言想通時(shí),我們才能完成我們的

28、設(shè)計(jì)。除了安裝Tomcat和MySQL,我們還需要安裝JBC和JDBC,這些我們可以現(xiàn)在百度搜索,下載地址我就不在這里敘述了。一定要下載并且安裝。安裝JDK:#cd #cd downloads#./jdk-1_5_0-linux-i586-rpm.bin 一般這樣就可以了,/usr/java/jdk1.5.0就會出現(xiàn)我們所安裝的JDK,但是盡管我們安裝了JDK,但是如果我們想讓它編譯JAVA,還必須得編輯/etc/profile,最后我們還得加入環(huán)境變量,而這一步我們需要放在文件的末尾。export JAVA_HOME=/usr/java/jdk1.5.0 CLASSPATH=$CLASSPA

29、TH:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:. export PATH=$PATH:$JAVA_HOME/bin 如果想要我們的修改起作用,這里我們一定不能忘記重要的一步,那就是重新啟動,只有重啟了之后才可以實(shí)現(xiàn)?,F(xiàn)在我們拿一個(gè)簡單的java程序來試驗(yàn)一下,world.java,把我們的測試程序輸入進(jìn)去:Public this World public static void main(String args) System.out.println(WELCOME TO CHINA); 接著我們在一個(gè)終端上測試一下回應(yīng): #javac w

30、orld.java;java world如果終端上 顯示了我們所輸入的測試結(jié)果“WELCOME TO CHINA”,這樣說明我們的編譯環(huán)境是正常的,那我們就可以進(jìn)行下一步操作了。我們先把文件jakarta-tomcat-5.0.28.tar.gz下的內(nèi)容解壓一下,然后 解壓的結(jié)果放在目錄 /usr/local/下#tar xvfz jakarta-tomcat-5.0.28.tar.gz#mv jakarta-tomcat-5.0.28 tomcat然后我們在/etc/profile文件的末尾加入export CATALINA_HOME=/usr/local/tomcat如果我們想要開機(jī)自啟T

31、Omcat那我們必須得修改一個(gè)內(nèi)容,具體修改內(nèi)容如下/usr/local/tomcat/bin/startup.sh內(nèi)容為:export JAVA_HOME=/usr/java/jdk1.5.0export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.export PATH=$PATH:$JAVA_HOME/binexport CATALINA_HOME=/usr/local/tomcat/usr/local/tomcat/bin/catalina.sh start還得在/etc/rc.d/rc.lo

32、cal中添加:/usr/local/tomcat/bin/startup.sh#shutdown重新啟動了之后呢,我們再次打開瀏覽器,如果在瀏覽器中顯示了歡迎我們的字語,那就說明我們的設(shè)置成功了,相反如果沒有,那我們就得重新試了。下面是hen關(guān)鍵的一步那就是安裝MySQL 添加mysql用戶和組#groupadd mysql #useradd -g mysql mysql#tar xvfz mysql-4.1.11-0.tar 解包#./configure -prefix=/usr/local/mysql #make /*編譯*/#make install /*安裝*/#./scripts/m

33、ysql_install_db.sh #chown -R root /usr/local/mysql /*recursion修改權(quán)限*/#chown -R mysql /usr/local/mysql/var /*recursion修改權(quán)限*/#chgrp -R mysql /usr/local/mysql /*recursion修改權(quán)限*/#cp support-files/f /etc/f /*配置文件*/如果提示此字語overwrite?-那我們就得選擇yes#/usr/local/mysql/bin/safe_mysqld -user=mysql &后

34、面顯示的如果是11357,1357為進(jìn)程號,是隨機(jī)的一個(gè)值,那就說明我們的安裝沒有問題,成功了。下一步安裝mySQL的JDBC驅(qū)動把mysql-connector-java-3.1.7-ga.tar.gz解壓縮到/tmp目錄#cd /tmp#cp mysql-connector-java-3.1.7-ga-bin.jar /usr/local/tomcat/common/lib把mysqs能夠訪問數(shù)據(jù)的權(quán)限提高,這樣后邊就能正常運(yùn)行了#cd /usr/local/mysql/bin #./mysql mysqlGRANT ALL PRIVILEGES ON *.* TO mysqllocalh

35、ost.localdomain domain IDENTIFIED BY password; mysqlquit5.3 Apache與PHP安裝前邊我們安裝了安裝Tomcat和Mysql以及JDBC,下邊就是安裝的重中之重了,那就是安裝PHP和Apache。具體安裝過程如下:#cd /downloads #tar xvfz httpd-2.0.53.tar.gz #cd httpd-2.0.53 #./configure -prefix=/usr/local/apache -enable-so#make #make install clean /*安裝,并且清楚編譯時(shí)產(chǎn)生的文件*/編輯/usr

36、/local/apache/conf/httpd.conf: 把index.php index.jsp 加在DirectoryIndex后面再添加一行 AddType application/x-httpd-php .php .phtml .php3 .inc AddDefaultCharset后面修改成GB2312執(zhí)行#/usr/local/apache/bin/apachectl start啟動Apache,我們在網(wǎng)頁中訪問網(wǎng)址http:/localhost如果出現(xiàn)了Apache的歡迎詞,就說明我們安裝成功了,如果沒有說明我們肯定在哪個(gè)過程中出現(xiàn)了錯(cuò)誤,我們返回之前的步驟檢查一下哪里出錯(cuò)了

37、 若要開機(jī)自動啟動Apache,那么就要在文件/etc/rc.d/rc.local中加入:一行/usr/local/apache/bin/apachectl start如何安裝PHP,如下先解壓然后編譯之后安裝以下內(nèi)容#cd /downloads #tar xvfz php-5.0.4.tar.gz #cd php-5.0.4 #./configure -with-apxs2=/usr/local/apache/bin/apxs -enable-track-vars -with-mysql=/usr/local/mysql #make #make install #cp php.ini-dis

38、t /usr/local/lib/php.ini 安裝完以后我們來進(jìn)行測試,首先我們來運(yùn)行#/usr/local/apache/bin/apachectl restart然后我們重啟一下我們安裝的apache服務(wù)器,然后我們新建一個(gè)文件test.php放在/usr/local/apache/htdocs中緊接著用vi內(nèi)容: 在進(jìn)入網(wǎng)頁輸入這個(gè)網(wǎng)址http:/localhost/test.php就會出現(xiàn)有關(guān)于服務(wù)器的信息,如果出現(xiàn)了那那就說明我們安裝的apache可以對PHP文件做出解析。5.4 Apache和Tomcat 將tomcat和apache整理在一起是一個(gè)非常復(fù)雜的過程,一不小心就會

39、出現(xiàn)錯(cuò)誤,而且一個(gè)微小的錯(cuò)誤就會導(dǎo)致整個(gè)過程白費(fèi),強(qiáng)調(diào)一下,這里我們一定要小心再小心。解壓之后編譯,編譯完之后安裝以下內(nèi)容jk2#cd /downloads#tar -xzvf jakarta-tomcat-connectors-jk2-src-current.tar.gz #cd jakarta-tomcat-connectors-jk2-2.0.4-src/jk/native2 #./configure -with-apxs2=/usr/local/apache/bin/apxs -enable-EAPI #make #make install#cd ./jakarta-tomcat-co

40、nnectors-jk2-2.0.4-src/jk/build/jk2/apache2 #cp *.so /usr/local/apache/modules/編輯完文件/usr/local/tomcat/conf/perties之后,我們在它的末尾加入以下內(nèi)容:# list of needed handlers. handler.list=channelSocket,request # Override the default port for the channelSocket channelSocket.port=8009此處的# 我們需要打進(jìn)去這里的意義是不同的創(chuàng)建文件/u

41、sr/local/apache/conf/perties或者對這個(gè)文件進(jìn)行編輯具體內(nèi)容如下:# only at beginnin. In production uncomment it out logger.apache2 level=DEBUGshm file=/usr/local/apache/logs/shm.file size=# Example socket channel, override port and host. channel.socket:localhost:8009 port=8009 host=# define the wo

42、rker ajp13:localhost:8009 channel=channel.socket:localhost:8009# Uri mapping uri:/*.jsp worker=ajp13:localhost:8009 這里的*的意義我們在上邊強(qiáng)調(diào)過,這里一樣需要輸入。創(chuàng)建文件/usr/local/apache/conf/httpd.conf或者對此文件進(jìn)行編輯并在它的最后加入:LoadModule jk2_module modules/mod_jk2.so DocumentRoot /usr/local/tomcat/webapps/ROOT 這里我們將/*Apache默認(rèn)的Do

43、cumentRoot設(shè)為/usr/local/apache/htdocs,Tomcat默認(rèn)的不是一樣而是/usr/local/tomcat/webapps */最后一步還是跟前邊安裝的一樣,進(jìn)行測試, 同樣進(jìn)入網(wǎng)頁輸入網(wǎng)址看我們安裝成功沒,如果顯示了歡迎我們的信息,那就說明我們安裝的成功了。5.5 安裝vsftpd首先我們輸入網(wǎng)址:/users/cevans/ vsftpd-2.0.tar.gz然后我們在彈出的網(wǎng)頁中下載軟件。在安裝VSFTPD之前我們需要進(jìn)行以下操作我們需要一個(gè)叫noody的用戶,如果存在我們是不用添加的,不存在我們就需要先添加一個(gè)

44、如下所示# useradd nobody然后我們需要目錄,并且這個(gè)目錄里必須是空的:添加目錄/usr/share/empty,如果沒有的話那我們就添加# mkdir /usr/share/empty/我們現(xiàn)增加一個(gè)用戶名字叫ftp,假如沒有那么/var/ftp/就是FTP的根目錄,當(dāng)然我們也可以換成; # mkdir /var/ftp/ # useradd -d /var/ftp ftp #chown root /var/ftp #chmod go -w /var/ftp安裝VSFTPD及其配置、執(zhí)行和幫助文件。 #cd /downloads #tar xzvf vsftpd-2.0.1.tar.gz #cd vsftpd-2.0.1 #make#mkdir /usr/local/man/man5 #mkdir /usr/local/man/man8 #make install #cp vsftpd.conf /etc我們把listen=YES加入到/etc/vsftpd.conf的末尾同樣如果我們要

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論