FROM httpd:2.4 # Enable required modules RUN sed -i \ -e 's/^#LoadModule rewrite_module/LoadModule rewrite_module/' \ -e 's/^#LoadModule headers_module/LoadModule headers_module/' \ -e 's/^#LoadModule autoindex_module/LoadModule autoindex_module/' \ -e 's/^#LoadModule alias_module/LoadModule alias_module/' \ -e 's/^#LoadModule proxy_module/LoadModule proxy_module/' \ -e 's/^#LoadModule proxy_http_module/LoadModule proxy_http_module/' \ -e 's/^#LoadModule ssl_module/LoadModule ssl_module/' \ /usr/local/apache2/conf/httpd.conf # Configure autoindex + icons + .htaccess + unrestricted reverse-proxy permissions RUN printf '\n# --- Custom for file listing + .htaccess ---\n\ AddDefaultCharset UTF-8\n\ \n\ Include conf/extra/httpd-autoindex.conf\n\ \n\ Alias /icons/ "/usr/local/apache2/icons/"\n\ \n\ Require all granted\n\ \n\ \n\ # Autoindex settings\n\ IndexOptions FancyIndexing FoldersFirst NameWidth=*\n\ \n\ \n\ Options Indexes FollowSymLinks\n\ IndexIgnore _*\n\ AllowOverride All\n\ Require all granted\n\ \n\ \n\ # Allow RewriteRule [P] from trusted .htaccess files\n\ ProxyRequests Off\n\ ProxyVia Off\n\ SSLProxyEngine on\n\ \n\ Require all granted\n\ \n' >> /usr/local/apache2/conf/httpd.conf EXPOSE 80