亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來到思海網絡,我們將竭誠為您提供優質的服務! 誠征網絡推廣 | 網站備案 | 幫助中心 | 軟件下載 | 購買流程 | 付款方式 | 聯系我們 [ 會員登錄/注冊 ]
促銷推廣
客服中心
業務咨詢
有事點擊這里…  531199185
有事點擊這里…  61352289
點擊這里給我發消息  81721488
有事點擊這里…  376585780
有事點擊這里…  872642803
有事點擊這里…  459248018
有事點擊這里…  61352288
有事點擊這里…  380791050
技術支持
有事點擊這里…  714236853
有事點擊這里…  719304487
有事點擊這里…  1208894568
有事點擊這里…  61352289
在線客服
有事點擊這里…  531199185
有事點擊這里…  61352288
有事點擊這里…  983054746
有事點擊這里…  893984210
當前位置:首頁 >> 技術文章 >> 文章瀏覽
技術文章

Apache web服務器架設實戰

添加時間:2011-4-6  添加: admin 

 不知你是否感興趣把你的計算機設置為當今互聯網中的一部分,是否愿意加入到不斷發展壯大的Web中來?如果是,你也許對架設自己的web服務器感興趣。在本文中,我將介紹如何建立和配置這樣的服務器,同時,將檢查一下有關需求,并精確決定究竟要何處配置,以便完成相應的功能。
  本文定位為手冊性的指南介紹。如果你對web服務器的性能特別關注,請留意不久后即將發表的另一篇文章,在那篇文章中,將介紹了不同的平臺和多種服務器。

  因為免費的Apache web服務器約占了所有的web服務器軟件中的半壁江山,同時Sun公司的硬件也占了所有服務器硬件的大多數比例。我將介紹一下這樣的配置。事實上,為了方便起見,我所詳細介紹的就是一個現實的網站目前所用的服務器。

  該機器的型號為SPARCstation 20,其配置:256 MB內存, 單個SM71 處理器模塊。操作系統為Solaris 7, 服務器軟件為Apache 1.3。 無論硬件是否不同,以及運行哪一種UNIX平臺, Apache的配置方法不變。

  硬件配置

  如前所述,該機器型號為SPARCstation 20。為何要采用Sun公司的機器,而不在Intel架構下運行Linux或者Windows NT?基本上,原因分為下面四點,我將用一個例子分別加以闡述:

  兼容性

  可擴性

  維護和管理

  開銷

  兼容性

  如果你已經有了一個網站,為了保持兼容性,將盡可能維持類似的配置,這一點也許是重要的。這也許意味著如果你運行的是Windows NT server,就會堅持采用兼容Windows NT的硬件,或者如果現在運行的是Linux平臺,也會保持現狀不變。

  前面介紹的服務器是運行Solaris操作系統的Sun機器。盡管是個小容量的小型機器,自從配置安裝好之后,作為我們的web服務器,已經成功運行約6個月,自那時起,我們的網站服務器就一直保持為Solaris/Apache平臺。

  此時,我們尤為關注停機維護時間和保護最初的投資。通過保持不變的硬件和軟件平臺,就可以保證代碼級的兼容性,和最小的停機維護時間。

  可擴性

  你的新服務器是否提供了可擴空間?過了6個月之后,是否需要升級?顯然,如果你打算完全替換硬件,需要的服務器數量將同你的網站內容數量一起水漲船高。根據你的網站需求,你也許需要更高的CPU處理能力,或者更高的磁盤傳輸率。如果你的機器在哪方面有不足,就需要對那一方面的不足進行改進。有時,這就可能意味著需要采用能夠安裝兩個或者四個處理器的主板,或者意味著需要采用更強大的RAID控制器。

  前面所述的服務器已經充分擴充,沒有進一步升級的余地了,我們覺得選擇服務器時不僅要看它是否可擴空間,也要看它是否能夠在群集環境中工作良好,這一點是重要的。

  我們現在使用的SPARCstation 20最多可擴到四個處理器,帶有8條SIMM,四個擴展槽,以及四個磁盤驅動器接口,另外,該機器主板上還具有SCSI和以太網接口。另外一個重要的方面是整個機器只有3英寸高, 16英寸寬,深度16英寸。這就非常適宜安裝到機架上。

  維護和管理

  該部分主要涉及到軟件,當服務器發生故障時,沒人愿意每次重新安裝服務器軟件。基本的管理功能應該總是能夠通過遠程進行,而且要能夠進行重啟動等。能夠遠程控制也是一個優點。

  Solaris同大多數UNIX系統一樣,提供了不少工具,來幫助用戶進行遠程管理。對于我們的機器,從添加新用戶和改變web服務器參數,到重啟動和配置新的硬件,都可以遠程進行。

  成本

  你可以保護多少初始投資?要求既能滿足你的當時需求,也能用滿足將來的升級需要,哪一種服務器最經濟?

  成本也是重要的因素。盡管我們可以購買得起比現在這臺機器更貴的Sun 系統。但是,由于該Sun機器已經內置SCSI和ethernet,就無需購買這兩種適配器,軟驅和CDROM驅動器也不需要,因為可以通過網絡進行軟件的安裝。視頻卡也不需要,因為該機器完全可以通過telnet或者遠程X會議系統進行訪問。

  你可以看到,在這種場合下,Sun機器遠比相應的PC廉價,因為我們僅需要基本的單元(主板和機箱),CPU和內存。而對于一臺PC服務器,不僅需要購買一個基本單元,也需要購買視頻卡, SCSI卡,網卡,軟驅,CDROM驅動器,另外也需要借一臺顯示器,用于軟件安裝。

  你將需要多少硬件?

  這完全取決于你要發布的內容,以及要服務的人數。實際上,如果僅用于發布靜態的HTML網頁,采用90 MHz的Pentium, 適當容量的RAM, 能夠適用于1.5Mbps T1連接速度的磁盤,就足夠了。基于服務器的動態HTML, ASP, PHP以及其他更復雜的文檔類型,在用戶發出請求時,將消耗更多的CPU時間。通常,用ASP或者PHP來查詢數據庫,得到信息后,再傳輸到web文檔中去。在這些場合,在同樣的網絡連接速度下,你需要有比發布靜態網頁的機器更強有力的web服務器。

  通常,一次硬件升級可以提升兩倍的性能,如果再加上更高級的軟件,性能可以最大提升到100倍以上。一個小小的例子可以說明這一點,在我們的網站上,原來采用PERL腳本把數據寫入到文件中,在升級到采用數據庫實現之后,在我們留言簿上生成索引的時間減少到為原來的50分之一。查詢數據庫并生成客戶端可以看到的HTML文檔的實際代碼僅為600行,而采用CGI/PERL實現時,則產生超過3000行代碼,且功能較少,而且啟動的靈活性較低。

編譯和安裝Apache

  雖然我不打算介紹配置操作系統方面的事宜,你還是需要根據所運行的操作系統,正確配置網絡連接。在不同的操作系統中安裝Apache時有一些注意點。

  我們服務器上使用的Apache版本為1.3.9,所以我將詳細介紹該版本下的安裝過程。是否選擇自己編譯源代碼的版本,還是下載一個預編譯好的版本,其安裝過程略有差異。在此,我將詳細介紹編譯源代碼的步驟,但如果你不打算采用該版本,可以跳過這段。

  做任何其他事情之前,確保你的操作系統系統支持Apache(檢查這個網站,而且你的編譯器應為最新版)。由于GCC的一些版本的編譯器在某些方面仍然處于測試開發階段,這些版本在某些平臺上構建的代碼未經優化。如果你正在使用GCC,你需要查看一下,預編譯過的版本是否提供了更好的性能。

  從這里下載Apache源代碼包。

  解壓縮該包文件。

  運行 ./configure

  基于你的需要,可以忽略特定的配置參數。在最低限度下,你需要指定安裝路徑,使用如下參數標志: --prefix=APACHE_INSTALLATION_PATH 。更為復雜的配置參數如下:

  ./configure --prefix=/usr/local/apache --activate-module=src/modules/php/libphp.a

  運行 make

  運行 make install

  運行 APACHE_INSTALLATION_PATH/bin/apachectl start

  配置Apache

  當然,編譯Apache僅僅是實際安裝和配置web服務器過程中的一小部分工作。根據需求,設置Apache,這仍是必需的。在Apache安裝后的目錄中,你會找到conf/ 目錄。該目錄包含了有關Apache啟動和運行的所有的配置文件。這些配置文件包括下列一些:

  httpd.conf, 初始服務器配置文件

  access.conf, 配置web服務器訪問設置,以及所服務的目錄。

  srm.conf, 服務器名稱空間和請求處理的配置

  我將在下面詳細介紹Apache啟動和運行時的配置。本文雖不是技術大全,但足夠讓你入門。如果你正在從現有的服務器或者新安裝的服務器中,尋求更好的性能配置,我也將盡可能介紹一下有關性能問題。

  httpd.conf

  該文件保存了Apache自身的一些最重要的配置信息。也是在調整性能時的首要去處。我將介紹一下主要的配置選項,

  Servertype

  本選項決定Apache的執行方式。Apache既可以作為獨立應用程序運行,也可以在透過適當的端口(通常為80端口)的HTTP請求到來時,被inetd調用。其中當inetd 運行時,將消耗少得多的資源,因為對于每一次請求都需要啟動Apache,這將降低web服務器的總體性能。獨立工作模式的設置更好些。

  Port

  該參數僅用于在獨立模式下工作的服務器。通常為port 80。

  HostnameLookups

  該設置決定web服務器是否為每一個訪問的IP地址,解析主機名。如果設置為on,訪問日記中將存儲主機名,而非IP地址。缺點是影響速度。因為打開該功能,將對每次請求都進行名稱查詢。如果服務的請求數量多,會嚴重降低服務器的性能。Apache在缺省情況下,把該參數設置為off,并提供了一個工具(logresolve),以便過后解析主機名。

  User

  服務器進程用戶,通常設為“nobody”。

  Group

  運行服務器的組名,通常設為“nobody”。

  ServerAdmin

  服務器管理員的email地址。這會出現在出錯頁面上。

  ServerRoot

  指定配置文件和服務器日記文件的存儲位置。除非你有特別原因,需要改變設置,一般與Apache所在目錄相同。

  ErrorLog

  該參數告訴Apache出錯日記文件的存儲位置。可以設置記錄內容, 一般將記錄如下重要信息:啟動時間,停止時間,用戶遇到的任何錯誤 (例如404錯誤等等)。

  LogLevel

  決定讓你的日記文件填滿的時間。選項“Warn”在大多數場合足夠了,除非你打算仔細診斷遇到的問題。

  LogFormat

  該功能指定服務器上日記文件的格式。你可以創建包含額外信息(如referrers)的特定格式。下面為一個常見組合格式的日記格式例子。

  LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i"" combined

  CustomLog

  該命令同LogFormat alias 同時使用。

  Timeout

  建立連接所允許的時間,以秒記。

  KeepAlive

  打開該選項,可以進行持久連接。這表示單個的連接可以用于不止一個請求。這當然是好事,因為減少了建立連接所需的總體時間,尤其在一個單個的web文檔可能需要5或者6個請求(如圖像)。

  MaxKeepAliveRequests

  每個持久連接的最大請求數量。該數字應該設置高些(至少100)。

  KeepAliveTimeout

  該選項用來告訴服務器在下次請求到來時的等待時間。 缺省為15秒,可以根據同客戶的連接情況,加長或者縮短該等待時間。同客戶連接較慢時,需要更多的等待時間。記住,該數值設置太高,可能會導致服務器進程空等永不會到來的連接。

  MinSpareServers

  等待隨時出現的請求的服務器進程數的最小值。改變該參數將可能在加載進程時,提高服務器的性能。缺省值為5。

  MaxSpareServers

  這個數值告訴Apache,多余的進程數達到多少時為過多。通過確保不會產生過多進程,這將幫助保護系統資源。

  StartServers

  初始啟動時服務器的進程數。通常與MinSpareServers 的設置值相同。

  MaxClients

  隨時可以連接的最大客戶數。因為Apache服務器的客戶同進程數相關,在極端情況下,可能會出現占用資源非常集中的現象,此時該設置值將保護你的服務器不發生崩潰。但也別把該值設置過低,因為一旦這樣做,用戶在高峰期可能會連不上去。

  MaxRequestsPerChild

  任何單個進程所能處理的最大請求數。為避免內存溢出,而強迫終止超出該設定值的請求。缺省值為30。

  Listen

  把Apache同指定的的端口或者地址綁定。可指定多個監聽選項值,此時單個的服務器可以用作幾個不同的網站。

  and

  該選項允許Apache為多個地址服務,例如多個域名。該項同Listen一起使用。同時,任何httpd.conf 選項也可以放到一個VirtualHost命令中。這意味著你可以為每個虛擬服務器指定不同的ServerAdmins, logfiles等等。下面為一個例子:

  ServerAdmin brian@mysite.com

  DocumentRoot /usr/docs/mysite

  ServerName www-mysite-com

  ErrorLog /var/log/web/mysite.log

  TransferLog /var/log/webmysite-access.log

  access.conf

  access.conf包含了Apache中了大部分同安全和用戶訪問相關的設置。在該文件中,目錄索引, SSI include命令等等,可以按照目錄逐一配置。下面為重要的配置選項:

  and (Also and )

  這是access.conf文件中主要的選項。當構建access.conf文件時,在啟動時,參數應該先設置為限制范圍最嚴格的值,然后對服務器上不同的文檔逐漸放寬限制。

  Options

  使用該項參數,可對每個目錄控制打開或者關閉某項功能。通常不設定為All,你可以隨意指定選項的多少,因為Includes 和 ExecCGI 有時可能帶有安全隱患。除了不允許包含執行CGI程序的#include exec 語句之外, IncludesNOEXEC 同Includes 的作用一樣(在文檔中允許使用<--#include --> 語句)。

  AllowOverride

  該選項定義了使用.htaccess文件可以得到的控制水平。這些文件可以放到內容目錄中,以便替換指定目錄中的缺省設置(在access.conf文件中)。在一些場合中,這非常方便,因為在重新配置指定目錄時,無需訪問根目錄,但使用這樣的文件時,會輕微影響性能,因為web服務器在訪問決定該目錄功能的選項時,必須讀入該文件。access.conf在這些文件中可以控制使用哪一個參數,除此之外,.htaccess 文件同初始的ccess.conf 文件一樣用。

  Order

  同Allow From 和Deny From (在下面介紹)一起使用。指定訪問驗證的次序。例如它可在deny 之前指定allow ,然后除在應被禁止的場合值之外,允許進行訪問。如果先指定deny ,缺省情況下,訪問該目錄將被拒絕。

  Allow From and Deny From

  決定誰應該訪問該命令所指定的該目錄。None 和 All 的用途相當直截了當,也可以基于用戶域名允許或者拒絕訪問(簡單地指定域名作為參數即可)。

  為了更好闡述這些選項,以及它們是如何在access.conf文件中配合使用的,下面為一個簡單的例子:

  Options FollowSymLinks

  AllowOverride None

  Options IncludesNOEXEC FollowSymlinks

  AllowOverride None

  Order allow,deny

  Allow From All

  AllowOverride None

  deny from all

  srm.conf

  srm.conf 文件決定服務器如何處理諸如索引格式,內容類型定義等等更多方面的請求。

  DocumentRoot ""

  存放所有在線內容的根目錄。

  UserDir

  用戶存放其HTML文檔的home目錄。如果帶有 ~username 參數,服務器將尋找在該用戶的home目錄中查找該目錄。

  DirectoryIndex

  當在URL中沒有指定文件時,所請求的特定目錄中的缺省文件名。通常為index.html。

  FancyIndexing

  決定目錄索引的顯示風格 (當DirectoryIndex 不存在)。如果你已經關閉索引,該參數就不起作用。

  HeaderName

  指定目錄中包含在index頂部的頭文件名稱,如果找到的話。

  ReadmeName

  readme文件的名稱,如果找到的話,將標記為一個索引。

  AccessFileName

  每個目錄中要被查找的訪問控制文件名稱,缺省名為.htaccess

  Alias ""

  在腳本的URL中使用的特定目錄的別名。

  Alias /cgi-bin/ "/usr/local/mysite/s/"

  AddType

  該參數允許你配置web服務器能夠識別的某種類型的文件,并帶有文件擴展名,例如:

  AddType application/x-httpd-php .php

  AddHandler

  通過文件擴展名,允許把文件同特定的“handlers“,或者server-side 幫助應用程序聯系起來。例如,通過使用AddHandler ,可以允許使用CGI腳本和服務器端動態生成的HTML。請看下例:

  AddHandler cgi- .cgi

  AddHandler server-parsed .shtml

  一切完畢

  此時,你應該擁有一個配置適當,運行正常的Apache web服務器了。

    關鍵字:服務器、Web
 
 

分享到:

頂部 】 【 關閉
版權所有:佛山思海電腦網絡有限公司 ©1998-2024 All Rights Reserved.
聯系電話:(0757)22630313、22633833
中華人民共和國增值電信業務經營許可證: 粵B1.B2-20030321 備案號:粵B2-20030321-1
網站公安備案編號:44060602000007 交互式欄目專項備案編號:200303DD003  
察察 工商 網安 舉報有獎  警警  手機打開網站