%define _apache_modules_api 20120211
%define openssl_ver 1.0.2
-%define apr_ver 1:1.4.6
+%define apr_ver 1:1.6.0
%include /usr/lib/rpm/macros.perl
Summary: The most widely used Web server on the Internet
Summary(ru.UTF-8): Самый популярный веб-сервер
Summary(tr.UTF-8): Lider WWW tarayıcı
Name: apache
-Version: 2.4.23
+Version: 2.4.26
Release: 2
License: Apache v2.0
Group: Networking/Daemons/HTTP
Source0: http://www.apache.org/dist/httpd/httpd-%{version}.tar.bz2
-# Source0-md5: 04f19c60e810c028f5240a062668a688
+# Source0-md5: d4d47749a44461cb2e6c9d78a22b522b
Source1: %{name}.init
Source2: %{name}.logrotate
Source3: %{name}.sysconfig
Patch2: %{name}-suexec.patch
Patch3: %{name}-branding.patch
Patch4: %{name}-apr.patch
-Patch5: apache-CVE-2016-5387.patch
-
Patch7: %{name}-syslibs.patch
Patch10: httpd-2.0.46-dav401dest.patch
Patch25: httpd-2.2.x-mod_ssl-sessioncaching.patch
Patch26: %{name}-mod_vhost_alias_docroot.patch
Patch29: libtool-tag.patch
-Patch30: lua-lib.patch
URL: http://httpd.apache.org/
BuildRequires: apr-devel >= %{apr_ver}
BuildRequires: apr-util-devel >= 1:1.3.10-2
%{?with_distcache:BuildRequires: distcache-devel}
BuildRequires: libtool >= 2:1.5
BuildRequires: lua51-devel
-%{?with_http2:BuildRequires: nghttp2-devel >= 1.2.1}
+%{?with_http2:BuildRequires: nghttp2-devel >= 1.15.0}
%{?with_ldap:BuildRequires: openldap-devel >= 2.3.0}
%{?with_ssl:BuildRequires: openssl-devel >= %{openssl_ver}}
%{?with_ssl:BuildRequires: openssl-tools >= %{openssl_ver}}
Requires: %{name}-mod_deflate = %{version}-%{release}
Requires: %{name}-mod_dir = %{version}-%{release}
Requires: %{name}-mod_env = %{version}-%{release}
+Requires: %{name}-mod_filter = %{version}-%{release}
+Requires: %{name}-mod_headers = %{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_reqtimeout = %{version}-%{release}
+Requires: %{name}-mod_rewrite = %{version}-%{release}
Requires: %{name}-mod_setenvif = %{version}-%{release}
Requires: %{name}-mod_speling = %{version}-%{release}
Requires: %{name}-mod_status = %{version}-%{release}
Provides: apache(mod_auth_digest) = %{version}-%{release}
%description mod_auth_digest
-This module implements HTTP Digest Authentication. However, it has not
-been extensively tested and is therefore marked experimental.
+This module implements HTTP Digest Authentication.
%description mod_auth_digest -l pl.UTF-8
-Ten moduł implementuje uwierzytelnienie HTTP Digest. Nie został on
-jednak zbyt obszernie przetestowany, więc jest oznaczony jako
-eksperymentalny.
+Ten moduł implementuje uwierzytelnienie HTTP Digest.
%package mod_auth_form
Summary: Form authentication
This module provides a small subset of configuration mechanisms
implemented by Russian Apache and its associated mod_charset.
-This is an experimental module and should be used with care.
-
%description mod_charset_lite -l pl.UTF-8
Translacja lub przekodowywanie znaków.
Ten moduł udostępnia niewielki podzbiór mechanizmów konfiguracyjnych
zaimplementowanych przez Russian Apache i powiązany z nim mod_charset.
-Jest to moduł eksperymentalny i należy używać go z uwagą.
-
%package mod_data
Summary: Convert response body into an RFC2397 data URL
Summary(pl.UTF-8): Konwersja ciała odpowiedzi do URL-a danych RFC2397
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_http2.html
Requires: %{name}-base = %{version}-%{release}
+Requires: nghttp2 >= 1.15.0
Provides: apache(mod_http2) = %{version}-%{release}
%description mod_http2
URL: http://httpd.apache.org/docs/2.4/mod/mod_reqtimeout.html
Requires: %{name}-base = %{version}-%{release}
Provides: apache(mod_reqtimeout) = %{version}-%{release}
-Provides: webserver(reqtimeout)
%description mod_reqtimeout
Apache module to set timeout and minimum data rate for receiving
%patch2 -p1
%patch3 -p1
%patch4 -p1
-%patch5 -p1
%patch7 -p1
# ?
#%patch26 -p1
%patch29 -p1
-%patch30 -p1
# sanity check
MODULES_API=`awk '/#define MODULE_MAGIC_NUMBER_MAJOR/ {print $3}' include/ap_mmn.h`
--enable-proxy-connect \
--enable-proxy-ftp \
--enable-proxy-http \
+ --enable-proxy-http2 \
--enable-proxy-ajp \
--enable-proxy-balancer \
--enable-proxy-fdpass \
cp -p %{SOURCE30} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
+LoadModule() {
+ local index=$1 module=$2 conffile
+ conffile=${3:-$module}
+ echo "LoadModule ${module}_module modules/mod_$module.so" > $CFG/${index}_mod_${conffile}.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 \
+ %{?with_bucketeer:bucketeer} \
case_filter_in case_filter cern_meta cgi charset_lite \
data dbd dialup dumpio \
echo env expires ext_filter \
socache_shmcb speling substitute \
unique_id usertrack version watchdog xml2enc; do
-echo "LoadModule ${module}_module modules/mod_$module.so" > $CFG/00_mod_$module.conf
-
+ LoadModule 00 $module
done
-%if %{with bucketeer}
-echo "LoadModule bucketeer_module modules/mod_bucketeer.so" > $CFG/00_mod_bucketeer.conf
-%endif
-
# anything in style dir not ending with .css is trash
%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/manual/style/{lang,latex,xsl}
find $RPM_BUILD_ROOT%{_datadir}/manual/style -type f ! -name '*.css' -print0 | xargs -0r rm -f
%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_http2.so
%attr(755,root,root) %{_libexecdir}/mod_proxy_scgi.so
%attr(755,root,root) %{_libexecdir}/mod_proxy_wstunnel.so
%attr(755,root,root) %{_libexecdir}/mod_proxy.so