lamp-mysql-apache-php-centos (1)

Como instalar Apache 2.4 con PHP 5.5.0 y Mysql 5.1.69 en Centos 6

No hace mucho salió la versión de apache 2.4, y ya están con alguna beta de pruebas de nuevas versiones, pero el fin de este artículo es ayudar a todos los que hayais intentado realizar una instalación así, y no habéis sido capaces por la cantidad de problemas que da a la hora de compilar todo lo que hace falta y demás.

Como es una instalación un tanto enrevesada, primero tienes que pensar si te merece la pena llevarla a cabo. Si no mueves un exceso de visitas o no experimentas problemas de rendimiento, posiblemente no te haga falta utilizar apache 2.4, pero si quieres probarlo, según los benchmarks (y lo que he podido probar) el rendimiento es bastante superior, llegando hasta un 300% de mejora en muchos casos.

No me enrollo más que el artículo es un poco largo. Sobretodo ten en cuenta que si no sabes del tema, lo intento exponer para que cualquier persona sea capaz de hacerlo, aun así no  garantizo nada ni me hago responsable de lo que pueda suceder. Yo he utilizado este método que he ido perfeccionando con instalaciones hasta que ha quedado bien.

Antes de que tengas dudas o preguntas te invito a que leas el artículo completo, ya que a medida que se plantean las dudas las he ido solucionando en las secciones que toca. Léelo hasta el final, y luego espero tus comenatrios o quién sabe, igual una felicitación.

Preparar el sistema para instalar LAMP 2.4, 5.5.0, 5.1.69

Lo primero en lo que nos vamos a centrar va a ser en la preparación de todas las librerias que nos van a hacer falta así como los repositorios que mantienen versiones actualizadas de los paquetes que nos interesan.

Léete también  Cómo poner o quitar pin de desbloqueo en Windows 10

Como instalar repositorios famillecollet en Centos 6

cd /tmp
wget http://rpms.famillecollet.com/RPM-GPG-KEY-remi
rpm --import RPM-GPG-KEY-remi
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
rpm -Uvh remi-release-6*.rpm epel-release-6*.rpm

Como instalar el repositorio de rpmforge en Centos 6

wget 
rpm --import 
rpm -K rpmforge-release-0.5.3-1.el6.rf.*.rpm # Verifies the package
rpm -i rpmforge-release-0.5.3-1.el6.rf.*.rpm

Una vez terminado con todos estos comandos pasamos a instalar todos los paquetes necesarios para poder compilar más adelante

yum install rpm-build perl yum-utils autoconf doxygen libtool automake gcc gcc-c++ make libxml2-devel libmcrypt-devel

Con esto tendremos todo lo necesario para el resto del manual.

Como instalar Apache 2.4 en Centos 6.x (6.4)

Primero antes de ponernos a instalar o compilar apache, tendremos que instalar las versiones de apr y apr-utils, ya que si no son superiores a la 1.4 no nos va a dejar instalar el apache. ¿Como se instala apr 1.5 y apr-utils 1.5 en centos? muy fácil, ejecutando los siguientes comandos:

cd /tmp

wget 
rpmbuild -ts apr-1.4.6.tar.bz2
yum-builddep /root/rpmbuild/SRPMS/apr-1.4.6-1.src.rpm -y
rpmbuild --rebuild --target `uname -m` ~/rpmbuild/SRPMS/apr-1.4.6-1.src.rpm
yum localinstall ~/rpmbuild/RPMS/x86_64/apr-*

wget 
rpmbuild -ts apr-util-1.5.2.tar.bz2
yum-builddep /root/rpmbuild/SRPMS/apr-util-1.5.2-1.src.rpm --enablerepo=epel
rpmbuild --rebuild --target `uname -m` ~/rpmbuild/SRPMS/apr-util-1.5.2-1.src.rpm
yum localinstall ~/rpmbuild/RPMS/x86_64/apr-util-*

Ahora instalamos algunas librerías que necesitaban estos paquetes y no podíamos instalar antes:

yum install pcre-devel pcre-static pcre lua-devel

Por último antes de la instalación de apache instalaremos la versión de distcache que toca:

wget https://www.vichaunter.org/wp-content/uploads/distcache-1.4.5-22.src.rpm
rpmbuild --rebuild --target `uname -m` distcache-1.4.5-22.src.rpm
yum localinstall ~/rpmbuild/RPMS/x86_64/distcache*

Y ahora por fín vamos a instalar apache 2.4 en centos:

wget 
rpmbuild -tb --target `uname -m` httpd-2.4.4.tar.bz2
yum localinstall ~/rpmbuild/RPMS/x86_64/httpd*
yum localinstall ~/rpmbuild/RPMS/x86_64/mod_*

Estas son las versiones que he hecho funcionar bien, pero eres libre de revisar si hay alguna versión nueva y compilarla.

Por último, que aún no hemos acabado con apache, vamos a configurar algunas opciones para que luego no nos de problemas. Editaremos el httpd.conf:

nano /etc/httpd/conf/httpd.conf

Añadimos esto justo debajo de – ServerRoot «/usr»:

PidFile "/var/run/httpd.pid"

La siguiente ruta podemos variarla para que coincida con nuestras necesidades, la añadiremos al final del fichero httpd.conf. Es importante que no omitais esta línea ya que luego incluirá la configuración de apache para que interprete los archivos php:

Include /etc/httpd/conf.d/*.conf

Y por último vamos a descomentar unas cuantas líneas en la sección de módulos en el mismo archivo httpd.conf (en nano si haces ctrl+w te sale un buscador):

LoadModule deflate_module lib64/httpd/modules/mod_deflate.so
LoadModule suexec_module lib64/httpd/modules/mod_suexec.so
LoadModule vhost_alias_module lib64/httpd/modules/mod_vhost_alias.so
LoadModule rewrite_module lib64/httpd/modules/mod_rewrite.so
LoadModule alias_module lib64/httpd/modules/mod_alias.so

Aquí es un poco según las necesidades de cada uno. En un principio estas son las más genéricas y que todos usan, pero puedes habilitar los módulos que necesites.

Léete también  Restringir acceso a una carpeta pero permitir includes de php

Por último, para que no perdáis el tiempo y no penseis que el manual que he hecho está icompleto, habilitaremos la reescritura para que los archivos .htaccess funcionen. Tendremos que editar la configuración de apache httpd.conf y en las etiquetas <Directory «/var/www/html»> (o el dominio y carpeta que querais editar) y dejaremos la línea donde pone AllowOverride como la siguiente:

AllowOverride All

De esta forma funcionarán los .htaccess y no tendréis problemas.

La parte de permisos es un poco diferente a apache 2.2, ya que donde antes era

Order allow,deny
Allow from all

ahora debemos poner

Require all granted

Pero sabiendo esto evitaremos tener que andar buscando en la documentación. Aparte de esto no he tenido que buscar nada más.

Un último detalle por si vas a utilizar solo una web, es cambiar el usuario con el que corre apache, editaremos el httpd.conf y donde dice user daemon y group daemon, cambiaremos daemon por el user y grupo que queramos. Al finalizar con la instalación de todo tendremos opcion para crear usuarios y grupos.


AYUDANOS a poder seguir dando respuestas. Te podemos echar una mano y tú también a nosotros, símplemente dale a me gusta.