Instalación de Vtiger CRM en Centos 5.x

He tenido que hacer una instalación de Vtiger CRM y buscando información por internet no he encontrado demasiados tutoriales. Además algunos de ellos indicaban auténticas barbaridades como aplicar permisos de escritura recursivos en toda la instalación o utilizar el usuario root de mysql para conectarse a la base de datos.

A continuación os explico paso a paso una posible recomendación de instalación sobre Centos 5.x.

Primero debemos instalar los paquetes necesarios ya que Vtiger CRM corre sobre LAMP.

yum install httpd-2.2.3-43.el5.centos.3 php-gd-5.1.6-27.el5_5.3 php-mysql-5.1.6-27.el5_5.3php-5.1.6-27.el5_5.3 php-common-5.1.6-27.el5_5.3 php-pdo-5.1.6-27.el5_5.3 php-cli-5.1.6-27.el5_5.3 php-imap-5.1.6-27.el5_5.3 mysql-5.0.77-4.el5_5.4 mysql-server-5.0.77-4.el5_5.4

Una vez instalado el LAMP debemos configurar todos los servicios, empezando por indicar cuales deben ejecutarse en el arranque del sistema. Para ello utilizaremos la orden «ntsysv» marcando mysqld y httpd.

Además tendremos que comprobar las reglas de iptables para ver si tenemos acceso al puerto 80. Editamos el archivo «/etc/sysconfig/iptables» y añadimos la siguietne regla:

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT

Luego reiniciamos iptables para que surta efecto.

service iptables restart

Seguramente tendremos problemas con SeLinux para que nuestros scripts php accedan a la base de datos. En este punto hay que tener mucho cuidado porque la mejor opción dependerá de vuestro caso concreto. En principio ejecutaremos la siguiente orden.

/usr/sbin/setsebool -P httpd_can_network_connect_db 1

Ya tenemos el LAMP configurado. El siguiente paso es bajarse el código fuente de VTiger y copiarlo a «/var/www/html/» , que es el DocumentRoot de apache. Posteriormente deberemos descomprimir y desempaquetar el archivo de código fuente. Estas operaciones las deberemos realizar como root por tema de permisos.

Abrimos la url de VTiger que si no hemos cambiado nada será «http://localhost/vtigercrm«, con lo cual nos aparecerá el instalador. El primer paso importante es la comprobación de la pila de paquetes necesarios, creo que con los que he indicado están todos pero revisadlo. Además comprobaréis que se queja de que no tiene permisos de escritura de los archivos de configuración, esto es debido a que el usuario que corre el servicio httpd es «apache» y nosotros hemos utilizado el usuario root para descomprimir y desempaquetar el código. Para solucionarlo cambiaremos el usuario y grupo del código a «apache«.

chown -R apache.apache /var/www/html/vtigercrm

El siguiente paso del instalador es la parametrización de la conexión a la base de datos. Antes de dárselos deberemos crear la base de datos y un usuario con acceso a ella. Entramos a mysql con el usuario root y lo primero que haremos será cambiarle la contraseña.

mysql -u root

update mysql.user set password=PASSWORD(‘contraseña’) where user=’root’;

Creamos la base de datos. y un usuario con los permisos necesarios.

create database nombre;

grant ALTER, ALTER ROUTINE, CREATE, CREATE ROUTINE, CREATE VIEW, DELETE, DROP, EXECUTE, INDEX, INSERT, LOCK TABLES, SELECT, UPDATE on basededatos.* to ‘usuario’@’localhost’ identified by ‘contraseña’;

Lo que hay que tener en cuenta en esta última orden es que hay que cambiar «basededatos» por el nombre de la base de datos que hayamos creado, que además hay que cambiar «usuario» por el nombre de usuario que estamos creando y que también deberemos indicar su contraseña.

Como último paso haremos un flush privileges para que todo surta efecto.

flush privileges;

Estos serán los datos que le proporcionaremos al instalador. Como recomendación decir que deberíamos utilizar UTF8 para la base de datos.

Seguiremos los siguientes pasos de la instalación y ya tendremos nuestro VTiger listo para ser usado.

Yo además he utilizado un subdominio para el CRM, así que me he creado un virtualhost en apache. Deberemos crear un nuevo archivo en «/etc/httpd/conf.d/»  que yo he llamado «virtualhosts.conf«. El contenido de ese archivo es el que se muestra a continuación.

NameVirtualHost ip_de_mi_servidor

<VirtualHost ip_de_mi_servidor>
ServerName subdominio
DocumentRoot /var/www/html/vtigercrm
</VirtualHost>

Ya sólo nos queda reiniciar apache.

service httpd restart

 

Actualización:

Otro gran apunte de como instalar Vtiger en Centos.

 

Cheli