Apache監控與調優 二 配置檔案

2021-10-06 18:46:00 字數 3826 閱讀 5126

apache配置檔案為httpd.conf,所在位置為conf目錄下。任何指令都可以放置在這個配置檔案中,但這些修改的指令都只能是在httpd啟動或重新啟動時才能被識別。

httpd配置檔案每行包含乙個指令。

反斜槓「 \」可以用作一行的最後乙個字元,以指示該指令繼續到下一行。

反斜槓和行尾之間不得有其他字元或空格。

指令的引數由空格分隔。如果引數包含空格,則必須將該引數用引號引起來。

配置檔案中的指令不區分大小寫,但是指令的引數通常區分大小寫。以井號「#」開頭的行被視為注釋,並被忽略。注釋不能與配置指令放在同一行。

在指令之前會出現空白,因此為了清楚起見,您可以縮排指令。

空行也將被忽略。

可以使用語法在配置檔案行中使用shell環境變數的值$。

在環境變數替換之後,配置檔案中一行的最大長度為8192個字元,該變數是在替換環境變數,連線任何連續的行並刪除開頭和結尾的空白之後。

您可以使用apachectl configtest-t命令列選項在不啟動伺服器的情況下檢查配置檔案中的語法錯誤。

1. serverroot

http-www的home目錄,用來存放配置檔案、錯誤檔案、記錄檔案。
2. listen
用於設定伺服器ip位址和埠號,apache預設埠號是80。
3.user
啟動apache的相關使用者
4.group:
啟動apache相關組
5.pidfile:
表示啟動程式程序所在的位置
6.timeout:
表示連線超時,如果客戶端與伺服器已連線上,在超時範圍內還未傳送請求給伺服器,那麼伺服器會自動與客戶端斷開。
7.keepalive:
表示是否保持長連線,即在乙個tcp連線下可以傳送多個http請求。

語法: keepalive on|off

預設值:

keepalive on

http1.0的keep-alive擴充套件功能和http1.1的持久連線功能提供了長期存在的http會話,該會話允許通過同一tcp連線傳送多個請求。

8.keepalivetimeout:

表示當開啟長連線時,請求與請求之間的時間隔。

語法:keepalivetimeout seconds

樣例:keepalivetimeout 5

設定keepalivetimeout為較高的值可能會導致伺服器負載過重的效能問題。超時時間越長,等待與空閒客戶端進行連線的伺服器程序將被占用的時間越長。

9.mpm相關引數

mpm是多通路處理模組,主要的引數包括:

startservers、

maxclients、

serverlimit、

minsparethreads、

maxsparethreads、

threadsperchild

和maxrequestsperchild。

這些引數具體的使用在後面講mpm調優時會詳細來介紹。

10.servername

表示伺服器的主機名
11.documentroot
表示發布的應用程式所在的位置

documentroot語法:

documentroot *directory-path*

預設值:

documentroot /usr/local/apache/htdocs

該指令設定httpd將從該路徑下獲取取。例:

documentroot /usr/web

如果訪問 將指向 /usr/web/index.html。如果目錄路徑不是絕對路徑,則假定它是相對於的serverroot。

12. directory指令

和用於封裝一組指令,使之僅對某個目錄及其子目錄生效。

使用… 設定指定目錄的訪問許可權,其中可包含:

options、allowoverride 、order、allow 、deny。

其語法如下:

...

directory-path可以是目錄的完整路徑,也可以是使用unix shell樣式匹配的萬用字元字串。在萬用字元字串中,?匹配任何單個字元,並且*匹配任何字串行,也可以使用約束字元的範圍。所有萬用字元都不匹配'/'字元,因此將不匹配 /home/user/public_html,但將匹配。例:

options indexes followsymlinks

除了可以使用萬用字元匹配路徑外,路徑也可以支援正規表示式的形式。例如:

表示將匹配/www/由三個數字組成的目錄。

如果多個(非正規表示式)節與包含文件的目錄(或其父目錄之一)匹配,則將以最短匹配的順序應用這些指令,並在這些檔案中插入 .htaccess 檔案中的指令。例如,

allowoverride none

allowoverride fileinfo

allowoverride none:表示(禁用.htaccess檔案)。

allowoverride fileinfo:表示(用於directory /home)。

以訪問文件/home/web/dir/doc.html為例,其訪問順序如下:

應用所有fileinfo的指令 /home/.htaccess、/home/web/.htaccess、/home/web/dir/.htaccess,並按此順序訪問。

13. directorymatch指令

包含適用於與正規表示式及其子目錄匹配的檔案系統目錄的指令。

語法:

< directorymatch regex >

...

這些指令將僅適用於命名目錄和 該目錄的子目錄(以及其中的檔案)。但是,它以正規表示式作為引數。例如:

將匹配/www/由三個數字組成的目錄。

14.ifmodule指令

語法:

...
表示檢測特定的模組是否存在,如果存在則執行裡面的指令,如果不存在則忽略開始標記到結束標記之間所有的內容。

15.location指令

語法:

...
該指令是將其附隨的引數傳遞到url中,location指令後面的引數就是直接應用於url請求中的,如果需求生效,那麼url路徑部分應該滿足以下任一條件:

該url可以使用萬用字元。在萬用字元字串中,?匹配任何單個字元,並且*匹配任何字串行。

這兩個萬用字元都不匹配url路徑中的/

除~字元外,還可以使用 正規表示式。例如:

16. options指令

options用於配置特定目錄中可用的功能

語法:

options [+|-]*option* [[+|-]*option*] ...
注意:混合使用前面帶"+"/"-"和前面不帶"+"/"-"的同一可選項,可能會導致出現意料之外的結果。

Apache調優及配置

keepalivetimeout 5 持續作用中伺服器在兩次請求之間等待的時間數 maxkeepaliverequests 3000 乙個長連線中允許的最高請求數量 minspareservers 5 自己翻譯 充許最小的空閒程序 maxspareservers 10 自己翻譯 充許最大的空閒程序 ...

yum安裝apache與調優

firewall cmd premanent add service httpd 設定通過防火牆 setsebool p httpd can network connect 1 selinux通過 rpm qa grep httpd 檢視apache systemctl stop httpd 啟動a...

Tomcat配置與調優

session複製配置方法注意 配置安全 注釋或刪除tomcat users.xml檔案內的所有使用者許可權 更改關閉tomcat指令或禁用方案一 更改埠號和指令 方案二 禁用8005埠 定義錯誤頁面 使用者在訪問資源時出現404,500這樣的異常,就能看到我們自定義的錯誤頁面,而不會看到異常的堆疊...