<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      APACHE(3)

      [摘要]3.21 Port 指令 語法: Port 數字 預設: Port 80 用於: server config 狀態: 核心 這個 Port 指令設定服務器監聽的網路端口號。數字是 0 到 65535...
      3.21 Port 指令

      語法: Port 數字
      預設: Port 80
      用於: server config
      狀態: 核心

      這個 Port 指令設定服務器監聽的網路端口號。數字是 0 到 65535 的
      一個數目;某些端口號(特別是低於 1024 的)保留給特殊的協定。參閱
      /etc/services 里定義的一些端口的列表;標準 http 協定使用 80 端口。

      Port 80 是 Unix's 的一個特別端口。所有低於 1024 的端口號都是保留給
      系統使用的,例如,一般使用者(non-root)不能使用它們;取而代之的
      是他們可以使用較高的端口號。

      要使用 80 端口你必須以 root 帳號啟動服務器。在連接到該端口後,接受
      請求之前,阿帕奇將會切換為藉由 User 指令所設定權限較低的使用者
      身分。

      如果你不能使用 80 端口,選擇任何其它沒有使用到的端口。非 root 使用
      者必須選擇高於 1023 的端口號,像是 8000 。

      安全: 如果你是以 root 啟動服務器,確定不要把 User 設為 root 。
      如果你以 root 身分處理連線的話,你的站臺可能會暴露在攻擊下。


      3.22 require 指令

      語法: require 項目名稱 項目 項目 ...
      用於: directory, .htaccess
      需求: AuthConfig
      狀態: 核心

      這個指令選擇經過驗認可以存取目錄的使用者。允許使用的語法是:

      。require user 使用者辨識碼 使用者辨識碼 ...
      只有注明的使用者能存取該目錄。

      。require group 群組名稱 群組名稱 ...
      只有在注明群組里的使用者能存取該目錄。

      。require valid-user
      所有合法的使用者都可以存取該目錄。

      如果 require 出現在 節段里,那麼它會限制所注明的存取
      方式,否則它會限制所有的存取方式。例如:

      AuthType Basic
      AuthName somedomain
      AuthUserFile /web/users
      AuthGroupFile /web/group
      Limit <GET POST>
      require group admin


      Require 必須藉由 AuthName 以及 AuthType 這些指令,以及配合像是
      AuthUserFile 以及 AuthGroupFile 指令(用來定義使用者與群組)
      以便正確運作。


      3.23 ResourceConfig 指令

      語法: ResourceConfig 文件名稱
      預設: ResourceConfig conf/srm.conf
      用於: server config, virtual host
      狀態: 核心

      此服務器讀取 httpd.conf 文件之後將會繼續讀取這個文件以取得更多
      指令。文件名稱系相對於 ServerRoot 路徑。此特色可以使用如下的方
      式關閉:

      ResourceConfig /dev/null

      原本這個文件包含大部分指令,除了服務器配置及 <Directory> 節區
      以外;事實上它現在可以包含任何可以用於服務器配置的指令。


      3.24 ServerAdmin 指令

      語法: ServerAdmin 電子郵件地址
      用於: server config, virtual host
      狀態: 核心

      ServerAdmin 設定電子郵件地址,服務器回傳任何錯誤訊息給客戶端時
      會包含這個地址。

      設定一個像這樣的地址可能會有用,例如

      ServerAdmin www-admin@foo.bar.com

      因為使用者并不會永遠知道他們是跟在哪臺服務器打交道!


      3.25 ServerName 指令

      語法: ServerName 完整的領域名稱
      用於: server config, virtual host
      狀態: 核心

      這個 ServerName 指令設定服務器的主機名稱;這只有在建立重導 URL
      的時候使用。如果沒有指定它,那麼服務器會試圖從其 IP 位址來決定
      ;然而這個方法可能不能信賴,或者無法回傳適當的主機名稱。例如:

      ServerName www.wibble.com

      如果正式(canonical) 名稱是 monster.wibble.com 它還能夠使用上述
      的名稱。


      3.26 ServerRoot 指令

      語法: ServerRoot 目錄名稱
      預設: ServerRoot /usr/local/etc/httpd
      用於: server config
      狀態: 核心

      這個 ServerRoot 指令設定服務器所在的目錄。它典型會包含有子目錄
      conf/ 以及 logs/ 。其它配置檔的相對路徑是相對於這個路徑。


      3.27 ServerType 指令

      語法: ServerType 型態
      預設: ServerType standalone
      用於: server config
      狀態: 核心

      這個 ServerType 指令設定系統如何執行這個服務器。型態可以是其中
      之一:

      inetd
      服務器將由系統程序 inetd 執行;啟動服務器使用的命令加在
      /etc/inetd.conf 文件里。

      standalone
      服務器將會作為服務程序(daemon)執行;啟動服務器使用的命令
      加在系統啟動指令稿里(/etc/rc.local or /etc/rc.d/...)。

      inetd 在這兩個選項里是較少使用的。因為接收到每個 http 連線就會
      重頭開始執行一份新的服務器拷貝;連線結束後,這支程序就會結束。
      每次連線要付出的代價很高,但是因為安全上的理由,某些管理者喜歡
      這個選項。

      standalone 是 ServerType 使用最普遍的設定,因為它更為有效率。
      服務器啟動一次,而且服務所有的連線。如果你想要執行阿帕奇來服務
      一個忙碌的站臺, standalone 大概將會是你唯一的選擇。

      安全: 如果你對安全性有偏執,以 inetd 模式來執行它。兩種方式都
      不能絕對確保安全性,但是大部分人使用 standalone 用得很高興時,
      inetd 大概比較不會遭到攻擊。


      3.28 StartServers 指令

      語法: StartServers 數字
      預設: StartServers 5
      用於: server config
      狀態: 核心

      這個 StartServers 指令設定啟動時建立的子服務程序數量。因為程序
      的數量是依據負載動態控制的,通常沒有什麼理由得要調整這個參數。

      參閱 MinSpareServers 以及 MaxSpareServers 。


      3.29 TimeOut 指令

      語法: TimeOut 數字
      預設: TimeOut 1200
      用於: server config
      狀態: 核心

      TimeOut 這個指令設定服務器接收一個請求以及完成一個請求最長的等
      待時間,以秒為單位。所以如果它花費比 TimeOut 更多秒來讓客戶端
      傳送請求或接收回應,服務器將會中斷該連線。因此 TimeOut 限制一
      次可以傳輸的最大資料量;對於大文件,以及慢速網路傳輸時間可能會
      很久。


      3.30 User 指令

      語法: User 使用者辨識碼
      預設: User #-1
      用於: server config
      狀態: 核心

      User 這個指令設定服務器用來回答請求的使用者辨識碼。為了要能夠
      使用這個指令,必須以 root 身分起始執行獨立的服務器。Unix使用者
      辨識碼可以是其中之一:

      一個使用者名稱
      藉由名稱參照給定的使用者。

      # 跟隨著使用者編號
      藉由使用這個編號參照他們。

      這個使用者應該不能有存取外界所不能看到的文件的權限,而且與此類
      似,這個使用者應該不能執行對 httpd 要求而言沒有意義的程序碼。
      建議你特別為執行這個服務器設立新的使用者以及群組。某些管理者使
      用 nobody 但是這并非永遠可行或合適的。

      注意: 如果你以非 root 使用者的身分啟動這個服務器,它將無法切換
      到權限較低的使用者,并且取而代之的是它將會繼續以原使用者身份來
      執行。如果你真的是以 root 啟動這個服務器,那麼這個父程序一般仍
      然以 root 身分在執行。

      安全: 不要把 User(or Group) 設為 root 除非你確實知道你在做什麼
      以及會有怎麼樣的危險。


      3.31 <VirtualHost> 指令

      語法: <VirtualHost 位址>...</VirtualHost>
      用於: 服務器配置
      位於: 核心部份

      <VirtualHost> 以及 </VirtualHost> 用來把一組指令包裝起來,這些
      指令將只會應用到某個特定的虛擬主機上。任何可用於虛擬主機的指令
      都可以使用。當服務器接收到某個特定主機上的文件請求的時候,它會
      使用包裝在 <VirtualHost> 節段里的配置指令。位址可以是

      。虛擬主機的 IP 位址
      。虛擬主機的 IP 位址的完整領域名稱。

      □例:

      <VirtualHost host.foo.com>
      ServerAdmin webmaster@host.foo.com
      DocumentRoot /www/docs/host.foo.com
      ServerName host.foo.com
      ErrorLog logs/host.foo.com-error_log
      TransferLog logs/host.foo.com-access_log
      </VirtualHost>

      目前,每段 VirtualHost 必須符合服務器不同的 IP 位址,所以服務
      機器必須配置成能夠接收多個位址的 IP 封包。如果該機器并沒有多個
      網路界面,那麼這可以配合 ifconfig alias 指令來完成(如果你的作
      業系統支援這個功能),或是配合像是 VIF(for SunOS(TM)4.1.x)一類
      的核心修補檔。


      第四章

      阿帕奇標準模組


      4.1 mod_access 模組

      這個模組包含在 mod_access.c 文件里,而且依預設會編譯進去。它提
      供以客戶端主機名稱或 IP 位址為基礎的存取控制。


      4.1.1 allow

      語法: allow from 主機 主機 ...
      用於: directory, .htaccess
      需求: Limit
      狀態: 基礎
      模組: mod_access

      allow 這個指令影響能夠存取某特定目錄的主機;典型是用在
      節區里。主機可以是下列之一:

      all
      允許所有的主機存取。

      (部份)領域名稱
      允許名稱為此字串或以此字串結束的主機存取。

      完整的 IP 位址
      允許該 IP 位址的主機存取。

      部份的 IP 位址
      某個 IP 位址第一到第三個位元組,作為子網路限制之用。

      □例:

      allow from .ncsa.uiuc.edu

      允許在指定領域里的所有主機進行存取。

      注意這比較的是整個的內容;所以 bar.edu 不會符合 foobar.edu 。

      參閱 deny 以及 order 指令。


      4.1.2 deny

      語法: deny from 主機 主機 ...
      用於: directory, .htaccess
      需求: Limit
      狀態: 基礎
      模組: mod_access

      deny 這個指令影響能夠存取某特定目錄的主機;典型是用在
      節區里。主機可以是下列之一:

      all
      拒絕所有的主機存取

      (部份)的領域名稱
      拒絕名稱為此字串或以此字串結束的主機存取。

      完整的 IP 位址
      拒絕該 IP 位址的主機存取。

      部份的 IP 位址
      某個 IP 位址第一到第三個位元組,作為子網路限制之用。

      □例:

      deny from 16

      拒絕在指定網路里的所有主機進行存取。

      注意這比較的是整個的內容;所以 bar.edu 不會符合 foobar.edu 。

      參閱 allow 以及 order 指令。


      4.1.3 order

      語法: order 次序
      預設: order deny, allow
      用於: directory, .htaccess
      需求: Limit
      狀態: 基礎
      模組: mod_access

      order 這個指令控制評估 allow 以及 deny 指令的次序。次序可以是
      其中之一:

      deny,allow
      在 allow 指令之前評估 deny 指令

      allow,deny
      在 deny 指令之前評估 allow 指令

      mutual-failue
      只有那些出現在 allow 列表里而且沒有出現在 deny 列表里的
      主機可以進行存取。

      □例:

      order deny,allow deny from all allow from .ncsa.uiuc.edu

      允許在 ncsa.uiuc.edu 這個領域里的主機進行存。痪芙^所有其它的
      主機存取。


      4.2 mod_alias 模組

      這個 mod_alias 模組包含在 mod_alias.c 文件里,而且依預設會編
      譯進去。它提供的功能是對映主機文件系統的不同部份到文件樹去,及
      URL 轉向。


      4.2.1 Alias

      語法: Alias url-路徑 目錄-文件名稱
      用於: server config, virtual host
      狀態: 基礎
      模組: mod_alias

      Alias 這個指令使文件可以存放在 DocumentRoot 之外的本地文件系統
      里。以 url-路徑 開始的 URLs 將會被對映到以 目錄-文件名稱 開始
      的本地文件去。例如:

      Alais /image /ftp/pub/image

      對於 http://myserver/images/foo.gif 的這個請求會使得服務器回傳
      文件 /ftp/pub/image/foo.gif 。

      參閱 ScriptAlias 指令。


      4.2.2 Redirect

      語法: Redirect url-路徑 url
      用於: server config, virtual host
      狀態: 基礎
      模組: mod_alias

      Redirect 這個指令對映舊的 URL 到新的去。新的 URLs 會被回傳給
      客戶端以便配合新的位址再次嘗試擷取。Url-路徑 (%-decoded)路徑;
      任何以這個路徑作為開始的文件請求都將回傳一個錯誤并重導到以 url
      作為開始的新(%-encoded) url 去。例如:

      Redirect /service http://foo2.bar.com/service

      如果客戶端請求 http://myserver/service/foo.txt 則會被告知應該
      擷取 http://foo2.bar.com/service/foo.txt 來取代。

      注意: 無論配置檔里的次序如何,Redirect 指令優先於 Alias 以及
      ScriptAlias 指令。


      4.2.3 ScriptAlias

      語法: ScriptAlias url-路徑 目錄-文件名稱
      用於: server config, virtual host
      狀態: 基礎
      模組: mod_alias

      ScriptAlias 這個指令除了還另外把目標目錄標記為包含 CGI 指令稿
      以外其功能與 Alias 指令相同,以 url-路徑 作為開始的 URLs 將會
      被對映到以 目錄-文件名稱 作為開始的指令稿去。例如:

      ScriptAlias /cgi-bin/ /web/cgi-bin/

      對於 http://myserver/images/foo 的這個請求會使服務器去執行指令
      稿 /web/cgi-bin/foo 。


      4.3 mod_asis 模組

      這個模組包含在 mod_asis.c 文件里,而且依預設會編譯進去。它是為
      .asis 文件而提供的。任何 mime 型態為 httpd/send-as-is 的文件都
      將由這個模組處理。


      4.3.1 目的

      允許定義文件的型態,如此阿帕奇可以不加 HTTP 標頭(headers) 傳送
      它們。

      這可以用來從服務器傳送任何型態的資料,包括重導(redirects) 以及
      其它特殊的 HTTP 回應,而不需要 cgi-script 或是 nph script 。


      4.3.2 用法

      在服務器配置檔里,定義一個稱為 httpd/send-as-is 的 mime 型態,
      例如

      AddType httpd/send-as-is asia

      這定義 .asis 副文件名是新的 httpd/send-as-is mime 型態。任何副
      文件名是 .asis 的文件內容由阿帕奇送出給客戶端時幾乎不會有任何的
      改變?蛻舳藢⑿枰 HTTP 標頭來聯系,所以別忘記它們。 A Status:
      仍然需要標頭;此資料應該是 3位數字的 HTTP 回應碼,跟隨一段文字
      訊息。

      這里有個示例檔,其內容是告訴客戶端有個文件被重定向送出。

      Status: 302 Now where did I leave that URL
      Location: http://xyz.abc.com/foo/bar.html
      content-type: text/html


      <HEAD>
      <TITLE>Lame execuses`R'us</TITLE>
      </HEAD>
      <BODY>
      <H1>Fred's exceptionally wonderful page has moved to
      <A HREF="http://xyz.abc.com/foo/bar.html">Joe's</A>site
      </H1>
      </BODY>


      注意: 服務器一定會在送給客戶端的資料里加上 Date: 以及 Server:
      標頭,所以不應該包含在這個文件里。服務器不會加上 Last-Modified
      標頭,所以應該要才對。


      4.4 mod_auth 模組

      這個模組包含在 mod_auth.c 文件里,而且依預設會編譯進來。它提供
      的功能是使用文字文件來執行使用者驗認。


      4.4.1 AuthGroupFile

      語法: AuthGroupFile 文件名稱
      用於: directory, .htaccess
      需求: AuthConfig
      狀態: 基礎
      模組: mod_auth

      AuthGroupFile 這個指令設定一個文本文件的名稱,這個文本文件包含用來
      執行使用者驗認的使用者群組列表。文件名稱是群組文件的絕對路徑。

      這個群組文件的每一行包括一個群組名稱,跟隨一個冒號,其後是藉由
      空白隔開的使用者名稱。例如:

      mygroup: bob joe anne

      注意搜尋很大的群組文件是很沒有效率的;應該用 AuthDBMGroupFile
      來取代它。

      安全: 確定這個 AuthGroupFile 儲放在服務器的文件樹之外;不要把
      它放在它保護的目錄里。否則,客戶端將能夠下載這個 AuthGrpupFile
      文件。

      參閱 AuthName, AuthType 以及 AuthUserFile 。


      4.4.2 AuthUserFile

      語法: AuthUserFile 文件名稱
      用於: directory, .htaccess
      需求: AuthConfig
      狀態: 基礎
      模組: mod_auth

      這個 AuthUserFile 指令設定一個文本文件的名稱,這個文本文件包含用來
      執行使用者驗認的使用者以及密碼列表。文件名稱是到群組文件的絕對
      路徑。

      這個使用者文件的每一行包括一個使用者名稱,跟隨一個冒號,其後是
      藉由 crypt() 加密過的密碼。多個相同使用者的情況沒有定義。

      注意搜尋很大的使用者文件是很沒有效率的;應該用 AuthDBMUserFile
      來取代它。

      安全: 確定這個 AuthUserFile 儲放在服務器的文件樹之外;不要把它
      放在它所保護的目錄里。否則,客戶端將能夠下載這個 AuthUserFile
      文件。

      參閱 AuthName, AuthType 以及 AuthGroupFile 。





      標簽:APACHE(3) 
      日韩精品一区二区三区高清