httpd配置文件中常用模塊詳解一

本文對http2.2常用的模塊作了總結

注意:關閉selinuxiptables

永久關閉:

Vim /etc/sysconfig/selinux 設置爲disabled

Yum install httpd-manual 安裝httpd手冊 ip/manual即可訪問

全局配置:

主服務器段配置(或者虛擬主機配置,二者生效一個);

 

全局配置:

Listen 80  //可以監聽多個端口

KeepAlive //是否保持連接

#MPM工作模式配置:默認是prefork

<IfModule prefork.c>

StartServers       8    //服務器初始化時啓動的進程數目

MinSpareServers    5   //最少空閒進程數目

MaxSpareServers   20  //最大空閒進程數目

ServerLimit      256   //允許Maxclients啓動的最大進程在線數目

MaxClients       256  //最大允許啓動進程數目來響應客戶端。最大併發響應數量

MaxRequestsPerChild  4000

</IfModule>

 

Woker工作模式:

<IfModule worker.c>

StartServers         4

MaxClients         300

MinSpareThreads     25

MaxSpareThreads     75

ThreadsPerChild     25

MaxRequestsPerChild  0  //0表示無限制

</IfModule>

 

/usr/sbin/httpd -l 即可查看編譯的模塊

//修改工作模式必須通過修改另一個配置文件:

//vim /etc/sysconfig/httpd

//去掉 HTTPD=/usr/sbin/httpd.worker  一般先停止服務,再修改此文件,確保穩定

 

主服務器段配置:

1 ServerRoot  /etc/httpd  //中心主機位置

2 DocumentRoot /var/www/html   //web資源存放位置,後面需加上目錄訪問控制,如下:

<Directory /var/www/html>

Options Indexes...             //控制該目錄下資源訪問方式

AllowOverride None..     //與訪問控制相關的指令都可以放在.htaccess文件中,是否往其中加指令。爲all的時候影響性能

Allow from all             //訪問控制,Deny是禁止訪問

</Directory>

 

 

訪問控制機制:

<Directory /path></Directory>

<File “”></File>    //對某個文件實行訪問控制

<FileMatch pattern></FileMatch>    //對符合正則表達式的文件實行訪問控制,由於會用到正則表達式引擎,所以降低效率,很少使用

 

<Location URL目錄></Location>   //Directory類似,但是路徑不是文件資源路徑,而是URL路徑

 

<LocationMatch “”></Location>

 

認證模塊:放在<Directory “”></Directory>

具體實例:

[root@centos6_2 ~]# vim /etc/sysconfig/selinux 

[root@centos6_2 ~]# mkdir /webtest/admin/

[root@centos6_2 ~]# vim /webtest/admin/index.html

<h1>admin file</h1>

[root@centos6_2 ~]# curl 202.193.52.228/admin

可以正常訪問

 

修改配置文件,定義目錄的權限

<Directory "/webtest/admin">

Options None

AllowOverride None

AuthType Basic

AuthName "admin auth test"

AuthUserFile "/etc/httpd/conf/.htpasswd"

Require user centos

</Directory>

 

Htpasswd -c -m|-s ./.htpasswd username

-c:創建文件

-m:指定md5加密方式

-s:指定sha加密方式

 

基於組控制:

    (1) 修改Directory中內容

增加:AuthgroupFile /etc/httpd/conf/.htgroup

(2) htpasswd命令創建用戶密碼

Htpasswd -c -m ./htpasswd root   //如果文件存在,則不需要寫-c選項,否則會覆蓋

(3) 編寫.htgroup文件,格式爲 grouname:user1 user2

 


定義站點的主頁面:

DirectoryIndex index.html index.html.var

 

4定義路徑別名

Alias /URL/ 實際的資源位置

 

5日誌模塊

ErrorLog logs/error_log               //錯誤日誌

CustomLog logs/access_log combined   //訪問日誌格式

 

6 status:輸出當前服務器啓動進程以及進程狀態

<Location /server-status>

    SetHandler server-status

    Order deny,allow

    allow from all          //實際環境只允許開放本地主機

#    Allow from .example.com

</Location>

 在瀏覽器中輸入 http://ip/server-status

 

 

 

 

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章