apache配置文件httpd.conf----小白福利
生活随笔
收集整理的這篇文章主要介紹了
apache配置文件httpd.conf----小白福利
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一、安裝apache
二、配置文件/etc/httpd/conf/httpd.conf
配置1:配置prefork模塊功能
<IfModule prefork.c> <<< 判斷是否在使用prefork模塊,如果在使用,那么下面的參數(shù)生效StartServers 8 <<< 啟動(dòng)httpd的時(shí)候,啟動(dòng)幾個(gè)子進(jìn)程MinSpareServers 5 <<< 最少空閑子進(jìn)程數(shù)MaxSpareServers 20 <<< 最多空閑子進(jìn)程數(shù)ServerLimit 256 <<< 最多活動(dòng)子進(jìn)程數(shù)MaxClients 256 <<< 最大并發(fā)數(shù)MaxRequestsPerChild 4000 <<< 設(shè)置當(dāng)子進(jìn)程處理了多少個(gè)請(qǐng)求后,就立刻回收該子進(jìn)程 </IfModule>配置2:配置長(zhǎng)連接功能
KeepAlive Off|On MaxKeepAliveRequests 100 <<< 長(zhǎng)鏈接處理請(qǐng)求的最大值,超過則斷開keepalive KeepAliveTimeout 15 <<< keepAlive的斷開時(shí)間配置3:配置httpd監(jiān)聽的套接字
Listen 80 <<< 監(jiān)聽所有IP的80端口 Listen 10.220.5.190:80 <<< 監(jiān)聽10.220.5.190的80端口配置4:配置worker模塊功能
<IfModule worker.c> StartServers 4 <<< 啟動(dòng)4個(gè)子進(jìn)程 MaxClients 300 <<< 最大并發(fā)數(shù) MinSpareThreads 25 <<< 最少空閑線程數(shù) MaxSpareThreads 75 <<< 最多空閑線程數(shù) ThreadsPerChild 25 <<< 每個(gè)子進(jìn)程可以創(chuàng)建多個(gè)線程 MaxRequestsPerChild 0 <<< 設(shè)置當(dāng)子進(jìn)程處理了多少個(gè)請(qǐng)求后,就立刻回收該子進(jìn)程(0永不回收) </IfModule>配置5:配置DSO
模塊裝載:LoadModule ModuleName /path/to/module補(bǔ)充: httpd -M:顯示所有模塊(包括DSO 和 非DSO模塊) httpd -l:顯示僅僅是可以使用的非DSO模塊配置6:配置網(wǎng)站根目錄
DocumentRoot 默認(rèn):/var/www/html說(shuō)明:訪問網(wǎng)站的時(shí)候,比如10.220.5.180 的是,默認(rèn)是去網(wǎng)站根目錄下找資源,也就是/var/www/html找資源現(xiàn)在資源/var/www/html下的jd目錄中,因此找資源的方式,就需要在ip后指定資源所在的目錄配置7:配置默認(rèn)主頁(yè)
當(dāng)客戶端沒有指定要請(qǐng)求哪個(gè)文件,那么就自動(dòng)發(fā)送給客戶端一個(gè)默認(rèn)文件,這就是默認(rèn)首頁(yè) DirectoryIndex配置8:訪問控制
<Directory /path/to/control> 控制的范圍:整個(gè)網(wǎng)站做控制網(wǎng)站的某個(gè)頁(yè)面、目錄做控制 </Directory>optionsFollowSymLinks:允許通過符號(hào)連接的方式來(lái)訪問網(wǎng)站根目錄下的資源的文件Indexes:如果用戶沒有指定所請(qǐng)求的文件,而且系統(tǒng)中也找不到默認(rèn)首頁(yè),則將全部的文件列表返回給用戶AllowOverride指定各個(gè)目錄下的.htaccess中的控制指令是否可以覆蓋掉主配置文件中的控制指令None:忽略各個(gè)目錄下的.htaccessAll:用各個(gè)目錄下的.htaccess中的配置覆蓋掉主配置文件中的控制指令A(yù)uthConfig:實(shí)現(xiàn)基于用戶名/密碼的訪問控制對(duì)用戶的訪問控制 1. 基于IP的訪問控制 2. 基于用戶和密碼的訪問控制配置9:基于IP的訪問控制
Order:指定次序Order Allow DenyOrder Deny Allow【后面的那個(gè)是默認(rèn)值】Allow from 指定允許訪問的主機(jī)列表 Deny from 指定禁止訪問的主機(jī)列表 【多條規(guī)則的組合結(jié)果】指定主機(jī)列表192.168.5.123192.168.5.0/24192.168.5例子Order Allow DenyAllow from 192.168.5.123 192.168.5.124 Deny from 192.168.5.123Order Allow Deny只匹配到allow,按allow處理只匹配到deny,按deny處理如果兩個(gè)都匹配到了,則按照默認(rèn)規(guī)則處理如果兩個(gè)都沒有匹配到了,則按照默認(rèn)規(guī)則處理配置10:用戶目錄
每個(gè)系統(tǒng)用戶的家目錄其實(shí)都可以做成一個(gè)網(wǎng)站的根目錄,訪問該用戶家目錄下的網(wǎng)站的方式 http://ip:port/~userName配置11:日志
訪問日志:定義:日志格式:LogFormat 格式信息 格式名稱%h:遠(yuǎn)程主機(jī)的IP地址%t:請(qǐng)求時(shí)間%l:客戶端登錄網(wǎng)站所用的用戶名,客戶端沒有登錄,顯示 -%u:遠(yuǎn)程用于做身份認(rèn)證的用戶名,如果沒有做認(rèn)證,顯示 -%r:請(qǐng)求報(bào)文的第一行(請(qǐng)求方法,請(qǐng)求的uri,請(qǐng)求的版本號(hào))%s:服務(wù)器端所返回的狀態(tài)值\"%{Referer}i\":顯示該用戶的請(qǐng)求是否為跳轉(zhuǎn)過來(lái)的,如果不是跳轉(zhuǎn)來(lái)的,顯示 - \"%{User-Agent}i\":客戶端的瀏覽器類型日志位置:CustomLog 保存位置 格式名稱配置12:設(shè)置字符集
AddDefaultCharset UTF-8配置13:配置路徑別名
Alias /error/ "/var/www/error/"注意:結(jié)尾必須相同配置14:配置CGI
CGI:Common Gateway Interface,是一種協(xié)議 作用:運(yùn)行讓用戶請(qǐng)求一個(gè)腳本,然后將腳本的執(zhí)行結(jié)果返回給客戶端,這里就用到了CGI協(xié)議,CGI協(xié)議就是讓apache啟動(dòng)一個(gè)解釋器來(lái)執(zhí)行腳本程序,然后將執(zhí)行的結(jié)果發(fā)送給客戶端腳本要想使用CGI執(zhí)行,并給客戶端返回結(jié)果,腳本的輸出格式是固定 第一行:Content-Type: text/html 第二行:空白行 第三行:這行開始是腳本的正文a.sh#!/bin/bashecho "Content-Type: text/html"echo ""echo "my name is :`hostname`"echo "date is: `date`"CGI找腳本的位置ScriptsAlias /cgi-bin/ "/var/www/cgi-bin/"配置15:配置虛擬主機(jī)功能
案例:http基于域名的虛擬主機(jī)的實(shí)現(xiàn)
配置16:狀態(tài)頁(yè)面
通過一個(gè)頁(yè)面來(lái)顯示服務(wù)器的狀態(tài) 功能依賴一個(gè)DSO模塊:status_module<Location /server-status> <<< 指定如何訪問這個(gè)狀態(tài)頁(yè)面SetHandler server-status <<< 指定做狀態(tài)統(tǒng)計(jì)的處理器Order deny,allowDeny from all <<< 拒絕所有用戶Allow from x.x.x.x <<< 指定可以訪問這個(gè)頁(yè)面的客戶端列表 </Location>說(shuō)明一個(gè)點(diǎn)就表示一個(gè)可以啟動(dòng),但是尚未啟動(dòng)的進(jìn)程一個(gè)_ 表示一個(gè)等待使用的進(jìn)程如果一個(gè)進(jìn)程被使用,位置上就會(huì)出現(xiàn)一個(gè)字母配置17:頁(yè)面壓縮
功能依賴一個(gè)DSO模塊:deflate_module 作用:減少傳輸?shù)臄?shù)據(jù)量,但是帶來(lái)額外的系統(tǒng)開銷SetOutPutFilter DEFLATE <<< 啟動(dòng)頁(yè)面壓縮功能 <IfModule mod_deflate.c>AddOutPutFilterByType DEFLATE text/html <<< 指定對(duì)什么類型的文件做壓縮AddOutPutFilterByType DEFLATE text/imageDeflateCompressionLevel 9 <<< 指定壓縮比 </IfModule>配置18:基于用戶的訪問控制
范圍整個(gè)網(wǎng)站某一個(gè)或者多個(gè)目錄 虛擬用戶用戶控制相關(guān)模塊 1:auth:指定認(rèn)證方式basic:基本認(rèn)證,也就是用戶名+密碼(明文)digest:基于摘要方式做認(rèn)證(hash) 2. authn:指定認(rèn)證的提供者(用于做認(rèn)證的信息的保存位置) 3. auzhz:指定授權(quán)機(jī)制------做運(yùn)維之前很矯情的小年輕-----
總結(jié)
以上是生活随笔為你收集整理的apache配置文件httpd.conf----小白福利的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一次完整的HTTP事务过程--超详细!
- 下一篇: http基于用户的访问控制--实战