apache2.4 文件服务器,Apache2.2和Apache2.4中httpd.conf配置文件的异同

本文详细介绍了Windows环境下Apache从2.2升级到2.4时配置文件httpd.conf的主要变化,包括权限设定由Order/Deny/Allow更改为Require,日志记录方式的调整,NameVirtualHost的移除,需要加载的不同模块,如启用Gzip和SSL的配置变化,以及Listen指令的更新。此外,还提供了针对Windows环境的特定设置建议,如设置EnableSendfile和AcceptFilter。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Windows环境从Apache2.2改成Apache2.4后httpd.conf中的设置异同。

1、权限设定方式变更

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

apache2.2:

Order deny,allow

Deny from all

apache2.4:

Require all denied

此处比较常用的有如下几种:

Require all denied

Require all granted

Require host xxx.com

Require ip 192.168.1 192.168.2

Require local

注意:若有设定在htaccess文件中的也要修改

2、设定日志纪录方式变更

RewriteLogLevel 指令改为 logLevel

LOGLEVEL设置第一个值是针对整个Apache的预设等级,后方可以对指定的模块修改此模块的日志记录等级

比如:

LogLevel warn rewrite: warn

3、Namevirtualhost 被移除

4、需载入更多的模块

开启Gzip在apache2.2中需载入mod_deflate,apache2.4中需载入mod_filter和mod_deflate

开启SSL在apache2.2中需载入mod_ssl,apache2.4中需载入mod_socache_shmcb和mod_ssl

5、在windows环境建议的设置

EnableSendfile Off

EnableMMAP Off

当Log日志出现AcceptEx failed等错误时建议设置

AcceptFilter http none

AcceptFilter https none

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

6、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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值