# Conditional build:
%bcond_without ssl # build without SSL support
%bcond_without ldap # build without LDAP support
-%bcond_with itk # ITK MPM
%bcond_with distcache # distcache support
%bcond_with bucketeer # debug one
+%bcond_without http2 # HTTP/2 support
# this is internal macro, don't change to %%apache_modules_api
%define _apache_modules_api 20120211
-%define openssl_ver 1.0.1e
+%define openssl_ver 1.0.2
%define apr_ver 1:1.4.6
%include /usr/lib/rpm/macros.perl
Summary(ru.UTF-8): Самый популярный веб-сервер
Summary(tr.UTF-8): Lider WWW tarayıcı
Name: apache
-Version: 2.4.6
+Version: 2.4.23
Release: 1
License: Apache v2.0
Group: Networking/Daemons/HTTP
Source0: http://www.apache.org/dist/httpd/httpd-%{version}.tar.bz2
-# Source0-md5: ea5e361ca37b8d7853404419dd502efe
+# Source0-md5: 04f19c60e810c028f5240a062668a688
Source1: %{name}.init
Source2: %{name}.logrotate
Source3: %{name}.sysconfig
Source29: %{name}-example.net.conf
Source30: %{name}.tmpfiles
Source31: %{name}.service
+Source32: %{name}-mod_http2.conf
Patch0: %{name}-configdir_skip_backups.patch
Patch1: %{name}-layout.patch
Patch2: %{name}-suexec.patch
Patch3: %{name}-branding.patch
Patch4: %{name}-apr.patch
-Patch5: httpd-dummy-connection-result.patch
Patch7: %{name}-syslibs.patch
# http://scripts.mit.edu/trac/browser/trunk/server/common/patches/httpd-2.2.x-mod_ssl-sessioncaching.patch?rev=1348
Patch25: httpd-2.2.x-mod_ssl-sessioncaching.patch
Patch26: %{name}-mod_vhost_alias_docroot.patch
-# http://mpm-itk.sesse.net/
-Patch28: %{name}-mpm-itk.patch
Patch29: libtool-tag.patch
Patch30: lua-lib.patch
URL: http://httpd.apache.org/
%{?with_distcache:BuildRequires: distcache-devel}
BuildRequires: libtool >= 2:1.5
BuildRequires: lua51-devel
+%{?with_http2:BuildRequires: nghttp2-devel >= 1.2.1}
%{?with_ldap:BuildRequires: openldap-devel >= 2.3.0}
%{?with_ssl:BuildRequires: openssl-devel >= %{openssl_ver}}
%{?with_ssl:BuildRequires: openssl-tools >= %{openssl_ver}}
Requires: %{name}-errordocs = %{version}-%{release}
Requires: %{name}-mod_alias = %{version}-%{release}
Requires: %{name}-mod_auth = %{version}-%{release}
+Requires: %{name}-mod_autoindex = %{version}-%{release}
+Requires: %{name}-mod_deflate = %{version}-%{release}
+Requires: %{name}-mod_dir = %{version}-%{release}
Requires: %{name}-mod_env = %{version}-%{release}
Requires: %{name}-mod_log_config = %{version}-%{release}
+Requires: %{name}-mod_logio = %{version}-%{release}
Requires: %{name}-mod_mime = %{version}-%{release}
Requires: %{name}-mod_mime_magic = %{version}-%{release}
Requires: %{name}-mod_negotiation = %{version}-%{release}
Requires: %{name}-mod_setenvif = %{version}-%{release}
Requires: %{name}-mod_speling = %{version}-%{release}
+Requires: %{name}-mod_status = %{version}-%{release}
Requires: %{name}-mod_userdir = %{version}-%{release}
Requires: %{name}-mod_version = %{version}-%{release}
Requires: %{name}-tools = %{version}-%{release}
Group: Documentation
Requires: %{name}-base = %{version}-%{release}
Obsoletes: indexhtml
+%if "%{_rpmversion}" >= "5"
+BuildArch: noarch
+%endif
%description index
Apache index.html* files.
Requires: %{name}-mod_dir = %{version}-%{release}
Requires: %{name}-mod_negotiation = %{version}-%{release}
Requires: %{name}-mod_setenvif = %{version}-%{release}
+%if "%{_rpmversion}" >= "5"
+BuildArch: noarch
+%endif
%description doc
Apache manual.
Requires: %{name}-mod_authz_host = %{version}-%{release}
Requires: %{name}-mod_include = %{version}-%{release}
Requires: %{name}-mod_negotiation = %{version}-%{release}
+%if "%{_rpmversion}" >= "5"
+BuildArch: noarch
+%endif
%description errordocs
Multi-language error messages.
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_authnz_ldap.html
Requires: %{name}-base = %{version}-%{release}
+Requires: %{name}-mod_authn_core = %{version}-%{release}
Requires: %{name}-mod_ldap = %{version}-%{release}
Requires: apr-util-ldap
Provides: apache(mod_authnz_ldap) = %{version}-%{release}
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/en/mod/mod_dav.html
Requires: %{name}-base = %{version}-%{release}
-Requires: apache-mod_authn_file
-Requires: apache-mod_setenvif
Requires: apr-util-dbm-db
Provides: apache(mod_dav) = %{version}-%{release}
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_deflate.html
Requires: %{name}-base = %{version}-%{release}
-Requires: %{name}-mod_headers = %{version}-%{release}
Requires: %{name}-mod_filter = %{version}-%{release}
+Requires: %{name}-mod_headers = %{version}-%{release}
Provides: apache(mod_deflate) = %{version}-%{release}
%description mod_deflate
URL: http://httpd.apache.org/docs/2.4/mod/mod_headers.html
Requires: %{name}-base = %{version}-%{release}
Provides: apache(mod_headers) = %{version}-%{release}
+Provides: webserver(headers)
%description mod_headers
This package contains mod_headers module. The module allows for the
dostępny) zamiast przechowywania danych w płaskich plikach. Do
używania tego modułu nie jest wymagana żadna konfiguracja.
+%package mod_http2
+Summary: Provide HTTP/2 support for the Apache HTTP Server
+Summary(pl.UTF-8): Obsługa HTTP/2 dla serwera HTTP Apache
+Group: Networking/Daemons/HTTP
+URL: http://httpd.apache.org/docs/2.4/mod/mod_http2.html
+Requires: %{name}-base = %{version}-%{release}
+Provides: apache(mod_http2) = %{version}-%{release}
+
+%description mod_http2
+This module provides HTTP/2 (RFC 7540) support for the Apache HTTP
+Server.
+
+%description mod_http2 -l pl.UTF-8
+Ten moduł zapewnia obsługę HTTP/2 (RFC 7540) dla serwera HTTP Apache.
+
%package mod_ident
Summary: RFC 1413 ident lookups
Summary(pl.UTF-8): Sprawdzanie identyfikacji RFC 1413
the Lua programming language. The extension points (hooks) available
with mod_lua include many of the hooks available to natively compiled
Apache HTTP Server modules, such as mapping requests to files,
-generating dynamic responses, access control, authentication,
-and authorization.
+generating dynamic responses, access control, authentication, and
+authorization.
%description mod_lua -l pl.UTF-8
Ten moduł pozwala na rozszerzanie serwera poprzez skrypty napisane w
uwierzytelnianie i autoryzacja.
%package mod_macro
-Summary: Provides macros within apache runtime configuration files
-Summary(pl.UTF-8): Makra wewnątrz klików konfiguracyjnych apache
+Summary: Provides macros within Apache runtime configuration files
+Summary(pl.UTF-8): Makra wewnątrz klików konfiguracyjnych Apache'a
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_macro.html
Requires: %{name}-base = %{version}-%{release}
Provides: apache(mod_macro) = %{version}-%{release}
%description mod_macro
-This module provides macros within apache runtime configuration files.
+This module provides macros within Apache runtime configuration files.
These macros have parameters. They are expanded when used (parameters
are substituted by their values given as an argument), and the result
is processed normally.
%description mod_macro -l pl.UTF-8
Ten moduł umożliwia tworzenie makr wewnątrz plików konfiguracyjnych
-apache. Makra mogą mieć parametry. Makra są rozwijane w momencie
-użycia (argumenty makra są podstawiane za wartości parametrów) a wynik
-jest parsowany jak normalna konfiguracja.
+Apache'a. Makra mogą mieć parametry. Makra są rozwijane w momencie
+użycia (argumenty makra są podstawiane za wartości parametrów), a
+wynik jest przetwarzany jak normalna konfiguracja.
%package mod_mime
Summary: Associates the requested filename's extensions with the file's behavior and content
URL: http://httpd.apache.org/docs/2.4/mod/mod_session_crypto.html
Requires: %{name}-base = %{version}-%{release}
Requires: %{name}-mod_session = %{version}-%{release}
+Requires: apr-util-crypto-openssl
Provides: apache(mod_session_crypto) = %{version}-%{release}
%description mod_session_crypto
URL: http://httpd.apache.org/docs/2.4/mod/mod_ssl.html
Requires: %{name}-base = %{version}-%{release}
Requires: %{name}-mod_socache_shmcb = %{version}-%{release}
-Requires: openssl >= %{openssl_ver}
Requires: apr-util-dbm-db
+Requires: openssl >= %{openssl_ver}
Provides: apache(mod_ssl) = 1:%{version}-%{release}
%description mod_ssl
Group: Networking/Utilities
Requires: %{name}-base = %{version}-%{release}
Requires: filesystem >= 2.0-1
+%if "%{_rpmversion}" >= "5"
+BuildArch: noarch
+%endif
%description cgi_test
Two cgi test/demo programs: test-cgi and print-env.
%patch2 -p1
%patch3 -p1
%patch4 -p1
-%patch5 -p1
%patch7 -p1
#%patch25 -p1
# ?
#%patch26 -p1
-# probably drop
-#%patch28 -p1
%patch29 -p1
%patch30 -p1
--enable-cern-meta \
--enable-expires \
--enable-headers \
+ %{__enable_disable http2} \
--enable-ident \
--enable-usertrack \
--enable-unique-id \
--enable-proxy-http \
--enable-proxy-ajp \
--enable-proxy-balancer \
+ --enable-proxy-fdpass \
%{?with_ssl:--enable-ssl %{?with_distcache:--enable-distcache}} \
--enable-http \
--enable-dav \
# clean "ccache" prefix. confuses other build systems (like php)
%{__sed} -i -re '/^(CC|CPP|CXX)/ s/ccache //' $RPM_BUILD_ROOT%{_libdir}/%{name}/build/config_vars.mk
-install %{SOURCE31} $RPM_BUILD_ROOT%{systemdunitdir}/httpd.service
+cp -p %{SOURCE31} $RPM_BUILD_ROOT%{systemdunitdir}/httpd.service
ln -s %{systemdunitdir}/httpd.service $RPM_BUILD_ROOT/etc/systemd/system/httpd.service
ln -s %{_libexecdir} $RPM_BUILD_ROOT%{_sysconfdir}/modules
ln -s %{_localstatedir}/run/httpd $RPM_BUILD_ROOT%{_sysconfdir}/run
ln -s %{_var}/log/httpd $RPM_BUILD_ROOT%{_sysconfdir}/logs
# we have own apache.conf
rm $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
-ln -s conf.d $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/httpd
cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/httpd
cp -a %{SOURCE26} $CFG/01_mod_log_config.conf
cp -a %{SOURCE27} $CFG/01_mod_mime_magic.conf
cp -a %{SOURCE28} $CFG/01_mod_cache.conf
+cp -a %{SOURCE32} $CFG/01_mod_http2.conf
cp -a %{SOURCE8} $CFG/20_mod_vhost_alias.conf
cp -a %{SOURCE9} $CFG/25_mod_status.conf
cp -a %{SOURCE10} $CFG/30_mod_proxy.conf
cp -a %{SOURCE22} $CFG/20_languages.conf
cp -a %{SOURCE29} $RPM_BUILD_ROOT%{_sysconfdir}/vhosts.d/example.net.conf
-install %{SOURCE30} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
-
-echo "LoadModule access_compat_module modules/mod_access_compat.so" > $CFG/00_mod_access_compat.conf
-echo "LoadModule actions_module modules/mod_actions.so" > $CFG/00_mod_actions.conf
-echo "LoadModule alias_module modules/mod_alias.so" > $CFG/00_mod_alias.conf
-echo "LoadModule allowmethods_module modules/mod_allowmethods.so" > $CFG/00_mod_allowmethods.conf
-echo "LoadModule asis_module modules/mod_asis.so" > $CFG/00_mod_asis.conf
-echo "LoadModule auth_basic_module modules/mod_auth_basic.so" > $CFG/00_mod_auth_basic.conf
-echo "LoadModule auth_digest_module modules/mod_auth_digest.so" > $CFG/00_mod_auth_digest.conf
-echo "LoadModule auth_form_module modules/mod_auth_form.so" > $CFG/00_mod_auth_form.conf
-echo "LoadModule authn_anon_module modules/mod_authn_anon.so" > $CFG/00_mod_authn_anon.conf
-echo "LoadModule authn_core_module modules/mod_authn_core.so" > $CFG/00_mod_authn_core.conf
-echo "LoadModule authn_dbd_module modules/mod_authn_dbd.so" > $CFG/00_mod_authn_dbd.conf
-echo "LoadModule authn_dbm_module modules/mod_authn_dbm.so" > $CFG/00_mod_authn_dbm.conf
-echo "LoadModule authn_file_module modules/mod_authn_file.so" > $CFG/00_mod_authn_file.conf
-echo "LoadModule authn_socache_module modules/mod_authn_socache.so" > $CFG/00_mod_authn_socache.conf
-echo "LoadModule authnz_ldap_module modules/mod_authnz_ldap.so" > $CFG/00_mod_authnz_ldap.conf
-echo "LoadModule authz_core_module modules/mod_authz_core.so" > $CFG/00_mod_authz_core.conf
-echo "LoadModule authz_dbd_module modules/mod_authz_dbd.so" > $CFG/00_mod_authz_dbd.conf
-echo "LoadModule authz_dbm_module modules/mod_authz_dbm.so" > $CFG/00_mod_authz_dbm.conf
-echo "LoadModule authz_groupfile_module modules/mod_authz_groupfile.so" > $CFG/00_mod_authz_groupfile.conf
-echo "LoadModule authz_owner_module modules/mod_authz_owner.so" > $CFG/00_mod_authz_owner.conf
-echo "LoadModule authz_user_module modules/mod_authz_user.so" > $CFG/00_mod_authz_user.conf
-echo "LoadModule buffer_module modules/mod_buffer.so" > $CFG/00_mod_buffer.conf
+cp -p %{SOURCE30} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
+
+for module in access_compat actions alias allowmethods asis auth_basic \
+ auth_digest auth_form authn_anon authn_core authn_dbd authn_dbm \
+ authn_file authn_socache authnz_ldap authz_core authz_dbd \
+ authz_dbm authz_groupfile authz_owner authz_user buffer \
+ case_filter_in case_filter cern_meta cgi charset_lite \
+ data dbd dialup dumpio \
+ echo env expires ext_filter \
+ file_cache filter \
+ headers heartbeat heartmonitor \
+ ident imagemap include \
+ lbmethod_bybusyness lbmethod_byrequests lbmethod_bytraffic \
+ lbmethod_heartbeat ldap log_debug log_forensic logio lua \
+ macro negotiation \
+ ratelimit reflector remoteip reqtimeout request rewrite \
+ sed session_cookie session_crypto session_dbd session setenvif \
+ slotmem_plain slotmem_shm socache_dbm socache_memcache \
+ socache_shmcb speling substitute \
+ unique_id usertrack version watchdog xml2enc; do
+
+echo "LoadModule ${module}_module modules/mod_$module.so" > $CFG/00_mod_$module.conf
+
+done
+
%if %{with bucketeer}
echo "LoadModule bucketeer_module modules/mod_bucketeer.so" > $CFG/00_mod_bucketeer.conf
%endif
-echo "LoadModule case_filter_in_module modules/mod_case_filter_in.so" > $CFG/00_mod_case_filter_in.conf
-echo "LoadModule case_filter_module modules/mod_case_filter.so" > $CFG/00_mod_case_filter.conf
-echo "LoadModule cern_meta_module modules/mod_cern_meta.so" > $CFG/00_mod_cern_meta.conf
-echo "LoadModule cgi_module modules/mod_cgi.so" > $CFG/00_mod_cgi.conf
-echo "LoadModule charset_lite_module modules/mod_charset_lite.so" > $CFG/00_mod_charset_lite.conf
-echo "LoadModule data_module modules/mod_data.so" > $CFG/00_mod_data.conf
-echo "LoadModule dbd_module modules/mod_dbd.so" > $CFG/00_mod_dbd.conf
-echo "LoadModule dialup_module modules/mod_dialup.so" > $CFG/00_mod_dialup.conf
-echo "LoadModule dumpio_module modules/mod_dumpio.so" > $CFG/00_mod_dumpio.conf
-echo "LoadModule echo_module modules/mod_echo.so" > $CFG/00_mod_echo.conf
-echo "LoadModule env_module modules/mod_env.so" > $CFG/00_mod_env.conf
-echo "LoadModule expires_module modules/mod_expires.so" > $CFG/00_mod_expires.conf
-echo "LoadModule ext_filter_module modules/mod_ext_filter.so" > $CFG/00_mod_ext_filter.conf
-echo "LoadModule file_cache_module modules/mod_file_cache.so" > $CFG/00_mod_file_cache.conf
-echo "LoadModule filter_module modules/mod_filter.so" > $CFG/00_mod_filter.conf
-echo "LoadModule headers_module modules/mod_headers.so" > $CFG/00_mod_headers.conf
-echo "LoadModule heartbeat_module modules/mod_heartbeat.so" > $CFG/01_mod_heartbeat.conf
-echo "LoadModule heartmonitor_module modules/mod_heartmonitor.so" > $CFG/01_mod_heartmonitor.conf
-echo "LoadModule ident_module modules/mod_ident.so" > $CFG/00_mod_ident.conf
-echo "LoadModule imagemap_module modules/mod_imagemap.so" > $CFG/00_mod_imagemap.conf
-echo "LoadModule include_module modules/mod_include.so" > $CFG/00_mod_include.conf
-echo "LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so" > $CFG/00_mod_lbmethod_bybusyness.conf
-echo "LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so" > $CFG/00_mod_lbmethod_byrequests.conf
-echo "LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so" > $CFG/00_mod_lbmethod_bytraffic.conf
-echo "LoadModule lbmethod_heartbeat_module modules/mod_lbmethod_heartbeat.so" > $CFG/00_mod_lbmethod_heartbeat.conf
-echo "LoadModule ldap_module modules/mod_ldap.so" > $CFG/00_mod_ldap.conf
-echo "LoadModule log_debug_module modules/mod_log_debug.so" > $CFG/00_mod_log_debug.conf
-echo "LoadModule log_forensic_module modules/mod_log_forensic.so" > $CFG/00_mod_log_forensic.conf
-echo "LoadModule logio_module modules/mod_logio.so" > $CFG/00_mod_logio.conf
-echo "LoadModule lua_module modules/mod_lua.so" > $CFG/00_mod_lua.conf
-echo "LoadModule macro_module modules/mod_macro.so" > $CFG/00_mod_macro.conf
-echo "LoadModule negotiation_module modules/mod_negotiation.so" > $CFG/00_mod_negotiation.conf
-echo "LoadModule ratelimit_module modules/mod_ratelimit.so" > $CFG/00_mod_ratelimit.conf
-echo "LoadModule reflector_module modules/mod_reflector.so" > $CFG/00_mod_reflector.conf
-echo "LoadModule remoteip_module modules/mod_remoteip.so" > $CFG/00_mod_remoteip.conf
-echo "LoadModule reqtimeout_module modules/mod_reqtimeout.so" >> $CFG/00_mod_reqtimeout.conf
-echo "LoadModule request_module modules/mod_request.so" > $CFG/00_mod_request.conf
-echo "LoadModule rewrite_module modules/mod_rewrite.so" > $CFG/00_mod_rewrite.conf
-echo "LoadModule sed_module modules/mod_sed.so" > $CFG/00_mod_sed.conf
-echo "LoadModule session_cookie_module modules/mod_session_cookie.so" > $CFG/00_mod_session_cookie.conf
-echo "LoadModule session_crypto_module modules/mod_session_crypto.so" > $CFG/00_mod_session_crypto.conf
-echo "LoadModule session_dbd_module modules/mod_session_dbd.so" > $CFG/00_mod_session_dbd.conf
-echo "LoadModule session_module modules/mod_session.so" > $CFG/00_mod_session.conf
-echo "LoadModule setenvif_module modules/mod_setenvif.so" > $CFG/00_mod_setenvif.conf
-echo "LoadModule slotmem_plain_module modules/mod_slotmem_plain.so" > $CFG/00_mod_slotmem_plain.conf
-echo "LoadModule slotmem_shm_module modules/mod_slotmem_shm.so" > $CFG/00_mod_slotmem_shm.conf
-echo "LoadModule socache_dbm_module modules/mod_socache_dbm.so" > $CFG/00_mod_socache_dbm.conf
-echo "LoadModule socache_memcache_module modules/mod_socache_memcache.so" > $CFG/00_mod_socache_memcache.conf
-echo "LoadModule socache_shmcb_module modules/mod_socache_shmcb.so" > $CFG/00_mod_socache_shmcb.conf
-echo "LoadModule speling_module modules/mod_speling.so" > $CFG/00_mod_speling.conf
-echo "LoadModule substitute_module modules/mod_substitute.so" > $CFG/00_mod_substitute.conf
-echo "LoadModule unique_id_module modules/mod_unique_id.so" > $CFG/00_mod_unique_id.conf
-echo "LoadModule usertrack_module modules/mod_usertrack.so" > $CFG/00_mod_usertrack.conf
-echo "LoadModule version_module modules/mod_version.so" > $CFG/00_mod_version.conf
-echo "LoadModule watchdog_module modules/mod_watchdog.so" > $CFG/00_mod_watchdog.conf
-echo "LoadModule xml2enc_module modules/mod_xml2enc.so" > $CFG/00_mod_xml2enc.conf
-
# anything in style dir not ending with .css is trash
%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/manual/style/{lang,latex,xsl}
%useradd -u 51 -r -d /home/services/httpd -s /bin/false -c "HTTP User" -g http http
%pretrans base
-# change httpd.conf from dir to symlink
-if [ ! -L /etc/httpd/httpd.conf ]; then
- if [ -d /etc/httpd/httpd.conf ]; then
- if [ -d /etc/httpd/conf.d ]; then
- mv /etc/httpd/httpd.conf/* /etc/httpd/conf.d
- rmdir /etc/httpd/httpd.conf 2>/dev/null || mv -v /etc/httpd/httpd.conf{,.rpmsave}
- else
- mv /etc/httpd/httpd.conf /etc/httpd/conf.d
- fi
-
- # new module packages issue error as first installed over 2.0 installation
- mv -f /var/lock/subsys/httpd{,.disabled} 2>/dev/null
- fi
-
- # always have httpd.conf symlink (until all packages from Ac use new dir)
- install -d /etc/httpd
- ln -s conf.d /etc/httpd/httpd.conf
-fi
+# handle $HTTPD_MPM from sysconfig
if [ -f /etc/sysconfig/httpd ]; then
- MPM=$(grep ^HTTPD_MPM /etc/sysconfig/httpd |sed 's,HTTPD_MPM=,,;s,",,g')
- if [ -n "$MPM" ]; then
- echo "LoadModule mpm_${MPM}_module modules/mod_mpm_${MPM}.so" > /etc/httpd/conf.d/10_mpm.conf.rpmnew
- cat /etc/httpd/conf.d/10_mpm.conf >> /etc/httpd/conf.d/10_mpm.conf.rpmnew
- mv /etc/httpd/conf.d/10_mpm.conf.rpmnew /etc/httpd/conf.d/10_mpm.conf
- sed -i -e 's,HTTPD_MPM.*,,g' /etc/sysconfig/httpd
- fi
+ MPM=$(grep ^HTTPD_MPM /etc/sysconfig/httpd | sed 's,HTTPD_MPM=,,;s,",,g')
+ if [ -n "$MPM" ]; then
+ echo "LoadModule mpm_${MPM}_module modules/mod_mpm_${MPM}.so" > /etc/httpd/conf.d/10_mpm.conf.rpmnew
+ cat /etc/httpd/conf.d/10_mpm.conf >> /etc/httpd/conf.d/10_mpm.conf.rpmnew
+ mv -f /etc/httpd/conf.d/10_mpm.conf.rpmnew /etc/httpd/conf.d/10_mpm.conf
+ sed -i -e 's,HTTPD_MPM.*,,g' /etc/sysconfig/httpd
+ fi
fi
exit 0
fi
%systemd_reload
-%triggerpostun base -- %{name} < 2.0.50-6.9
-%banner %{name}-2.0.50-6 << EOF
-WARNING!!!
-Since apache-2.0.50-6 autoindex module has been separated to package
-%{name}-mod_autoindex If you want to have the same functionality do:
-poldek -Uv %{name}-mod_autoindex
-EOF
-
-%triggerpostun base -- %{name} < 2.0.54-4
-%banner %{name}-2.0.54-2 << EOF
-WARNING!!!
-CGI demo/test programs - printenv and test-cgi, have been released
-from package apache into separate subpackage apache-cgi_test. If you
-need printenv and/or test-cgi, please install apache-cgi_test package,
-e.g. by running poldek -Uv apache-cgi_test
-EOF
-
-# update /etc/sysconfig/apache -> httpd rename
-if [ -f /etc/sysconfig/apache.rpmsave ]; then
- cp -f /etc/sysconfig/httpd{,.rpmnew}
- mv -f /etc/sysconfig/{apache.rpmsave,httpd}
-fi
-
-%triggerpostun base -- %{name} < 2.0.55-3.1
-# check for config first as in 2.2 it's .rpmsave
-if [ -f /etc/httpd/httpd.conf/10_httpd.conf ]; then
- if ! grep -q 'Include webapps.d/' /etc/httpd/httpd.conf/10_httpd.conf; then
- # make sure webapps.d is included
- cp -f /etc/httpd/httpd.conf/10_httpd.conf{,.rpmsave}
- # this file is ugly, so just append new lines
- cat <<-EOF >> /etc/httpd/httpd.conf/10_httpd.conf
- # Include webapps config
- Include webapps.d/*.conf
-EOF
- fi
-fi
-
-%triggerpostun base -- %{name} < 2.4.0
-cp -f /etc/httpd/apache.conf{,.rpmsave}
-sed -i -e '
- /^DefaultType.*/s,.*,,
- /^Include /s,^Include ,IncludeOptional ,
- /^NameVirtualHost.*/s,.*,,
- /^User/s,^,LoadModule unixd_module modules/mod_unixd.so\n,
-' /etc/httpd/apache.conf
-sed -i -e '
- s,^LockFile /var/run/httpd/accept.lock,Mutex file:/var/run/httpd/,g
-' /etc/httpd/conf.d/10_mpm.conf
-
-%triggerpostun base -- %{name} < 2.2.0
-# change HTTPD_CONF to point to new location. *only* if it's the
-# default config setting
-cp -f /etc/sysconfig/httpd{,.rpmorig}
-sed -i -e '/^HTTPD_CONF="\/etc\/httpd\/httpd.conf"/s,.*,HTTPD_CONF="/etc/httpd/apache.conf",' /etc/sysconfig/httpd
-
-if [ -f /etc/httpd/conf.d/10_httpd.conf.rpmsave ]; then
- sed -e '
- # as separate modules
- /^LoadModule access_module/s,^,#,
- /^LoadModule alias_module/s,^,#,
- /^LoadModule asis_module/s,^,#,
- /^LoadModule cern_meta_module/s,^,#,
- /^LoadModule cgi_module/s,^,#,
- /^LoadModule env_module/s,^,#,
- /^LoadModule include_module/s,^,#,
- /^LoadModule log_config_module/s,^,#,
- /^LoadModule mime_magic_module/s,^,#,
- /^LoadModule mime_module/s,^,#,
- /^LoadModule negotiation_module/s,^,#,
- /^LoadModule setenvif_module/s,^,#,
- /^LoadModule speling_module/s,^,#,
- /^LoadModule userdir_module/s,^,#,
-
- # in 30_errordocs.conf
- /<IfModule mod_include.c>/,/<\/IfModule>/s,^,#,
-
- # in 57_mod_autoindex.conf
- /^Alias \/icons\//s,^,#,
-
- # in apache.conf
- /^ScriptAlias \/cgi-bin\//s,^,#,
- /^Listen 80/s,^,#,
-
- # avoid loops
- /Include conf.d\/\*.conf/s,^,#,
- /Include webapps.d\/\*.conf/s,^,#,
-
- ' < /etc/httpd/conf.d/10_httpd.conf.rpmsave > /etc/httpd/conf.d/10_httpd.conf
-fi
-
-%banner -e %{name} <<'EOF'
-NB! Apache main config has been changed to /etc/httpd/apache.conf
-
-There has been changed a lot, so many things could be broken.
-Please report bugs to <http://bugs.pld-linux.org/>.
-
-EOF
-
-%triggerpostun base -- %{name} < 2.2.22-2
+%triggerpostun base -- %{name}-base < 2.2.22-2
. /etc/sysconfig/httpd
if [ -z "$HTTPD_CONF" ]; then
echo 'HTTPD_CONF="/etc/httpd/apache.conf"' >> /etc/sysconfig/httpd
fi
%systemd_trigger httpd.service
-%triggerpostun base -- %{name} < 2.4.0
+%triggerpostun base -- %{name}-base < 2.4.0
cp -f /etc/httpd/apache.conf{,.rpmsave}
sed -i -e '
/^DefaultType/d
s,^LockFile /var/run/httpd/accept.lock,Mutex file:/var/run/httpd/,g
' /etc/httpd/conf.d/10_mpm.conf
-%triggerpostun mod_ssl -- %{name}-mod_ssl < 1:2.2.0-3.1
-cp -f /etc/httpd/conf.d/40_mod_ssl.conf{,.rpmsave}
-sed -i -e '
- s,/var/run/apache,/var/run/httpd,g
- s,/var/cache/apache,/var/cache/httpd,g
-' /etc/httpd/conf.d/40_mod_ssl.conf
-
%triggerpostun mod_ssl -- %{name}-mod_ssl < 1:2.4.0
cp -f /etc/httpd/conf.d/40_mod_ssl.conf{,.rpmsave}
sed -i -e '
%module_scripts mod_headers
%module_scripts mod_heartbeat
%module_scripts mod_heartmonitor
+%module_scripts mod_http2
%module_scripts mod_ident
%module_scripts mod_imagemap
%module_scripts mod_include
%{_sysconfdir}/modules
%{_sysconfdir}/run
%{_sysconfdir}/logs
-%ghost %{_sysconfdir}/httpd.conf
%attr(750,root,root) %dir %{_sysconfdir}/conf.d
%attr(750,root,root) %dir %{_sysconfdir}/vhosts.d
%attr(750,root,root) %dir %{_sysconfdir}/webapps.d
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_heartmonitor.conf
%attr(755,root,root) %{_libexecdir}/mod_heartmonitor.so
+%if %{with http2}
+%files mod_http2
+%defattr(644,root,root,755)
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_http2.conf
+%attr(755,root,root) %{_libexecdir}/mod_http2.so
+%endif
+
%files mod_ident
%defattr(644,root,root,755)
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_ident.conf
%attr(755,root,root) %{_libexecdir}/mod_proxy_fcgi.so
%attr(755,root,root) %{_libexecdir}/mod_proxy_fdpass.so
%attr(755,root,root) %{_libexecdir}/mod_proxy_ftp.so
+%attr(755,root,root) %{_libexecdir}/mod_proxy_hcheck.so
%attr(755,root,root) %{_libexecdir}/mod_proxy_html.so
%attr(755,root,root) %{_libexecdir}/mod_proxy_http.so
%attr(755,root,root) %{_libexecdir}/mod_proxy_scgi.so