WWW伺服器講解 (3)

火星人 @ 2014-03-29 , reply:0



個人網頁目錄

中小學架設 Apache 主要是為了提供師生個人網頁空間,可惜新版 Apache 預設將此功能關閉,必須手動自行修改才能啟用:

UserDir disable改為 UserDir public_html(或其它想使用的名稱)

預設語言與字符集

新版Apache裝好后預設會使用荷蘭語系和西歐字符集,這樣就造成網頁看到亂碼,過去舊版本使用哪種語系是由瀏覽器來決定,新版改為由 Apache 和瀏覽器來協商,因此就算設計網頁時有指定 Big-5 字符集,但瀏覽器卻接受 Apache 的指派,而不再理會網頁內容本身的設定,這對我們會造成很大的困擾,因此安裝完 Apache,一定要記得改底下這些選項:

DefaultLanguage tw

............................(中間省略)........................

LanguagePriority tw en da nl et fr de el it ja kr no pl pt pt-br ltz ca es sv

............................(中間省略)........................

AddDefaultCharset Big5

如果這些都改好后仍然出現亂碼,請檢查 IE 網際網路選項中的進階設定,是否有開啟 UTF-8 功能,目前發現某些情形下使用該功能會導致網頁亂碼,將它移除后就正常了。

常用組態設定

分類 組態名稱 默認值 使用說明

基本設定 ServerRoot /etc/httpd Apache 主程序所在目錄,這是不需要修改的。

Timeout 300 用來設定聯機等待時間,包含:聯機完成後,瀏覽器應於多少時間內送出 GET 指令、瀏覽器送出 POST 或 PUT 指令后,應於多少時間內送出網頁或窗體資料、伺服器響應網頁資料后,瀏覽器應於多少時間內回復收到。這個設定是以秒作為單位。

KeepAlive off 是否允許同一聯機送出多個要求,通常一個要求會起始一條聯機,這樣雖會耗用較多的系統資源,但是響應比較迅速,當聯機數太多系統資源不足時,可以考慮使用此功能。

MaxKeepAliveRequests 100 設定每條聯機最多可接受多少要求,設得越高重啟聯機的機率就越低,對改善 KeepAlive 的效能很有幫助。

KeepAliveTimeout 15 當一條聯機服務完一個要求后,會等待一段時間以便接受下一個要求,如果逾時就關閉聯機,這個設定值與前面介紹的 Timeout 意義完全不同,可千萬別搞混了。

Listen 80 和舊版的 Port 不同,它允許一個伺服器可以同時傾聽多個通訊埠,當埠號被設定少於 1024 的情形下,可以允許一般使用者將 Apache 安裝在個人家目錄下,成為個人專屬伺服器,像這種站台地下化的情形,系管人員應該要留意追查。

User apache 預設激活帳號,事實上 Apache 激活時還是以 root 身分進行準備工作,直到接受服務時才改用此帳號。為了安全考量,公開的 WEB 服務不應使用 root 身分來提供服務。

Group apache 預設激活群組。

ServerAdmin 無 請務必修改為該伺服器的實際負責人信箱。

ServerName 無 用來提供服務的網址及埠,當省略不設定時,預設會使用 hostname 及 80 port。

HostnameLookups off 要不要對聯機的客戶端進行 DNS 查詢驗證,這是為了避免駭客用假 IP 攻擊主機,但進行 DNS 查詢會降低伺服器效能,特別是當網站非常受歡迎的情況下,問題將會很嚴重

DefaultLanguage nl 預設語系

LanguagePriority 略 協商語系時的優先順序

AddDefaultCharset iso-8859 預設字符集

AddType 略 用來新增 MIME 格式,當 Apache 將檔案傳輸給 Client 時,必須告知 Client 該檔案屬於何種格式,這樣瀏覽器才能正確顯示或播放該檔案,常用的格式都已預先設好,因此除非要作特殊應用否則不需設定(有些站台故意隱藏正確的附加檔名,來限制某些檔案的下載)

AddHandler 略 定義 Apache Handler 模塊所對應的附加文件名,當附加檔名吻合時,會交由該模塊處理。目前支持的 Handler 模塊,主要有 cgi-script(perl)、imap-file(imagemap)、type-map(多語系)......等,這些設定都不需修改。(有些書教大家在 AddHandler cgi-script .cgi 的後面加上 .pl,這是多餘的,因為按照 perl 的慣例 .pl 檔案會被引入到 .cgi 中,本身並不會單獨執行,因此這樣設是多餘的)

AddOutputFilter 略 屬於新版 Apache 支持的 Filter 模塊,應該使用 AddOutputFilter 而非 AddHandler,例如過去屬於 Handler 模塊的 SSI,現在已經變成 Filter 模塊,因此設定由

AddHandler server-parsed .shtml

改成

AddOutputFilter INCLUDES .shtml

AddPathInfo on 這個選項用來讓 Filter 和 core 模塊在傳送剖析過的網頁數據時,能使用 PATH_INFO 環境變數來傳遞 basedir,以免相對路徑無法對應正確

特異功能 Action 略 這個功能的設計相信是絕大多數網站經營者的福音,它允許為某種 MIME 類型或某個 Handler 設定前導執行程序,透過這個功能將可以為站台中的每個檔案進行許可權檢查和過濾,以防堵不肖業者砍站的行徑,以前使用者從後門偷檔的情形也將受到遏止,設定方式如下:

Action media/type /cgi-script/location

Action handler-name /cgi-script/location

網頁目錄設定 DocumentRoot /var/www/html 根網站的主目錄

UserDir public_html 個人網頁的主目錄,建議改成 www 比較容易被學生接受

DirectoryIndex index.html 設定首頁的名稱,為了配合 FrontPage 教學,請修改成 index.html index.htm default.htm default.html

AccessFileName .htaccess .htaccess 是用來做目錄存取控制的,如果您修改了它的檔名,不要忘記一併修改底下的設定:



Order allow,deny

allow from all







(T113)




[火星人 via ] WWW伺服器講解 (3)已經有517次圍觀

http://www.coctec.com/docs/linux/show-post-204722.html