以下沒有效果;
# 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 的正確位置,因為它可能位於不同的路徑中。