Aktivieren Sie mod_headers, Dockerfile – Apache

Aktivieren Sie mod_headers, Dockerfile – Apache

Das Folgende hat keine Wirkung;

# 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

d. h. das mod_headersModul kann nicht geladen werden?

Bildbeschreibung hier eingeben

Kennen Sie eine Möglichkeit, das mod_headersModul darin zu installieren Dockerfile?

Ich habe es versucht;

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

aber dann startete der Container nicht.

Antwort1

Fügen Sie dies zu Ihrer Docker-Datei hinzu:

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

Dieser Code aktiviert mod_rewrite und mod_headers.

Antwort2

Legen Sie es in der Apache-Konfigurationsdatei mit einem sed-Ersetzen fest. So:

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

Sie würden den Modulnamen natürlich durch Ihr erforderliches Modul ersetzen … Und den richtigen Speicherort Ihrer httpd.conf, da sich dieser möglicherweise in einem anderen Pfad befindet.

verwandte Informationen