語法規則
說明示列
define
定義常量
define srvroot 「d:/srv/apache24」
${}使用常量
serverroot 「$」
/表示路徑時使用 / 而不使用 \
d:/srv/apache24
配置引數
配置說明
示列serverroot
apache執行目錄
serverroot 「d:/apache24」
listen
監聽埠
listen 80
loadmodule
載入模組
loadmodule 模組名 模組檔案
serveradmin
管理員的郵箱,伺服器出現問題時,會在頁面中顯示
serveradmin [email protected]
servername
伺服器解析網域名稱
servername www.example.com
serveralias
網域名稱別名,配置多網域名稱解析時使用
servername api.example.com
documentroot
**根目錄
documentroot 「$/htdocs」
directoryindex
**自動執行檔案,預設檔案
directoryindex index.php index.html
errorlog
錯誤日誌
errorlog 「logs/error.log」
customlog
設定日誌的檔名和格式
customlog 「logs/access.log」 common
loglevel
錯誤提示等級
loglevel warn
include
包含其他的配置檔案,支援萬用字元 *
include conf/vhosts/*.conf
alias
使客戶端可以訪問到documentroot以外的本地檔案
alias /myphoto 「e:/**」
scriptalias
對映乙個url到檔案系統並視之為cgi指令碼目錄
scriptalias /cgi-bin/ 「d:/wamp/bin/apache2.4.23/cgi-bin」
defaulttype
當伺服器無法確定乙個文件的內容型別時傳送的預設mime內容型別
defaulttype text/plain
addtype
為特定字尾的檔案指定mime型別,這裡的設定將覆蓋mime.types中的設定
errordocument
當遇到錯誤的時候伺服器將給客戶端什麼樣的應答。 語法:errordocument error-code document 其中error-code時伺服器返回的錯誤**,document是回應的資料,可以是簡單的文字,本地網頁,本地cgi程式,或遠端主機上的網頁
errordocument 500 「the server made a boo boo.」
enablemmap
httpd在遞送中如果需要讀取乙個檔案的內容,是否可以使用記憶體對映
enablesendfile
控制httpd是否可以使用作業系統核心的sendfile支援來將檔案傳送到戶端
enablesendfile off
所有的容器都是成對出現的,和html的標籤一樣
< ifmodule >容器
封裝一組指令,並根據指定的模組是否啟用決定是否進行處理
使用 當模組module_name載入時
執行裡面的內容
當模組module_name沒有載入時
執行裡面的內容
< ifdefine >容器
封裝一組指令,只有在啟動時啟動引數測試結果為真時才生效
或 parameter-name是在服務啟動時,通過httpd命令列的 -d parameter 這樣的形式指定的,
例如 httpd -d proxy
使用方式與一致
< directory > 與 < directorymatch > 容器
封裝一組指令,在指定的目錄以及其子目錄中生效,這個目錄必需時乙個完整的目錄
使用萬用字元 「"、"?" 匹配目錄,也可以使用 「」 來確定字元範圍,不過無論是"」、"?" , 還是 「」 都不能匹配 「/」
allowoverride none
require all denied
也可以在表示式前使用"~"表示使用正規表示式
allowoverride none
require all denied
< directorymatch >的使用方式與與< directory >一致,區別時可以直接接受正規表示式,而無須加上"~"
< files > 與 < filesmatch > 容器
與< directory >容器作用於目錄相對應,< files >容器只作用於檔案,使用方法一致
order deny,allow
allow from all
< location >與< locationmatch >容器
對url進行訪問控制;使用方法與上述幾個容器一致。
options:控制在特定目錄中將使用哪些伺服器特性
引數說明
indexes
若訪問目錄下無index檔案,則准許顯示該目錄下的檔案列表以供選擇。
followsymlinks
准許在目錄中使用符號鏈結到其他目錄。
multiviews
准許內容協商的「多重檢視」。如果客戶端請求的路徑可能對應多種型別的檔案,伺服器將根據客戶端請求的具體情況自動選擇乙個最匹配客戶端要求的檔案。例如只在位址列輸入index也可以訪問到index.php頁面。
includes
准許ssi。
includesnoexec
准許ssi,但不可使用exec和include功能。
execcgi
准許在該目錄下使用cgi。
all表示除了multiviews之外的所有特性。
none
表示不啟用任何的伺服器特性。
注意:如果乙個目錄被多次設定了options,則最特殊的乙個會被完全接受。
allowoverrid:是否准許檔案「.htaccess」中設定的許可權覆蓋檔案中設定的許可權
引數說明
all准許覆蓋
none
不准許覆蓋
authconfig
允許使用與認證授權相關的指令。
fileinfo
允許使用控制文件型別的指令、控制文件元資料的指令、mod_rewrite中的指令、mod_actions中的action指令。
indexs
允許使用控制目錄索引的指令。
limit
允許使用控制主機訪問的指令。
控制訪問狀態
apache2.2 和 apache2.4 的配置方式不一樣,2.2使用order+allow/deny,2.4使用require語句來配置
apache2.2
order:控制預設的訪問狀態和allow、deny指令生效的順序
引數說明
allow
允許訪問。
deny
拒絕訪問。
這兩個引數由最後乙個出現的引數決定,如「order allow,deny」預設拒絕了所有的意思(中間有且只有乙個逗號),但最終的判斷結果還要總下面的allow、deny語句中各自所包含的範圍(如果有的話),這兩個語句後面都一定接著「from」,否則apache會無法啟動。「order allow,deny」表示先判斷allow語句再判斷deny語句。
# 拒絕所有請求
order deny,allow
deny from all
# 允許所有請求
order allow,deny
allow from all
# 只允許某個特定ip的訪問
order deny,allow
deny from all
allow ***.***.***.***
apache2.4# 拒絕所有請求
require all denied
# 允許所有請求
require all granted
# 只允許某個特定ip的訪問
require host ***.***.***.***
Apache 安裝WEB伺服器Apache教程
apache 安裝web伺服器apache教程 在下也是在第一次接觸php的時候,因為需要去安裝了apache,查了很多大哥們的教程,也正是因為查了很多,所以發現有的缺,有的齊,作為學習記錄,我把自己遇到的安裝問題記錄下來,希望各位大神們發現有錯有漏的指點指點。32位 64位 我將檔案解壓在了如後路...
搭建web伺服器 Apache伺服器
一.安裝apache 二.載入php解析模組,並指定模組處理檔案的型別 編輯httpd.conf 檔案 so檔案是linux下的c編譯的可執行檔案 這一項可以改為你真正願意放置專案檔案的磁碟 寫乙個指令碼測試一下,如果解析成功意味著php解析器載入成功 三.讓php處理資料庫 放到documentr...
apache伺服器配置
1.首先說明監聽埠 listen 80 2.然後是主站點的配置 基本配置 serveradmin com documentroot var www html servername test.com errorlog logs amc error log customlog logs amc acce...