# <font color=#0019ff>Apache</font> ## 官網 https://httpd.apache.org/ ## <font color=#0099ff>安裝及設定</font> ### 下載並解壓 #### apache 有很多載點,這是其中一個 https://www.apachehaus.com/cgi-bin/download.plx ![](https://i.imgur.com/sQNzZSi.png) ### 安裝 apache service 進入解壓的 Apache/bin 資料夾 以"系統管理員"身份執行下列命令 ~~~ httpd.exe -k install -n "Apache24" ~~~ 或是下載下面的檔案到解壓的 Apache/bin 資料夾再右鍵選"以系統管理員身份執行" [install.cmd 點我下載](https://drive.google.com/file/d/1TYG7fSL2PV-nof1LNCgZ4I83aeSC3grr/view?usp=sharing) 詳見 http://httpd.apache.org/docs/2.4/platform/windows.html#down ### 檢查服務是否安裝成功 ![](https://i.imgur.com/syvSbay.png) ### 基本設定(設定 httpd.conf) 1.用編輯器打開 conf/httpd.conf,每行最前面有#字號表示註解,拿掉#字號即可套用 2.修改 Define SRVROOT "/Apache24" 為解壓後的路徑,如: ~~~ Define SRVROOT "d:\tool\Apache24" ~~~ 3.找到 Listen 80,視情況修改port, 80 為預設: ~~~ Listen 80 ~~~ 4.視情況新增或開放模組,如: ~~~ LoadModule access_compat_module modules/mod_access_compat.so ~~~ 5.視情況使用自訂的群組或使用者執行Apache,預設為 daemon ~~~ User daemon Group daemon ~~~ 6.視情況設定 ServerName ~~~ ServerName localhost:80 ~~~ 7.視情況設定server啟始資料夾和資料夾存取權限 ![](https://i.imgur.com/7PXjSTs.png) 8.視情況設定檔案權限 ~~~ <Files ".ht*"> Require all denied </Files> ~~~ 9.視情況寫入套用模組時要使用的設定 ~~~ <IfModule dir_module> DirectoryIndex index.html </IfModule> ~~~ 10.設定 error log 位址 ~~~ ErrorLog "logs/error.log" ~~~ 11.視情況載入其它設定 ~~~ Include conf/extra/httpd-mpm.conf ~~~ ### 其它設定:conf/extra ### 各項紀錄:logs/ #### access.log 連線紀錄 #### error.log 錯誤紀錄 #### install.log 安裝紀錄 ### 各項模組:modules/ ### 修改設定或模組後,請重開 Apache 服務套用!!! ![](https://i.imgur.com/zFxY5F7.png) ## <font color=#0099ff>Hello World!</font> ### 範例前提 1. port 設定為 80 2. ServerName 設定為 localhost:80 3. DocumentRoot 設定為 ${SRVROOT}/htdocs (Apache資料夾底下的 htdocs) 4. htdocs 資料夾權限為 a. Options Indexes FollowSymLinks b. AllowOverride None c. Require all granted 5. dir_module 設定為 ~~~ <IfModule dir_module> DirectoryIndex index.php index.html </IfModule> ~~~ ### 實作 1. 在 htdocs 底下新增index.html檔案,並編輯檔案內容為"Hello World" 2. 開啟 browser,進入網址 localhost 3. 額外注意改變設定或網頁時,browser 可能會 cache 網頁而以為設定沒套用或網頁沒改變 ![](https://i.imgur.com/GaF4sZd.png)