在RedHatLinux8.0中,ApacheHTTP服務器被更新到版本2.0,它使用不同的配置選項。從RedHatLinux7.3開始,RPM軟件包也被重新命名為httpd。如果你想手工地遷移現存的配置文件,請參閱/usr/share/doc/httpd-
如果你在以前的RedHatLinux版本中使用HTTP配置工具配置了ApacheHTTP服務器,然後執行升級,你可以使用這個應用程序來把配置文件遷移到版本2.0的新格式。啟動HTTP配置工具,改變配置,然後保存。所保存的配置文件就會與版本2.0兼容。
HTTP配置工具允許你為ApacheHTTP服務器配置/etc/httpd/conf/httpd.conf配置文件。它不使用舊的srm.conf或access.conf配置文件;把它們留為空白。你可以通過圖形化界面來配置指令,例如虛擬主機、記錄屬性和最大數量連接等。
只有包括在RedHatLinux中的模塊可以使用HTTP配置工具來配置。如果你安裝了額外的模塊,它們不能使用這個工具來安裝。
你需要安裝httpd和redhat-config-httpdRPM軟件包才能使用HTTP配置工具。它還需要X窗口系統和根權限。要啟動這個程序,點擊「主菜單」=>「系統設置」=>「服務器設置」=>「HTTP服務器」,或在shell(例如,XTerm或GNOME終端)提示中鍵入redhat-config-httpd命令。
小心:如果你想使用這個工具,請不要手工編輯/etc/httpd/conf/httpd.conf配置文件。HTTP配置工具在你保存改變並退出程序後自動生成這個文件。如果你想添加HTTP配置工具中沒有的額外模塊或配置選項,你也不能使用這個工具。
使用HTTP配置工具來配置ApacheHTTP服務器的一般步驟如下所述:
在「主」標簽下配置基本設置。
點擊「虛擬主機」標簽來配置默認設置。
在「虛擬主機」標簽下,配置默認的虛擬主機。
如果你想為不止一個URL或虛擬主機提供服務,則添加額外的虛擬主機。
在「服務器」標簽下配置服務器設置。
在「性能微調」標簽下配置連接設置。
把所有必要的文件復制到DocumentRoot和cgi-bin目錄中。
退出程序並保存你的設置。
19.1.基本設置使用「主」標簽來配置基本服務器設置。
圖19-1.基本設置
在「服務器名稱」文本字段中輸入你有權使用的完整域名。該選項和httpd.conf中的ServerName指令相對應。ServerName指令設置萬維網服務器的主機名。它用來創建URL的重導向。如果你沒有定義服務器名稱,萬維網服務器會試圖從系統中的IP地址來解析它。服務器名稱不一定非要是它的IP地址。譬如,你可能想把你的服務器名稱設為www.example.com,而你的服務器的實際DNS名稱卻是foo.example.com.
在「網主電子郵件地址」文本字段中輸入萬維網服務器維護者的電子郵件地址。該選項和httpd.conf中的ServerAdmin指令相對應。如果你配置服務器的錯誤頁要包含電子郵件地址,該地址將會被用戶用來向服務器的管理員提交問題。默認的值是:root@localhost。//本文轉自www.45it.com電腦軟硬件應用網
使用「可用地址」文本字段來定義服務器接受進入連接請求的端口。該選項和httpd.conf中的Listen指令相對應。RedHat默認配置ApacheHTTP服務器在端口80上監聽非安全萬維網通訊。
點擊「添加」按鈕來定義接受請求的其它端口。一個如圖19-2所示的窗口會出現。你可以選擇「監聽所有地址」選項來在定義的端口上監聽所有IP地址,也可以在「地址」字段中指定服務器會接受請求的地址。每個端口只能指定一個IP地址。如果你想在同一端口號碼上指定多個IP地址,請為每個IP地址分別創建條目。如果有可能,使用IP地址而不是域名,這樣會避免DNS查尋失敗。詳情請參閱http://httpd.apache.org/docs-2.0/dns-caveats.html中的IssuesRegardingDNSandApache。
在「地址」字段中輸入星號(*)的效果和選擇監聽所有地址一樣。點擊「可用地址」框架中的「編輯」按鈕和點擊添加按鈕所顯示的窗口相同,只不過前者窗口中的字段值已被預設。要刪除某一條目,選擇它然後點擊刪除按鈕。
竅門:如果你設置了服務器來監聽1024以下的端口,你必須是根用戶才能啟動它。對於1024和以上的端口,httpd可以被普通用戶啟動。
圖19-2.可用地址
19.2.默認設置定義了「服務器名稱」、「網主電子郵件地址」、以及「可用地址」之後,點擊「虛擬主機」標簽,然後點擊上面的「編輯默認設置」按鈕。如圖19-3所示的窗口會出現。在該窗口中為你的萬維網服務器配置默認設置。如果你添加了一個虛擬主機,你為該虛擬主機配置的設置會被優先采用。對於虛擬主機內沒有定義的指令,就會使用默認值。
19.2.1.站點配置「目錄頁搜索列表」和「錯誤頁」中的默認值對於多數服務器都適用。如果你不能肯定這些設置,請不要修改它們。
圖19-3.站點配置
「目錄頁搜索列表」中列出的項目定義DirectoryIndex指令。DirectoryIndex是用戶通過在目錄名後指定正斜線(/)來請求目錄索引時,由服務器提供的默認網頁。
譬如,當某用戶請求網頁http://www.example.com/this_directory/時,他會得到DirectoryIndex網頁(若存在),或由服務器生成的目錄列表。服務器會試圖尋找DirectoryIndex指令中列出的文件,並提供它找到的第一個文件。如果它沒找到任何文件,並且OptionsIndexes為該目錄設置,服務器就會生成並返回一個HTML格式的列表,列出該目錄中的子目錄和文件。
使用「錯誤代號」這一節來配置ApacheHTTP服務器在出現錯誤和問題時把客戶重導向給本地或外部URL。該選項和ErrorDocument指令相對應。如果當客戶試圖連接ApacheHTTP服務器時出現了問題或錯誤,默認行動是顯示「錯誤代號」列中的簡單錯誤迅息。要取代默認配置,選擇該錯誤代號,然後點擊「編輯」按鈕。選擇「默認」來顯示默認的簡短錯誤迅息。選擇「URL」來把客戶重導向到一個外部URL,並在「位置」字段中輸入包括http://在內的URL。選擇「文件」來把客戶重導向到一個內部URL,並在萬維網服務器的文檔根下輸入文件的路徑。位置必須以斜線(/)開頭,並相對於文檔根的位置。
譬如,要把404“沒有找到”錯誤代號重導向到你在404.html文件中創建的網頁,把404.html復制到DocumentRoot/errors/404.html。在這個例子裡,DocumentRoot是你定義的文檔根目錄(默認為/var/www/html)。然後,選擇「文件」作為「404-沒有找到」錯誤代號的行為,然後輸入/errors/404.html作為「位置」。
從「默認錯誤頁頁腳」菜單中,你可以選擇下列選項之一:
「顯示頁腳和電子郵件地址」—在所有錯誤頁中顯示默認頁腳以及在ServerAdmin指令中指定的網站維護者的電子郵件地址。關於配置ServerAdmin指令的詳細信息,請參閱第19.3.1.1節。
「顯示頁腳」—在錯誤頁的底部只顯示默認的頁腳。
「無頁腳」—在錯誤頁的底部不顯示頁腳。
19.2.2.記錄日志服務器默認把傳輸日志寫入/var/log/httpd/access_log文件,把錯誤日志寫入/var/log/httpd/error_log文件。
傳輸日志包含一個所有對萬維網服務器連接企圖的列表。它記錄試圖連接的客戶的IP地址,試圖連接的日期和時間,以及試圖檢索的萬維網服務器上的文件。輸入要貯存該信息的路徑和文件名。如果路徑和文件名不以斜線(/)開頭,該路徑就是相對於配置的服務器根目錄而言。該選項與TransferLog指令相對應。
圖19-4.記錄日志
你可以配置定制的日志格式。方法是,選擇「使用定制記錄設施」,然後在「定制日志字串」字段中輸入定制的日志字符串。它配置LogFormat指令。請參閱http://httpd.apache.org/docs-2.0/mod/mod_log_config.html#formats來獲取該指令的格式信息。
錯誤日志包含所發生的服務器錯誤的列表。輸入你要貯存該信息的路徑和文件名。如果路徑和文件名不以斜線(/)開頭,該路徑就是相對於配置的服務器根目錄而言。該選項與ErrorLog指令相對應。
使用「日志級別」菜單來設置錯誤日志中錯誤迅息的詳細程度。它可以被設置成(從最簡略到最詳細)emerg、alert、crit、error、warn、notice、info或debug。該選項和LogLevel指令相對應。
「逆向DNS查尋」菜單中選定的值定義HostnameLookups指令。選擇「無逆向查尋」會關閉它。選擇「逆向查尋」會啟用它。選擇「雙重逆向查尋」把值設為雙重。
如果你選擇了「逆向查尋」,你的服務器會自動為每個從你的萬維網服務器請求文檔的連接解析IP地址。解析IP地址意味著你的服務器會連接DNS來尋找和某IP地址相對應的主機名。
如果你選擇了「雙重逆向查尋」,你的服務器會執行雙重逆向查尋DNS。換一句話說,執行了一次逆向查尋後,服務器會在結果上再執行一次正向查尋。在正向查尋中,至少應有一個IP地址匹配第一次逆向查尋中的地址。
通常說來,你應該把該選項設為「無逆向查尋」,因為DNS請求會給你的服務器增加載量,你的服務器的速度可能會減慢。如果你的服務非常繁忙,試圖執行逆向查尋或雙重逆向查尋的影響就會非常明顯。
逆向查尋和雙重逆向查尋從互聯網整體上來說也是個問題。所有查尋主機名的個別連接加在一起的效應不容忽視。因此,為你自己的萬維網服務器考慮,也為整個互聯網的利益考慮,你應該把該選項設為「無逆向查尋」。
19.2.3.環境變量為了CGI腳本或服務器端嵌入(SSI)頁,有時有必要修改環境變量。ApacheHTTP服務器可以使用mod_env模塊來配置被傳遞給CGI腳本和SSI頁的環境變量。使用「環境變量」頁來為該模塊配置指令。
圖19-5.環境變量
使用「為CGI腳本設置」部分來設置要傳遞給CGI腳本和SSI頁的環境變量。譬如,要把環境變量MAXNUM設為50,點擊「為CGI腳本設置」內的「添加」按鈕,如圖19-5所示。然後在「環境變量」文本字段內鍵入MAXNUM,在「設置的值」文本字段內鍵入50。點擊「確定」。「為CGI腳本設置」部分配置SetEnv指令。
使用「傳遞給CGI腳本」部分來在服務器首次啟動CGI腳本時傳遞環境變量值。要查看該環境變量,在shell提示下鍵入env。點擊「傳遞給CGI腳本」內的「添加」按鈕,在彈出的對話框中輸入環境變量的名稱。點擊「確定」來把它添加到列表中。傳遞給CGI腳本部分配置PassEnv指令。
如果你想刪除某個環境變量,因此它的值就不會傳遞給CGI腳本和SSI頁,使用「為CGI腳本取消設置」部分。點擊其中的「添加」按鈕,然後輸入要取消設置的環境變量名稱。它和UnsetEnv指令相對應。
要編輯這些環境變量值,從列表中選擇它,然後點擊相應的「編輯」按鈕。要從列表中刪除任一項目,點擊相應的「編輯」按鈕。
要進一步了解ApacheHTTP服務器中的環境變量,請參考下面的網頁:
http://httpd.apache.org/docs-2.0/env.html
19.2.4.目錄使用「目錄」頁來為指定目錄配置選項。它與
圖19-6.目錄