1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121
|
#!/bin/sh -e
if [ "$1" != "configure" ]; then
exit 0
fi
NETSTAT=netstat
if [ -e /usr/sbin/apache2 ]; then
if [ "`dpkg-statoverride --list /usr/sbin/apache2`" = "" ]; then
chmod +x /usr/sbin/apache2
else
chmod `dpkg-statoverride --list /usr/sbin/apache2 | cut -f 3` /usr/sbin/apache2
fi
fi
mod_is_enabled() {
test -L /etc/apache2/mods-enabled/$1.load
}
# Detect whether this is a new install or an upgrade.
# Ordinarily one just checks $2, but since we renamed apache2-common to
# apache2.2-common, we have to be more devious.
if [ -n "$2" ]; then
UPGRADE=from_2_2
elif [ -e /etc/apache2/ports.conf.dpkg-apache2.2-common.existed ] ||
[ -n "$(ls /etc/apache2/sites-enabled/)" ]; then
UPGRADE=from_2_0
else
UPGRADE=new_install
fi
#set up default site and dummy error and access logs
if [ $UPGRADE = new_install ]; then
if [ ! -L /etc/apache2/sites-enabled/000-default -a \
! -f /etc/apache2/sites-enabled/000-default ]; then
a2ensite -q default
fi
touch /var/log/apache2/error.log /var/log/apache2/access.log
chown root:adm /var/log/apache2/error.log /var/log/apache2/access.log
chmod 0640 /var/log/apache2/error.log /var/log/apache2/access.log
fi
# Note, this line catches new installs as well as upgrades
if dpkg --compare-versions "$2" lt 2.2.3-3.1; then
a2enmod -q alias
a2enmod -q autoindex
a2enmod -q dir
a2enmod -q env
a2enmod -q mime
a2enmod -q negotiation
a2enmod -q setenvif
a2enmod -q status
a2enmod -q auth_basic
a2enmod -q deflate
# Those come from mod_auth:
a2enmod -q authz_default
a2enmod -q authz_user
a2enmod -q authz_groupfile
a2enmod -q authn_file
# This comes from mod_access:
a2enmod -q authz_host
fi
if [ $UPGRADE = from_2_0 ]; then
# Module replacements from previous versions of apache2
if mod_is_enabled proxy; then
a2enmod -q proxy_http
a2enmod -q disk_cache
fi
if mod_is_enabled imap; then
a2dismod -q imap
a2enmod -q imagemap
fi
if mod_is_enabled auth_ldap; then
a2dismod -q auth_ldap
a2enmod -q authnz_ldap
fi
fi
if [ -n "$2" ] && dpkg --compare-versions "$2" lt 2.2.4-2; then
echo -n activating new config files ...
for a in actions alias autoindex info mime negotiation setenvif status ; do
if mod_is_enabled $a && [ ! -e /etc/apache2/mods-enabled/$a.conf ] ; then
ln -sf ../mods-available/$a.conf /etc/apache2/mods-enabled/$a.conf
echo -n " $a.conf"
fi
done
echo " done."
fi
# Note, this line catches new installs as well as upgrades
if dpkg --compare-versions "$2" lt 2.2.7-1~0; then
if [ ! -e /var/www/index.html -a \
! -h /var/www/index.html -a \
! -e /var/www/index.cgi -a \
! -e /var/www/index.pl -a \
! -e /var/www/index.php -a \
! -e /var/www/index.xhtml -a \
! -e /var/www/index.shtml -a \
! -e /var/www/index.htm ] ; then
cp /usr/share/apache2/default-site/index.html /var/www/index.html
fi
fi
rm -f /etc/apache2/ports.conf.dpkg-apache2.2-common.old
rm -f /etc/default/apache2.dpkg-apache2.2-common.old
rm -f /etc/apache2/conf.d/charset.dpkg-apache2.2-common.old
rm -f /etc/apache2/ports.conf.dpkg-apache2.2-common.existed
[ -f /etc/apache2/httpd.conf ] || touch /etc/apache2/httpd.conf
#DEBHELPER#
exit 0
|