Instalar Apache 2.4 en CentOS 6

Voy a ir bastante al grano. Es para instalar la versión Apache 2.4.7.

yum -y install rpm-build

mkdir -p ~/rpmbuild/{SOURCES,SPECS,BUILD,RPMS,SRPMS}

cd ~/rpmbuild/SOURCES

wget http://ftp.cixug.es/apache//httpd/httpd-2.4.7.tar.bz2

En general, si ejecutamos lo siguiente fallará (sino perfecto y te ahorrarás un montón de pasos siguientes…)

rpmbuild -tb httpd-2.4.7.tar.bz2

Para corregir esto hay que instalar un montón de cosas

cd ~/rpmbuild/SOURCES

wget http://ftp.cixug.es/apache//apr/apr-1.5.0.tar.bz2

wget http://ftp.cixug.es/apache//apr/apr-util-1.5.3.tar.bz2

cd ~/rpmbuild/SOURCES

Ahora tendremos un tema y es que hay que tocar cosas del kernel. Como eso suele estar bloqueado, deberemos hacer lo siguiente

sudo vi /etc/yum.conf

y aquí, en el fichero, debemos comentar o eliminar la línea correspondiente (vamos a comentarla)

#exclude=kernel*

A partir de aquí seguimos adelante

sudo yum install kernel-headers

yum -y install autoconf libtool doxygen

rpmbuild -tb apr-1.5.0.tar.bz2

Es probable que esto último falle. Si pasa esto, haremos una revisión de los rpm instalados anteriormente

rpm -qa | grep -i apr

Si existen paquetes anteriores, haremos un “update”, sino un “install”

# UPDATE:
rpm -U ~/rpmbuild/RPMS/x86_64/apr-1.5.0-1.x86_64.rpm ~/rpmbuild/RPMS/x86_64/apr-devel-1.5.0-1.x86_64.rpm

#INSTALL
rpm -ivh ~/rpmbuild/RPMS/x86_64/apr-1.5.0-1.x86_64.rpm ~/rpmbuild/RPMS/x86_64/apr-devel-1.5.0-1.x86_64.rpm

y continuamos:

yum -y install expat-devel libuuid-devel db4-devel postgresql-devel mysql-devel freetds-devel unixODBC-devel openldap-devel nss-devel

cd ~/rpmbuild/SOURCES

yum install sqlite-devel

rpm -ivh ftp://fr2.rpmfind.net/linux/dag/redhat/el6/en/x86_64/dag/RPMS/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

cd /etc/yum.repos.d/

wget http://rpms.famillecollet.com/enterprise/remi.repo

yum install freetds freetds-devel

cd ~/rpmbuild/SOURCES

rpmbuild -tb apr-util-1.5.3.tar.bz2

cd ~/rpmbuild/SOURCES

Aquí nos encontramos con la situación anterior… revisamos si existen los paquetes

rpm -qa | grep -i apr-util

Si existen paquetes anteriores, haremos un “update”, sino un “install”

#UPDATE
rpm -U ~/rpmbuild/RPMS/x86_64/apr-util-1.5.3-1.x86_64.rpm ~/rpmbuild/RPMS/x86_64/apr-util-devel-1.5.3-1.x86_64.rpm ~/rpmbuild/RPMS/x86_64/apr-util-ldap-1.5.3-1.x86_64.rpm

#INSTALL
rpm -ivh ~/rpmbuild/RPMS/x86_64/apr-util-1.5.3-1.x86_64.rpm ~/rpmbuild/RPMS/x86_64/apr-util-devel-1.5.3-1.x86_64.rpm ~/rpmbuild/RPMS/x86_64/apr-util-ldap-1.5.3-1.x86_64.rpm

y continuamos

cd ~/rpmbuild/SRPMS

wget http://www.gtlib.gatech.edu/pub/fedora.redhat/linux/releases/18/Fedora/source/SRPMS/d/distcache-1.4.5-23.src.rpm

rpmbuild --rebuild distcache-1.4.5-23.src.rpm

rpm -ivh ~/rpmbuild/RPMS/x86_64/distcache-1.4.5-23.x86_64.rpm ~/rpmbuild/RPMS/x86_64/distcache-devel-1.4.5-23.x86_64.rpm

cd ~/rpmbuild/SOURCES/

yum -y install pcre-devel lua-devel libxml2-devel

rpmbuild -tb httpd-2.4.7.tar.bz2

yum -y install mailcap httpd-mmn

Aquí hemos de revisar un par de cosas… la primera es si ya teníamos un Apache instalado anteriormente, y el PHP… en este último caso, deberíamos desinstalar PHP (luego reinstalarlo).

#UPDATE APACHE HTTPD
rpm -U ~/rpmbuild/RPMS/x86_64/httpd-2.4.7-1.x86_64.rpm ~/rpmbuild/RPMS/x86_64/httpd-tools-2.4.7-1.x86_64.rpm

#INSTALL APACHE HTTPD
rpm -ivh ~/rpmbuild/RPMS/x86_64/httpd-2.4.7-1.x86_64.rpm ~/rpmbuild/RPMS/x86_64/httpd-tools-2.4.7-1.x86_64.rpm

Para acabar, pondremos correctamente los ficheros de configuración (en caso de que hubiera una instalación anterior)

mv /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.old

mv /etc/httpd/conf/httpd.conf.rpmnew /etc/httpd/conf/httpd.conf

Y con esto debería estar vuestro Apache HTTPD 2.4.7 instalado y funcionando, aunque ahora toca configurarlo.