HTTP服務器的構建

 

 

Web服務器是在網絡中實現信息發佈、資料查詢、數據處理、視頻欣賞等多項應用而搭建的服務平臺,它使得成千上萬的用戶通過簡單的圖形界面就可以訪問各個大學、組織、公司等的最新信息和各種服務。
Web服務器是因特網上最主要的服務之一,即人們常說的www服務。Web服務的核心技術是超文本標記語言HTML和超文本傳輸協議HTTP。Web瀏覽器和服務器通過HTTP協議來建立鏈接、傳輸信息和終止鏈接。Web瀏覽器將請求發送到web服務器,服務器響應這種請求,將其所有請求的頁面或文檔傳送給web服務器,瀏覽器獲得web頁面並顯示出來。
其中目前世界上最流行的、也是最好用的web服務器還是Apache;其主要特點是簡單、速度快、性能穩定,並可做代理服務器來使用。它可以支持SSL技術,並支持多個虛擬主機。
首先要安裝Apache服務器,它所需要的軟件包有http-2.2.3-11.el5.i386(主軟件包) http-devel-2.2.3(Apache開發程序包)
由於Apache在安裝時就採用了一系列默認值,所以不對它進行配置也可以讓www服務器運行起來。只需要將主頁放到/var/www/html/目錄下即可;其中核心的配置文件是httpd.conf,它位於/etc/httpd/conf/httpd.conf目錄下,大部分設置都是通過修改該配置文件來完成的,該配置文件其中大部分都是註釋部分
整個配置文件可以分爲三個部分;全局環境配置(它所能處理的併發請求數或者在哪裏找其配置文件)、主服務配置(指令的設置及響應<VirtalHost>所處理的請求)、虛擬主機配置(在服務器上實現多個域名和主機名的服務)。
在修改主配置文件後,重新啓動一下服務就可以顯示出來 (使用命令service httpd restart);再將製作好的網頁及相關資料放在文檔目錄/var/www.html中;就可以打開瀏覽器來測試 。(注:主頁的文件名稱一定要是index.html)
可以通過查看日誌來查看服務能否正常啓動,命令 vim /etc/httd/logs/error_log 基本的http服務器就可以使用了。
但由於網站的飛速發展,使得傳統的一臺服務器對應一個網站的方式已經不能適應其需求了,從而出現了虛擬機技術。虛擬主機在在web服務器,可以爲多個單獨域名提供web服務,並且每個域名完全獨立,包括具有完全獨立的文檔目錄及設置。不但通過每個域名訪問的內容完全獨立,並且使用另一個域名無法訪問其他域名提供的網頁內容。
在Apache服務器上配置虛擬主機的三種方式、:基於端口、基於IP地址、基於域名的幾種。如下:
虛擬主機
    基於IP 使用不同地址 端口相同
       基於端口   使用相同地址 端口不同
       基於域名 IP地址與端口號相同 主機名不同
要想啓用虛擬主機則啓用NameVirtualHost、CGI 協議,且得先取消中心主機,註釋中心主機的DocumentRoot
虛擬主機的創建應用:(本實驗爲創建新配置文件、新目錄,有個別設置需要在主配置文件/etc/httpd/conf/httpd.conf/中修改。還有在顯示頁面的主機上的host文件(在C:\WINDOWS\system32\drivers\etc下,有可能隱藏了文件)也要分別添加其主機名)

 

  1. [root@localhost conf.d]# vim virtual.conf  創建文件  (在指定目錄下)  
  2. NameVirtualHost 172.16.34.2:80  添加主機ip  
  3. <VirtualHost 172.16.34.1:80>  
  4.         ServerName hello.magedu.com  網站名  
  5.         DocumentRoot "/www/magedu.com"  網站路徑  
  6.         CustomLog /var/log/httpd/magedu.com/access_log combined   網站產生日誌  
  7. </VirtualHost>  
  8.  
  9. <VirtualHost 172.16.34.2:80>  
  10.         ServerName www.a.org  
  11.         DocumentRoot "/www/a.org" 
  12.          CustomLog /var/log/httpd/a.org/access_log combined  
  13.          <Directory "/www/a.org">  添加密碼  
  14.             Options none  
  15.            AllowOverride authconfig  
  16.            AuthType basic  
  17.            AuthName "Restrict area." 
  18.            AuthUserFile "/etc/httpd/.htpasswd" 
  19.            Require valid-user  
  20.         </Directory>  
  21. </VirtualHost>  
  22.  
  23. <VirtualHost 172.16.34.2:80>  
  24.         ServerName www.d.gov  
  25.         DocumentRoot "/www/d.gov" 
  26.        CustomLog /var/log/httpd/d.gov/access_log combined  
  27. <Directory "/www/d.gov">  限制用戶登錄  
  28.        Options none  
  29.        AllowOverride none  
  30.        Order deny,allow  
  31.        Deny from 192.168.0.232()  
  32.        </Directory>  
  33.        </VirtualHost>  
  34.  
  35. <VirtualHost 172.16.34.1:8080>  
  36.         ServerName www.b.net  
  37.         DocumentRoot "/www/b.net" 
  38. </VirtualHost>  

 

以上的命令中分別實驗了基於端口的80及8080 ,基於ip地址的34.1及34.2;和基於主機名的www.a.orgwww.d.gov
[root@localhost conf.d]# mkdir /www/b.net   分別創建指定目錄 (在指定目錄下編輯演示網頁,網站名必須是index.html)
[root@localhost conf.d]# vim /www/b.net/index.html          編輯創建演示網頁
[root@localhost conf.d]# service httpd restart
Stopping httpd:                                            [ OK ]      重新啓動服務

 

  1. [root@localhost conf.d]# tail /var/log/httpd/error_log 查看錯誤日誌                     
  2.     [root@localhost conf.d]# tail /var/log/httpd/access_log  查看正確日誌信息  
  3. [root@localhost conf.d]# ll -d /var/log/httpd 查看權限/  
  4. drwx------ 2 root root 4096 Apr  5 15:26 /var/log/httpd/  
  5. [root@localhost conf.d]# cd /var/log/httpd/  
  6. [root@localhost httpd]# mkdir a.org magedu.com d.gov     創建日誌目錄  

 

通過以上命令的使用就可以用來創建一個虛擬目錄了,其中實現了3種,還設定了限制用戶登錄方式、爲指定用戶添加登錄密碼、創建日誌系統。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章