You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

httpd:2.4 Docker镜像中original与extra目录的区别

Docker Apache镜像与传统LAMP的配置差异解惑

一、/usr/local/apache2下original与extra目录的区别

  • original目录:存放Apache官方默认的原始配置文件,是镜像构建时自带的初始配置,一般不建议直接修改,可作为备份或参考模板使用。
  • extra目录:是官方预留的额外配置扩展目录,专门用来存放自定义配置片段(比如虚拟主机规则、模块启用配置等)。Apache主配置文件会通过Include指令自动引入该目录下的文件,这样能避免直接修改默认核心配置,保持配置的可维护性。

二、extra目录是否用于存放虚拟主机文件

是的。官方Apache镜像的主配置文件httpd.conf中默认包含Include conf/extra/httpd-vhosts.conf指令,你可以直接修改httpd-vhosts.conf添加虚拟主机配置,也可以在extra目录下新建自定义虚拟主机文件(比如mysite.conf),然后在主配置里补充对应的Include指令即可生效。

三、Docker Apache镜像与传统LAMP的.conf文件差异

  • 路径差异:传统LAMP的Apache配置通常位于/etc/apache2目录下,而Docker官方Apache镜像的配置根目录是/usr/local/apache2/conf——这是因为镜像基于源码编译安装Apache,而非系统包管理器(如apt/yum)安装,所以采用了编译默认路径。
  • 配置拆分逻辑:Docker镜像的配置更偏向模块化拆分,主配置httpd.conf仅保留核心基础配置,虚拟主机、SSL、全局参数等功能都拆分到extra目录下的独立文件中;而传统LAMP可能会把部分配置直接写入主配置,或使用/etc/apache2/sites-available、/etc/apache2/conf-available这类系统包管理默认的拆分目录(Debian/Ubuntu系)。
  • 默认配置精简:Docker镜像的默认配置更轻量化,仅启用必要的核心模块,而传统LAMP可能默认启用更多扩展模块和配置项。

四、default.conf中没有<Virtualhost *:80>的原因

你看到的httpd-default.conf(对应default.conf)是用来配置Apache的全局默认参数(比如超时时间、连接数、MIME类型映射等),虚拟主机配置并不属于这个文件的职责范围。默认虚拟主机规则要么直接写在httpd.conf里,要么在extra/httpd-vhosts.conf中(默认可能处于注释状态)。如果需要自定义虚拟主机,直接修改httpd-vhosts.conf或新增配置文件即可。

内容的提问来源于stack exchange,提问作者Samuel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 22:59:50