Fix Apache-PHP integration: Add proper httpd.conf with proxy_fcgi configuration to enable PHP-FPM communication
All checks were successful
Deploy LAMP / Deploy LAMP (push) Successful in 25s

This commit is contained in:
Antoni Nuñez Romeu
2026-04-13 18:00:11 +02:00
parent 8df7336552
commit 37430ea617
11 changed files with 98 additions and 3 deletions

View File

@@ -1,7 +1,7 @@
FROM httpd:2.4-alpine
# Copy custom httpd.conf if needed (optional)
# COPY httpd.conf /usr/local/apache2/conf/httpd.conf
# Copy custom httpd.conf
COPY conf/httpd.conf /usr/local/apache2/conf/httpd.conf
# Enable Apache modules (rewrite, etc.) if needed
RUN sed -i 's/^#\(LoadModule rewrite_module\)/\1/' /usr/local/apache2/conf/httpd.conf && \
@@ -15,7 +15,7 @@ RUN sed -ri -e 's!/usr/local/apache2/htdocs!${APACHE_DOCUMENT_ROOT}!g' /usr/loca
EXPOSE 80
# Copy virtual host configuration (will be mounted via docker-compose)
# COPY vhosts/ /etc/apache2/sites-enabled/
COPY vhosts/ /etc/apache2/sites-enabled/
# Start Apache in foreground
CMD ["httpd-foreground"]

View File

View File

View File

View File

View File

View File

View File

View File

92
apache/conf/httpd.conf Normal file
View File

@@ -0,0 +1,92 @@
ServerRoot "/usr/local/apache2"
Listen 80
# Load essential modules
LoadModule mpm_event_module modules/mod_mpm_event.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_core_module modules/mod_authz_core.so
LoadModule access_compat_module modules/mod_access_compat.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule reqtimeout_module modules/mod_reqtimeout.so
LoadModule filter_module modules/mod_filter.so
LoadModule mime_module modules/mod_mime.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule env_module modules/mod_env.so
LoadModule headers_module modules/mod_headers.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule version_module modules/mod_version.so
LoadModule unixd_module modules/mod_unixd.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule dir_module modules/mod_dir.so
LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
<IfModule unixd_module>
User daemon
Group daemon
</IfModule>
ServerAdmin you@example.com
<Directory />
AllowOverride none
Require all denied
</Directory>
DocumentRoot "/usr/local/apache2/htdocs"
<Directory "/usr/local/apache2/htdocs">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
<Files ".ht*">
Require all denied
</Files>
ErrorLog "/proc/self/fd/2"
LogLevel warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
CustomLog "/proc/self/fd/1" common
</IfModule>
<IfModule alias_module>
ScriptAlias /cgi-bin/ "/usr/local/apache2/cgi-bin/"
</IfModule>
<Directory "/usr/local/apache2/cgi-bin">
AllowOverride None
Options None
Require all granted
</Directory>
<IfModule headers_module>
RequestHeader unset Proxy early
</IfModule>
<IfModule mime_module>
TypesConfig conf/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
</IfModule>
<IfModule proxy_fcgi_module>
# Proxy PHP requests to PHP-FPM
ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://php:9000/var/www/html/$1
</IfModule>