hvconfig_pre()
{
+ cd ${LFS_TMP}/${PACKAGE}
+
+ cat >> config.layout << "EOF" &&
+# BLFS FHS layout
+<Layout FHS>
+ prefix: /usr
+ exec_prefix: ${prefix}
+ bindir: ${exec_prefix}/bin
+ sbindir: ${exec_prefix}/sbin
+ libdir: ${exec_prefix}/lib
+ libexecdir: ${exec_prefix}/libexec/apache
+ mandir: ${prefix}/share/man
+ sysconfdir: /etc/apache
+ datadir: /srv/www
+ installbuilddir: ${libexecdir}/build
+ errordir: ${datadir}/error
+ iconsdir: ${datadir}/icons
+ htdocsdir: ${datadir}/htdocs
+ manualdir: ${datadir}/manual
+ cgidir: ${datadir}/cgi-bin
+ includedir: ${prefix}/include/apache
+ localstatedir: ${datadir}
+ runtimedir: /var/run
+ logfiledir: /var/log/apache
+ proxycachedir: /var/cache/apache/proxy
+</Layout>
+EOF
+
groupadd -f ${APACHE_USER}
hv_useradd -c WebServer -d /dev/null -g ${APACHE_USER} -s /bin/false \
${APACHE_USER}
CONFIGURE_OPTS=" \
- ${CONFIGURE_OPTS} \
--enable-layout=FHS \
--enable-mods-shared=all \
--enable-ssl \
--with-z"
- # --enable-rewrite \
- # --enable-deflate \
- # --enable-dav \
}
hvbuild_post()
{
- # There's a problem with the ISAPI DSO module caused from compiling with
- # GCC-4.1.2.
- # Commenting out the module from the configuration:
- if grep -q "LoadModule isapi_module" /etc/apache/httpd.conf; then
- sed -i -e "s/^LoadModule isapi_module/# &/" /etc/apache/httpd.conf
- fi
+ chown -v root:root /usr/bin/{apxs,dbmmanage} \
+ /usr/sbin/{apachectl,envvars{,-std}} \
+ /usr/libexec/apache/httpd.exp \
+ /usr/share/man/man1/{ab,apxs,dbmmanage,ht{dbm,digest,passwd,txt2dbm},logresolve}.1 \
+ /usr/share/man/man8/{apachectl,htcacheclean,httpd,rotatelogs,suexec}.8 &&
+
+ sed -i -e "s!^\(DocumentRoot\) .*!\1 /srv/www/htdocs!" /etc/apache/httpd.conf
# Modifying the listening port if an alternate one is specified.
if [ -n "${HTTPD_PORT}" ]; then
sed -i -e "s!^<IfModule ssl_module>!<IfModule ssl_module>\n Include /etc/apache/ssl/ssl.conf!" /etc/apache/httpd.conf
mkdir -p /srv/www/htdocs/ssl
- chown apache:apache /srv/www/htdocs/ssl
-
sed -i -e "s!^DocumentRoot .*!DocumentRoot /srv/www/htdocs/ssl!" /etc/apache/ssl/ssl.conf
sed -i -e "s!^ServerName .*:443!ServerName www.${DOMAIN}:443!" /etc/apache/ssl/ssl.conf
sed -i -e "s!^ServerAdmin .*!ServerAdmin webmaster@${DOMAIN}!" /etc/apache/ssl/ssl.conf
sed -i -e "s!/etc/apache!/etc/apache/ssl!" /etc/apache/ssl/ssl.conf
+ chown -v -R ${APACHE_USER}:${APACHE_USER} /srv/www
+
# Bootscript
install -v -m740 ${SCRDIR}/bootscripts/apache /etc/rc.d/init.d
hvconfig_pre()
{
- sed -i 's/const char \*errpfx,/const DB_ENV *dbenv, & const/' \
- ${LFS_TMP}/${PACKAGE}/ext/dba/dba_db4.c
-
# Since PHP 5, you need to explicitly bundle PHP with MySQL by --with-mysql
# directive (make sure you specified path to where MySQL is installed on
# your system).
# gcc: Zend/zend_language_scanner.c: No such file or directory
CONFIGURE_OPTS=" \
${CONFIGURE_OPTS} \
- --with-apxs2=/usr/sbin/apxs \
- --enable-force-cgi-redirect \
- --enable-discard-path \
+ --with-apxs2 \
--with-config-file-path=/etc \
--with-zlib \
--enable-bcmath \
--with-bz2 \
- --with-gd \
- --with-freetype-dir=/usr \
- --with-t1lib \
- --enable-gd-native-ttf \
--enable-calendar \
- --enable-dba \
- --enable-exif \
+ --enable-dba=shared \
+ --with-gdbm \
+ --with-gmp \
--enable-ftp \
--with-gettext \
--enable-mbstring \
- --with-ncurses \
--with-readline \
- --with-openssl=/usr \
- --with-ldap \
--with-mysql=/usr \
- --with-imap=/usr/lib/uw-imap \
- --with-imap-ssl=/usr/include/openssl"
+ --with-openssl=/usr \
+ --with-gd \
+ --with-freetype-dir=/usr \
+ --with-t1lib \
+ --enable-gd-native-ttf \
+ --enable-exif"
+
+# IMAP
+# --with-imap=/usr/lib/uw-imap \
+# --with-imap-ssl=/usr/include/openssl"
}
hvbuild_post()
if [ -f /etc/php.ini ]; then
cp /etc/php.ini /etc/php.ini.old
fi
- cp ${LFS_TMP}/${PACKAGE}/php.ini-dist /etc/php.ini
+ cp ${LFS_TMP}/${PACKAGE}/php.ini-production /etc/php.ini
# To enable PHP support in the Apache web server, a new AddType directive
# must be added to the httpd.conf file.
echo "AddType application/x-httpd-php .php" >> /etc/apache/httpd.conf
fi
+ # Est-ce nécessaire?
+ #cgi.discard_path = 1
+
if ! grep -q "DirectoryIndex" /etc/apache/httpd.conf | grep "index.php"; then
- sed -i -e "s!\(^DirectoryIndex index.html.*\)!\1 index.php!g" \
+ sed -i -e "s!\(^\s*DirectoryIndex index.html.*\)!\1 index.php!g" \
/etc/apache/httpd.conf
fi
}