启用 mod_headers,Dockerfile - Apache

启用 mod_headers,Dockerfile - Apache

以下内容无效;

# Dockerfile
FROM php:7-apache

RUN apt-get update && \
 apt-get install -y libxml2-dev && \
 docker-php-ext-install soap

RUN docker-php-ext-install mysqli

# Enable apache mods.
RUN a2enmod php7.0
RUN a2enmod rewrite
RUN a2enmod headers

mod_headers模块加载失败?

在此处输入图片描述

您知道如何安装该mod_headers模块吗Dockerfile

我试过;

CMD ["/usr/sbin/apache2", "-D",  "FOREGROUND"]

但容器却无法启动。

答案1

将其添加到你的 Dockerfile:

RUN cp /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/ && \
    cp /etc/apache2/mods-available/headers.load /etc/apache2/mods-enabled/

该代码将启用 mod_rewrite 和 mod_headers。

答案2

使用 sed 替换在 Apache 配置文件中设置它。像这样:

运行 sed -i 's/#LoadModule mod_headers/LoadModule mod_headers/g' /usr/local/apache2/conf/httpd.conf

您显然会用所需的模块更改模块名称...以及 httpd.conf 的正确位置,因为它可能位于不同的路径中。

相关内容