官方網站
實作版本
apache 2.2.8
下載網址.msi" target="_blank">apache_2.2.8-win32-x86-openssl-0.9.8g.msi
安裝步驟
- 執行 apache_2.2.8-win32-x86-openssl-0.9.8g.msi
- 安裝精靈的起始畫面(Installation Wizard)
- 按 NEXT
- 使用許可協議(License Agreement)
- 選擇 I accept …
- 按 NEXT
- 讀我檔案(Read This First)
- 按 NEXT
- 伺服器資訊(Server Infomation)
- 填入 網域名稱(Network Domain)
- 填入 伺服器名稱(Server Name)
- 填入 管理者Email(Administrator’s Email Address)
- 選擇 安裝模式(看實際需求,通常為 1.)
1. 使用Port 80且安裝為服務
2. 使用Port 8080 - 按 NEXT
- 安裝類型(Setup Type)
- 選擇 Custom
- 按 NEXT
- 自訂安裝元件(Custom Setup)
- 按 NEXT
- 安裝確認(Ready to Install the Program)
- 按 NEXT
- 安裝完成(Installation Wizard Completed)
- 按 Finish
設定事項
可將右下角小時鐘旁的 Apache Monitor 小圖示關閉,不影響伺服器運作。
在 [開啟] -> [所有程式] -> [啟動] 中也會有一個 Monitor Apache Servers 可以刪除。
設定 httpd.conf 檔案
使用筆記本開啟 httpd.conf 檔案,如果你沒有修改過安裝路徑的話,他會在 C:\Program Files\Apache Group\Apache2\conf\ 資料夾底下,如果你有修改安裝路徑的話,請在安裝路徑下的 \conf\ 資料夾中尋找。
請以關鍵字搜尋並取代原本的設定。這裡的設定是依照我的壯況來說明,請依照你安裝的路徑與實際上的需求來設定。
以 粗體字 表示需要依狀況修改的地方,並注意使用的是 ” / ” 而不是 ” \ ” 符號。
在所有的設定修改完畢之後,要重新啟動伺服器才會套用新的設定。
- 設定網頁目錄及其權限
DocumentRoot "D:/SERVER”
<Directory D:/SERVER“>
Options FollowSymLinksOptions 原本在後面應該有一個 Indexes ,為了安全性建議刪去
- 使用 mod_deflate 增進傳輸效能設定
先將 LoadModule deflate_module modules/mod_deflate.so 前面的 # 刪掉。
在檔案的最底下添加<IfModule deflate_module>
DeflateCompressionLevel 9
AddOutputFilterByType DEFLATE text/html text/xml text/css application/x-httpd-php
AddOutputFilter DEFLATE html htm xml php css js
</IfModule>DeflateCompressionLevel:表示壓縮的等級(1-9),其中 9 為最高等級,效能與壓縮率都要兼顧的情況建議設為 6。
AddOutputFilterByType:表示要壓縮的檔案,依照 MIME Type 來設定。
AddOutputFilter:表示要壓縮的檔案,依照副檔名來設定 - 如果你是使用 WIN XP 作業系統的人,建議添加 Win32DisableAcceptEx 在檔案的最末端,因為 AcceptEx 這個提升網路效能的 API 指令可能會出錯。
設定分割 Log 檔案
這部分的設定不影響伺服器的運行,只是讓 Log 檔案按照時間來做分隔,以免產生一個過大的檔案。
使用 Apache 模組 Mod-log-rotate ,這不是由官方提供的模組,不過原始提供者並沒有製作編譯好的檔案方便 Windows 平台的使用者,感謝 Apache Lounge 提供編譯好的檔案使用( For Apache 2.0.X & 2.2.X )。
安裝設定方法如下:
- 將下載的 mod_log_rotate.so 複製到 Apache 的 modules 資料夾裡面。
- 開啟 httpd.conf 檔案,將以下的文句添加到檔案的最末端。
LoadModule log_rotate_module modules/mod_log_rotate.so
RotateLogs On
RotateLogsLocalTime On
RotateInterval 86400RotateLogs:表示啟動模組的功能
RotateLogsLocalTime:表示使用本地時間,預設為 UTC 時間
RotateInterval: Set the interval in seconds for log rotation.(不清楚實際作用,其實不加也可以) - 將 CustomLog “logs/access.log” common 修改成
CustomLog “logs/access_%Y_%m_%d.log” common
目前的設定是每天一個檔案。