Habilitar mod_headers, Dockerfile - Apache

Habilitar mod_headers, Dockerfile - Apache

Lo siguiente no tiene ningún efecto;

# 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

es decir, ¿el mod_headersmódulo no se carga?

ingrese la descripción de la imagen aquí

¿Conoce alguna forma de instalar el mod_headersmódulo dentro Dockerfile?

Lo intenté;

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

pero luego el contenedor no arranca.

Respuesta1

Agregue esto a su Dockerfile:

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

Ese código habilitará mod_rewrite y mod_headers.

Respuesta2

Configúrelo en el archivo de configuración de Apache con un reemplazo sed. Como esto:

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

Obviamente cambiarías el nombre del módulo con el módulo tuyo requerido... Y la ubicación correcta de tu httpd.conf, ya que podría estar en una ruta diferente.

información relacionada