# - mod_auth_digest and mod_auth_basic R: apache(authn) ?
# - FYI: http://wiki.apache.org/httpd/InternalDummyConnection
-
-# 2.4 TODO
-#
-# add new access control syntax to configs by default (mod_access_compat provides old syntax)
-
-
# Conditional build:
%bcond_without ssl # build without SSL support
%bcond_without ldap # build without LDAP support
Summary(ru.UTF-8): Самый популярный веб-сервер
Summary(tr.UTF-8): Lider WWW tarayıcı
Name: apache
-Version: 2.4.1
-Release: 0.4
+Version: 2.4.4
+Release: 1
License: Apache v2.0
Group: Networking/Daemons/HTTP
Source0: http://www.apache.org/dist/httpd/httpd-%{version}.tar.gz
-# Source0-md5: 4366afbea8149ca125af01fd59a2f8a2
+# Source0-md5: a2fed766e67c9681e0d9b86768f08286
Source1: %{name}.init
Source2: %{name}.logrotate
Source3: %{name}.sysconfig
Requires: apr >= %{apr_ver}
Requires: psmisc >= 20.1
Requires: rc-scripts >= 0.4.1.23
-Requires: %{name}-mod_unixd = %{version}-%{release}
Provides: apache(modules-api) = %{_apache_modules_api}
Provides: group(http)
Provides: user(http)
Obsoletes: apache-mod_optional_fn_import
Obsoletes: apache-mod_optional_fn_import
Obsoletes: apache-mod_optional_hook_import
+Obsoletes: apache(mod_unixd)
Conflicts: apache < 2.2.0
Conflicts: logrotate < 3.7-4
# for the posttrans scriptlet, conflicts because in vserver environment rpm package is not installed.
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_authn_anon.html
Requires: %{name}-base = %{version}-%{release}
+Requires: apache(mod_authn_core) = %{version}-%{release}
Provides: apache(mod_authn_anon) = %{version}-%{release}
# compat
Provides: apache(mod_auth_anon) = %{version}-%{release}
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_authn_dbd.html
Requires: %{name}-base = %{version}-%{release}
-Requires: %{name}-mod_dbd = %{version}-%{release}
+Requires: apache(mod_dbd) = %{version}-%{release}
+Requires: apache(mod_authn_core) = %{version}-%{release}
Provides: apache(mod_authn_dbd) = %{version}-%{release}
%description mod_authn_dbd
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_authn_dbm.html
Requires: %{name}-base = %{version}-%{release}
+Requires: apache(mod_authn_core) = %{version}-%{release}
Provides: apache(mod_authn_dbm) = %{version}-%{release}
%description mod_authn_dbm
URL: http://httpd.apache.org/docs/2.4/mod/mod_authn_core.html
Requires: %{name}-base = %{version}-%{release}
Provides: apache(mod_authn_core) = %{version}-%{release}
+Obsoletes: apache(mod_authn_alias)
Obsoletes: apache-mod_authn_default < 2.4
%description mod_authn_core
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_authn_file.html
Requires: %{name}-base = %{version}-%{release}
+Requires: apache(mod_authn_core) = %{version}-%{release}
Provides: apache(mod_authn_file) = %{version}-%{release}
%description mod_authn_file
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_authz_dbm.html
Requires: %{name}-base = %{version}-%{release}
+Requires: apache(mod_authz_core) = %{version}-%{release}
Provides: apache(mod_authz_dbm) = %{version}-%{release}
%description mod_authz_dbm
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_authz_groupfile.html
Requires: %{name}-base = %{version}-%{release}
+Requires: apache(mod_authz_core) = %{version}-%{release}
Provides: apache(mod_authz_groupfile) = %{version}-%{release}
%description mod_authz_groupfile
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_authz_host.html
Requires: %{name}-base = %{version}-%{release}
+Requires: apache(mod_authz_core) = %{version}-%{release}
Provides: apache(mod_authz_host) = %{version}-%{release}
-# for upgrade from 2.2, maybe this should be a "Suggests", but it's safer to require it by force
-Requires: apache(mod_access_compat) = %{version}-%{release}
+# for upgrade from 2.2
+Suggests: apache(mod_access_compat) = %{version}-%{release}
# for apache < 2.2.0
Provides: apache(mod_access) = %{version}-%{release}
Provides: webserver(access)
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/en/mod/mod_authz_owner.html
Requires: %{name}-base = %{version}-%{release}
+Requires: apache(mod_authz_core) = %{version}-%{release}
#Requires: any-auth-module
Provides: apache(mod_authz_owner) = %{version}-%{release}
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/en/mod/mod_authz_user.html
Requires: %{name}-base = %{version}-%{release}
+Requires: apache(mod_authz_core) = %{version}-%{release}
Provides: apache(mod_authz_user) = %{version}-%{release}
%description mod_authz_user
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_ssl.html
Requires: %{name}-base = %{version}-%{release}
+Requires: apache(mod_socache_shmcb) = %{version}-%{release}
Requires: openssl >= %{openssl_ver}
%if "%{pld_release}" != "ac"
Requires: apr-util-dbm-db
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_authn_socache.html
Requires: %{name}-base = %{version}-%{release}
+Requires: apache(mod_authn_core) = %{version}-%{release}
Provides: apache(mod_authn_socache) = %{version}-%{release}
%description mod_authn_socache
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_authz_dbd.html
Requires: %{name}-base = %{version}-%{release}
+Requires: apache(mod_authz_core) = %{version}-%{release}
+Requires: apache(mod_dbd) = %{version}-%{release}
Provides: apache(mod_authz_dbd) = %{version}-%{release}
%description mod_authz_dbd
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_heartbeat.html
Requires: %{name}-base = %{version}-%{release}
-Requires: %{name}-mod_status = %{version}-%{release}
-Requires: %{name}-mod_watchdog = %{version}-%{release}
+Requires: apache(mod_status) = %{version}-%{release}
+Requires: apache(mod_watchdog) = %{version}-%{release}
Provides: apache(mod_heartbeat) = %{version}-%{release}
%description mod_heartbeat
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_heartmonitor.html
Requires: %{name}-base = %{version}-%{release}
-Requires: %{name}-mod_status = %{version}-%{release}
-Requires: %{name}-mod_watchdog = %{version}-%{release}
+Requires: apache(mod_status) = %{version}-%{release}
+Requires: apache(mod_watchdog) = %{version}-%{release}
Provides: apache(mod_heartmonitor) = %{version}-%{release}
%description mod_heartmonitor
Group: Networking/Daemons/HTTP
URL: http://httpd.apache.org/docs/2.4/mod/mod_session.html
Requires: %{name}-base = %{version}-%{release}
+Requires: apache(mod_dbd) = %{version}-%{release}
Provides: apache(mod_session) = %{version}-%{release}
Provides: apache(mod_session_cookie) = %{version}-%{release}
Provides: apache(mod_session_dbd) = %{version}-%{release}
%description mod_socache
Shared object cache provider.
-%package mod_unixd
-Summary: Basic (required) security for Unix-family platforms
-Group: Networking/Daemons/HTTP
-URL: http://httpd.apache.org/docs/2.4/mod/mod_unixd.html
-Requires: %{name}-base = %{version}-%{release}
-Provides: apache(mod_unixd) = %{version}-%{release}
-
-%description mod_unixd
-Basic (required) security for Unix-family platforms.
-
%package mod_watchdog
Summary: Provides infrastructure for other modules to periodically run tasks
Group: Networking/Daemons/HTTP
echo "LoadModule buffer_module modules/mod_buffer.so" > $CFG/00_mod_buffer.conf
echo "LoadModule data_module modules/mod_data.so" > $CFG/00_mod_data.conf
echo "LoadModule dialup_module modules/mod_dialup.so" > $CFG/00_mod_dialup.conf
-echo "LoadModule heartbeat_module modules/mod_heartbeat.so" > $CFG/00_mod_heartbeat.conf
-echo "LoadModule heartmonitor_module modules/mod_heartmonitor.so" > $CFG/00_mod_heartmonitor.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 lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so" > $CFG/00_mod_lbmethod.conf
echo "#LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so" >> $CFG/00_mod_lbmethod.conf
echo "#LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so" >> $CFG/00_mod_lbmethod.conf
echo "#LoadModule socache_dbm_module modules/mod_socache_dbm.so" > $CFG/00_mod_socache.conf
echo "#LoadModule socache_memcache_module modules/mod_socache_memcache.so" >> $CFG/00_mod_socache.conf
echo "#LoadModule socache_shmcb_module modules/mod_socache_shmcb.so" >> $CFG/00_mod_socache.conf
-echo "LoadModule unixd_module modules/mod_unixd.so" > $CFG/00_mod_unixd.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
' >> "$cur/manual.files"
cd $cur
+# move apxs to _sbindir
+mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/apxs
+
# cgi_test: create config file with ScriptAlias
cat << 'EOF' > $CFG/09_cgi_test.conf
ScriptAlias /cgi-bin/printenv %{_cgibindir}/printenv
fi
if [ -f /etc/sysconfig/httpd ]; then
MPM=$(grep HTTPD_MPM /etc/sysconfig/httpd |sed 's,HTTPD_MPM=,,;s,",,g')
- if [ -n $MPM ]; then
+ if [ ! -z $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
EOF
%triggerpostun base -- %{name} < 2.4.0
-%banner -e %{name} << EOF
-WARNING!!!
-Since apache-2.4 mod_authn_alias has been obsoleted.
-If you use access control (Deny,Allow) install mod_access_compat by doing:
-poldek -ivh %{name}-mod_access_compat
-
-In apache-2.4 mod_authn_default and mod_authz_default have been obsoleted by
-mod_authn_core and authz_core. If you used these modules install the new ones by invoking:
-poldek -ivh %{name}-mod_authn_core
-and/or
-poldek -ivh %{name}-mod_authz_core
-
-For more information on how to upgrade from Apache 2.2 visit:
-http://httpd.apache.org/docs/2.4/upgrading.html
-EOF
-
+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 mod_ssl -- %{name}-mod_ssl < 1:2.2.0-3.1
cp -f /etc/httpd/conf.d/40_mod_ssl.conf{,.rpmsave}
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 '
+ /^SSLMutex/s,^,#,
+ /^NameVirtualHost.*/s,.*,,
+' /etc/httpd/conf.d/40_mod_ssl.conf
+
%posttrans base
# restore lock which we disabled in pretrans
mv -f /var/lock/subsys/httpd{.disabled,} 2>/dev/null
%module_scripts mod_session
%module_scripts mod_slotmem
%module_scripts mod_socache
-%module_scripts mod_unixd
%module_scripts mod_watchdog
%module_scripts mod_xml2enc
%attr(640,root,root) %{_sysconfdir}/magic
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/httpd
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/*
-# MPM modules
+# required modules
%attr(755,root,root) %{_libexecdir}/mod_mpm_event.so
%attr(755,root,root) %{_libexecdir}/mod_mpm_prefork.so
%attr(755,root,root) %{_libexecdir}/mod_mpm_worker.so
+%attr(755,root,root) %{_libexecdir}/mod_unixd.so
%dir %{_libexecdir}
%attr(755,root,root) %{_libexecdir}/mod_suexec.so
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_suexec.conf
%{_mandir}/man8/suexec.8*
+%{_mandir}/man8/fcgistarter.8*
%files index
%defattr(644,root,root,755)
%files devel
%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/apxs
+%attr(755,root,root) %{_sbindir}/apxs
%attr(755,root,root) %{_sbindir}/envvars*
%dir %{_libexecdir}
%dir %{_libexecdir}/build
%attr(755,root,root) %{_libexecdir}/mod_socache_memcache.so
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_socache.conf
-%files mod_unixd
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libexecdir}/mod_unixd.so
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/conf.d/*_mod_unixd.conf
-
%files mod_watchdog
%defattr(644,root,root,755)
%attr(755,root,root) %{_libexecdir}/mod_watchdog.so