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_headers
Modul kann nicht geladen werden?
Kennen Sie eine Möglichkeit, das mod_headers
Modul 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.