Lines 13-27
Link Here
|
13 |
IUSE_MPMS_FORK="itk peruser prefork" |
13 |
IUSE_MPMS_FORK="itk peruser prefork" |
14 |
IUSE_MPMS_THREAD="event worker" |
14 |
IUSE_MPMS_THREAD="event worker" |
15 |
|
15 |
|
16 |
IUSE_MODULES="actions alias asis auth_basic auth_digest authn_alias authn_anon |
16 |
# << obsolete modules: |
17 |
authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default |
17 |
# authn_default authz_default mem_cache |
18 |
authz_groupfile authz_host authz_owner authz_user autoindex cache cern_meta |
18 |
# mem_cache is replaced by cache_disk |
19 |
charset_lite cgi cgid dav dav_fs dav_lock dbd deflate dir disk_cache dumpio |
19 |
# ?? buggy modules |
|
|
20 |
# proxy_scgi: startup error: undefined symbol "ap_proxy_release_connection", no fix found |
21 |
# >> added modules for reason: |
22 |
# compat: compatibility with 2.2 access control |
23 |
# authz_host: new module for access control |
24 |
# authn_core: functionality provided by authn_alias in previous versions |
25 |
# authz_core: new module, provides core authorization capabilities |
26 |
# cache_disk: replacement for mem_cache |
27 |
# lbmethod_byrequests: Split off from mod_proxy_balancer in 2.3 |
28 |
# lbmethod_bytraffic: Split off from mod_proxy_balancer in 2.3 |
29 |
# lbmethod_bybusyness: Split off from mod_proxy_balancer in 2.3 |
30 |
# lbmethod_heartbeat: Split off from mod_proxy_balancer in 2.3 |
31 |
# slotmem_shm: Slot-based shared memory provider (for lbmethod_byrequests). |
32 |
# socache_shmcb: shared object cache provider. Default config with ssl needs it |
33 |
# unixd: fixes startup error: Invalid command 'User' |
34 |
IUSE_MODULES="access_compat actions alias asis auth_basic auth_digest authn_alias authn_anon |
35 |
authn_core authn_dbd authn_dbm authn_file authz_core authz_dbm |
36 |
authz_groupfile authz_host authz_owner authz_user autoindex cache cache_disk cern_meta |
37 |
charset_lite cgi cgid dav dav_fs dav_lock dbd deflate dir dumpio |
20 |
env expires ext_filter file_cache filter headers ident imagemap include info |
38 |
env expires ext_filter file_cache filter headers ident imagemap include info |
21 |
log_config log_forensic logio mem_cache mime mime_magic negotiation proxy |
39 |
lbmethod_byrequests lbmethod_bytraffic lbmethod_bybusyness lbmethod_heartbeat |
|
|
40 |
log_config log_forensic logio mime mime_magic negotiation proxy |
22 |
proxy_ajp proxy_balancer proxy_connect proxy_ftp proxy_http proxy_scgi rewrite |
41 |
proxy_ajp proxy_balancer proxy_connect proxy_ftp proxy_http proxy_scgi rewrite |
23 |
reqtimeout setenvif speling status substitute unique_id userdir usertrack |
42 |
reqtimeout setenvif slotmem_shm speling socache_shmcb status substitute unique_id userdir usertrack |
24 |
version vhost_alias" |
43 |
unixd version vhost_alias" |
25 |
# The following are also in the source as of this version, but are not available |
44 |
# The following are also in the source as of this version, but are not available |
26 |
# for user selection: |
45 |
# for user selection: |
27 |
# bucketeer case_filter case_filter_in echo http isapi optional_fn_export |
46 |
# bucketeer case_filter case_filter_in echo http isapi optional_fn_export |
Lines 33-44
Link Here
|
33 |
dav_fs:dav |
52 |
dav_fs:dav |
34 |
dav_lock:dav |
53 |
dav_lock:dav |
35 |
deflate:filter |
54 |
deflate:filter |
36 |
disk_cache:cache |
55 |
cache_disk:cache |
37 |
ext_filter:filter |
56 |
ext_filter:filter |
38 |
file_cache:cache |
57 |
file_cache:cache |
|
|
58 |
lbmethod_byrequests:proxy_balancer |
59 |
lbmethod_byrequests:slotmem_shm |
60 |
lbmethod_bytraffic:proxy_balancer |
61 |
lbmethod_bybusyness:proxy_balancer |
62 |
lbmethod_heartbeat:proxy_balancer |
39 |
log_forensic:log_config |
63 |
log_forensic:log_config |
40 |
logio:log_config |
64 |
logio:log_config |
41 |
mem_cache:cache |
65 |
cache_disk:cache |
42 |
mime_magic:mime |
66 |
mime_magic:mime |
43 |
proxy_ajp:proxy |
67 |
proxy_ajp:proxy |
44 |
proxy_balancer:proxy |
68 |
proxy_balancer:proxy |
Lines 54-73
Link Here
|
54 |
auth_digest:AUTH_DIGEST |
78 |
auth_digest:AUTH_DIGEST |
55 |
authnz_ldap:AUTHNZ_LDAP |
79 |
authnz_ldap:AUTHNZ_LDAP |
56 |
cache:CACHE |
80 |
cache:CACHE |
|
|
81 |
cache_disk:CACHE |
57 |
dav:DAV |
82 |
dav:DAV |
58 |
dav_fs:DAV |
83 |
dav_fs:DAV |
59 |
dav_lock:DAV |
84 |
dav_lock:DAV |
60 |
disk_cache:CACHE |
|
|
61 |
file_cache:CACHE |
85 |
file_cache:CACHE |
62 |
info:INFO |
86 |
info:INFO |
63 |
ldap:LDAP |
87 |
ldap:LDAP |
64 |
mem_cache:CACHE |
|
|
65 |
proxy:PROXY |
88 |
proxy:PROXY |
66 |
proxy_ajp:PROXY |
89 |
proxy_ajp:PROXY |
67 |
proxy_balancer:PROXY |
90 |
proxy_balancer:PROXY |
68 |
proxy_connect:PROXY |
91 |
proxy_connect:PROXY |
69 |
proxy_ftp:PROXY |
92 |
proxy_ftp:PROXY |
70 |
proxy_http:PROXY |
93 |
proxy_http:PROXY |
|
|
94 |
socache_shmcb:SSL |
71 |
ssl:SSL |
95 |
ssl:SSL |
72 |
status:STATUS |
96 |
status:STATUS |
73 |
suexec:SUEXEC |
97 |
suexec:SUEXEC |
Lines 76-87
Link Here
|
76 |
|
100 |
|
77 |
# critical modules for the default config |
101 |
# critical modules for the default config |
78 |
MODULE_CRITICAL=" |
102 |
MODULE_CRITICAL=" |
|
|
103 |
authn_core |
104 |
authz_core |
79 |
authz_host |
105 |
authz_host |
80 |
dir |
106 |
dir |
81 |
mime |
107 |
mime |
|
|
108 |
unixd |
82 |
" |
109 |
" |
|
|
110 |
# dependend criticals |
111 |
use ssl && MODULE_CRITICAL+=" socache_shmcb" |
112 |
use doc && MODULE_CRITICAL+=" alias negotiation setenvif" |
83 |
|
113 |
|
84 |
inherit apache-2 |
114 |
inherit eutils apache-2 |
85 |
|
115 |
|
86 |
DESCRIPTION="The Apache Web Server." |
116 |
DESCRIPTION="The Apache Web Server." |
87 |
HOMEPAGE="http://httpd.apache.org/" |
117 |
HOMEPAGE="http://httpd.apache.org/" |
Lines 104-109
Link Here
|
104 |
|
134 |
|
105 |
# init script fixup - should be rolled into next tarball #389965 |
135 |
# init script fixup - should be rolled into next tarball #389965 |
106 |
src_prepare() { |
136 |
src_prepare() { |
|
|
137 |
# the following patch can be removed once it is included in |
138 |
# GENTOO_PATCHNAME="gentoo-apache-2.4.1" ... |
139 |
if [ -f "${FILESDIR}/${GENTOO_PATCHNAME}-${GENTOO_DEVELOPER}-${GENTOO_PATCHSTAMP}-${PVR}.patch" ]; then |
140 |
cd "${GENTOO_PATCHDIR}" || die "Failed to cd to ${GENTOO_PATCHDIR}" |
141 |
epatch "${FILESDIR}/${GENTOO_PATCHNAME}-${GENTOO_DEVELOPER}-${GENTOO_PATCHSTAMP}-${PVR}.patch" \ |
142 |
|| die "epatch failed" |
143 |
cd "${S}" || die "Failed to cd to ${S}" |
144 |
fi |
107 |
apache-2_src_prepare |
145 |
apache-2_src_prepare |
108 |
sed -i -e 's/! test -f/test -f/' "${GENTOO_PATCHDIR}"/init/apache2.initd || die "Failed to fix init script" |
146 |
sed -i -e 's/! test -f/test -f/' "${GENTOO_PATCHDIR}"/init/apache2.initd || die "Failed to fix init script" |
109 |
} |
147 |
} |
Lines 126-129
Link Here
|
126 |
# well, actually installing things makes them more installed, I guess? |
164 |
# well, actually installing things makes them more installed, I guess? |
127 |
cp "${S}"/support/apxs "${D}"/usr/sbin/apxs || die "Failed to install apxs" |
165 |
cp "${S}"/support/apxs "${D}"/usr/sbin/apxs || die "Failed to install apxs" |
128 |
chmod 0755 "${D}"/usr/sbin/apxs |
166 |
chmod 0755 "${D}"/usr/sbin/apxs |
|
|
167 |
|
168 |
# create dir defined in 40_mod_ssl.conf |
169 |
if use ssl; then |
170 |
dodir /var/run/apache_ssl_mutex || die "Failed to mkdir ssl_mutex" |
171 |
fi |
172 |
} |
173 |
|
174 |
pkg_postinst() |
175 |
{ |
176 |
apache-2_pkg_postinst || die "apache-2_pkg_postinst failed" |
177 |
# warnings that default config might not work out of the box |
178 |
for mod in $MODULE_CRITICAL; do |
179 |
if ! use "apache2_modules_${mod}"; then |
180 |
echo |
181 |
ewarn "Warning: Critical module not installed!" |
182 |
ewarn "Modules 'authn_core', 'authz_core' and 'unixd'" |
183 |
ewarn "are highly recomended but might not be in the base profile yet." |
184 |
ewarn "Default config for ssl needs module 'socache_shmcb'." |
185 |
ewarn "Enabling the following flags is highly recommended:" |
186 |
for cmod in $MODULE_CRITICAL; do |
187 |
use "apache2_modules_${cmod}" || \ |
188 |
ewarn "+ apache2_modules_${cmod}" |
189 |
done |
190 |
echo |
191 |
break |
192 |
fi |
193 |
done |
194 |
# warning for proxy_balancer and missing load balancing scheduler |
195 |
if use apache2_modules_proxy_balancer; then |
196 |
local lbset= |
197 |
for mod in lbmethod_byrequests lbmethod_bytraffic lbmethod_bybusyness lbmethod_heartbeat; do |
198 |
if use "apache2_modules_${mod}"; then |
199 |
lbset=1 && break |
200 |
fi |
201 |
done |
202 |
if [ ! $lbset ]; then |
203 |
echo |
204 |
ewarn "Info: Missing load balancing scheduler algorithm module" |
205 |
ewarn "(They were split off from proxy_balancer in 2.3)" |
206 |
ewarn "In order to get the ability of load balancing, at least" |
207 |
ewarn "one of these modules has to be present:" |
208 |
ewarn "lbmethod_byrequests lbmethod_bytraffic lbmethod_bybusyness lbmethod_heartbeat" |
209 |
echo |
210 |
fi |
211 |
fi |
129 |
} |
212 |
} |