Apache2.2和Apache2.4中httpd.conf配置文件的異同

一、權限設定方式變動apache

2.2使用Order Deny / Allow的方式,2.4改用Requirewindows

apache2.2:socket

Order deny,allow
Deny from all

apache2.4:ui

Require all denied

此處比較經常使用的有以下幾種:spa

Require all denied日誌

Require all grantedcode

Require host xxx.comorm

Require ip 192.168.1 192.168.2ip

Require localssl

注意:如有設定在htaccess文件中的也要修改

二、設定日誌紀錄方式變動

RewriteLogLevel 指令改成 logLevel

LOGLEVEL設置第一個值是針對整個Apache的預設等級,後方能夠對指定的模塊修改此模塊的日誌記錄等級

好比:

LogLevel warn rewrite: warn

三、Namevirtualhost 被移除

四、需載入更多的模塊

開啓Gzip在apache2.2中需載入mod_deflate,apache2.4中需載入mod_filter和mod_deflate

開啓SSL在apache2.2中需載入mod_ssl,apache2.4中需載入mod_socache_shmcb和mod_ssl

五、在windows環境建議的設置

EnableSendfile Off
EnableMMAP Off

當Log日誌出現AcceptEx failed等錯誤時建議設置

AcceptFilter http none
AcceptFilter https none

說明:Win32DisableAcceptEx在apache2.4中被AcceptFilter None取代

六、Listen設定的調整

以443爲例,不能夠只設定Listen 443

會出現如下錯誤:

(OS 10048)一次只能用一個通信端地址(通信協定/網路位址/鏈接) : AH00072: make_sock: could not bind to address [::]:443

(OS 10048)一次只能用一個通信端地址(通信協定/網路位址/鏈接) : AH00072: make_sock: could not bind to address 0.0.0.0:443

AH00451: no listening sockets available, shutting down

AH00015: Unable to open logs

所以需指定監聽的IP,可設定多個

例如:

Listen 192.168.2.1:443
Listen 127.0.0.1:443
相關文章
相關標籤/搜索