Apache 如何为docker官方httpd映像启用mod_重写模块?

Apache 如何为docker官方httpd映像启用mod_重写模块?,apache,docker,mod-rewrite,build,Apache,Docker,Mod Rewrite,Build,在docker compose的帮助下,我正在docker中运行一个LAMP堆栈,对于Web服务器,我使用的是来自docker的官方图像。httpd容器由Dockerfile创建: ARG APACHE_VERSION FROM httpd:$APACHE_VERSION RUN apt-get update;\apt-get upgrade;\a2enmod rewrite COPY demo.apache.conf /usr/local/apache2/conf/demo.apache.co

在docker compose的帮助下,我正在docker中运行一个LAMP堆栈,对于Web服务器,我使用的是来自docker的官方图像。httpd容器由Dockerfile创建:

ARG APACHE_VERSION
FROM httpd:$APACHE_VERSION
RUN apt-get update;\apt-get upgrade;\a2enmod rewrite
COPY demo.apache.conf /usr/local/apache2/conf/demo.apache.conf
RUN echo "Include /usr/local/apache2/conf/demo.apache.conf" \
    >> /usr/local/apache2/conf/httpd.conf
我试图使用
\a2enmod rewrite
命令启用mod_rewrite,但在生成过程中出现以下错误:

/bin/sh: 1: a2enmod: not found
ERROR: Service 'apache' failed to build: The command '/bin/sh -c apt-get update;\apt-get upgrade;\a2enmod rewrite' returned a non-zero code: 127
a2enmod失败了——据我所知,它只在debian系统中可用,而httpd基本映像中没有


如何在构建过程中为docker官方httpd映像启用mod_rewrite模块?

我最终找到了答案。我必须通过添加以下行在apache.conf文件中启用模块:

LoadModule rewrite_module modules/mod_rewrite.so

你应该把这个标记为答案。