Apache服務器配置全攻略(八)
發表于:2007-05-25來源:作者:點擊數:
標簽:
用于設置訪問控制的設置主要是針對目錄和文件進行設置的,然而也可以針對不同的URL進行訪問控制的設置,這樣就不必擔心ScriptAlias、Alias是否將路徑設置到了受控制的目錄之外了。針對URL進行控制的語句為 Location語句,這樣不但能對服務器上的文件、CGI提
用于設置訪問控制的設置主要是針對目錄和文件進行設置的,然而也可以針對不同的URL進行訪問控制的設置,這樣就不必擔心ScriptAlias、Alias是否將路徑設置到了受控制的目錄之外了。針對URL進行控制的語句為 Location語句,這樣不但能對服務器上的文件、CGI提供保護,此外,它還能保護不能找到對應文件,而是由服務器本身提供的特殊功能URL。http://servername/server-status用于報告當前Apache服務器的狀態,http://servername/server-info用于報告Apache 服務器的統計信息。與此相關的設置還有ExtendedStatus參數,可以讓服務器輸出更詳細的的報告。
#
#ProxyRequests On
#
#
# Order deny,allow
# Deny from all
# Allow from .your_domain.com
#
#ProxyVia On
#CacheRoot "/www/proxy"
#CacheSize 5
#CacheGcInterval 4
#CacheMaxExpire 24
#CacheLastModifiedFactor 0.1
#CacheDefaultExpire 1
#NoCache a_domain.com another_domain.edu joes.garage_sale.com
#
Apache服務器本身就具備代理的功能,然而這要求加載入mod_proxy模塊。這能使用IfModule語句進行判斷,如果存在mod_proxy模塊,就使用ProxyRequests打開代理支持。此后的Directory用于設置對Proxy功能的訪問權限設置,以及用于設置緩沖的各個參數設置。
虛擬主機
#NameVirtualHost 12.34.56.78:80
#NameVirtualHost 12.34.56.78
#
# ServerAdmin webmaster@host.some_domain.com
# DocumentRoot /www/docs/host.some_domain.com
# ServerName host.some_domain.com
# ErrorLog logs/host.some_domain.com-error_log
# CustomLog logs/host.some_domain.com-a
clearcase/" target="_blank" >ccess_log common
#
#
缺省設置文件中的這些內容是用于設置命名基礎的虛擬主機服務器時使用。
其中NameVirtualHost 來指定虛擬主機使用的IP地址,這個IP地址將對應多個 DNS名字,如果Apache使用了Listen 參數控制了多個端口,那么就可以在這里加上端口號以進一步進行區分對不同端口的不同連接請求。此后,使用 VirtualHost 語句,使用NameVirtualHost指定的IP地址作參數,對每個名字都定義對應的虛擬主機設置。
虛擬主機是在一臺Web服務器上,可以為多個單獨域名提供Web服務,并且每個域名都完全獨立,包括具有完全獨立的文檔目錄結構及設置,這樣域名之間完全獨立,不但使用每個域名訪問到的內容完全獨立,并且使用另一個域名無法訪
問其他域名提供的網頁內容。
虛擬主機的概念對于ISP來講非常有用,因為雖然一個組織可以將自己的網頁掛在具備其他域名的服務器上的下級往址上,但使用獨立的域名和根網址更為正式,易為眾人接受。傳統上,必須自己設立一臺服務器才能達到單獨域名的目的,然而這需要維護一個單獨的服務器,很多小單位缺乏足夠的維護能力,更為合適的方式是租用別人維護的服務器。ISP也沒有必要為一個機構提供一個單獨的服務器,完全可以使用虛擬主機能力,使服務器為多個域名提供Web服務,而且不同的服務互不干擾,對外就表現為多個不同的服務器。
有兩種設定虛擬主機的方式,一種是基于HTTP 1.0標準,需要一個具備多IP
地址的服務器,再配置DNS 服務器,給每個IP地址以不同的域名,最后才能配置Apache的配置文件,使服務器對不同域名返回不同的Web文檔。由于這需要使用額外的IP地址,對每個要提供服務的域名都要使用單獨的IP地址,因此這種方式實現起來問題較多。
可以在一個
網絡界面上綁定多個IP地址,
Linux下需要使用ifconfig的 alias參數來進行這個配置,但此時會影響網絡
性能。
HTTP 1.1標準在協議中規定了對瀏覽器和服務器通信時,服務器能夠跟蹤瀏
覽器請求的是哪個主機名字。因此可以利用這個新特性,使用更輕松的方式設定
虛擬主機。這種方式不需要額外的IP地址,但需要新版本的瀏覽器支持。這種方式已經成為建立虛擬主機的標準方式。
要建立非IP基礎的虛擬主機,多個域名是不可少的配置,因為每個域名就對
應一個要服務的虛擬主機。因此需要更改DNS服務器的配置,為服務器增加多個C NAME選項,如:
linux IN A 192.168.1.64
vhost1 IN CNAME linux
vhost2 IN CNAME linux
基本的設置選項都是為了linux主機設定的,如果要為vhost1和vhost2設定
虛擬主機,就要使用VirtualHost語句定義不同的選項,在語句中可以使用配置文件前面中的大部分選項,而可以重新定義幾乎所有的針對服務器的設置。
NameVirtualHost 192.168.1.64
DocumentRoot /www/data
ServerName linux.example.org.cn
DocumentRoot /vhost1
ServerName vhost1.example.org.cn
DocumentRoot /vhost2
ServerName vhost2.example.org.cn
這里需要注意的是,VirtualHost的參數地址一定要和NameVirtualHost定義的地址相一致,必須保證所有的值嚴格一致,Apache服務器才承認這些定義是為這個IP地址定義的虛擬主機。
此外,定義過NameVirtualHost之后,那么對這個IP地址的訪問都被區分不同的虛擬主機進行處理,而對其他IP地址的訪問,例如127.0.0.1,才應用前面定義的缺省選項。
<完>
原文轉自:http://www.kjueaiud.com
老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月
|