Que cada subdomino de Odoo 12 apunte a una base de datos

Esta es para mi la guía definitiva de cómo tener varios Odoo’s o bases de datos de Odoo bajo nombre de dominio diferente.

Partimos del escenario en el que las bases de datos que tenemos son:

ejemplo_erp
erp_demo

Vamos a trabajar con el dominio erp_demo, haríamos lo mismo para erp_ejemplo

En el en el archivo de odoo.conf tenemos que modificar los siguiente parámetros: db_name, dbfilter y proxy_mode:

Si no sabemos donde se encuentra el archivo podemos buscarlo con

Y editamos el archivo:

Los parámetros de mi instalación de Odoo (y funcionando) eran:

db_name = False
dbfilter =
proxy_mode = false

Los modificamos a:

db_name = False
dbfilter = %d
proxy_mode = True

En algunos casos recomiendan utilizar para dbfilter la expresión regular:

dbfilter = ^%d$

A mi, solo con %d me funciona.

dbfilter = %d

En el archivo rc.local no tengo ninguna redirección, sería conveniente que le peguéis un ojo por si alguna redirección está actuando por ahí.

Para leer el archivo:

Creamos el certificado SSL para nuestro nuevo subdominio:

Mas info en al web de certbot: https://certbot.eff.org/lets-encrypt/ubuntubionic-nginx

Bien, vayamos para NGINX!

Creamos o editamos el sitio web:

Y escribimos:

No olvidemos editar el server_name de los dos «server» Y la ubicación de los certificados de letsencrypt en los parámetros ssl_certificate, ssl_certificate_key y ssl_trusted_certificate

Si creásemos otro sitio, no olvidéis cambiar los «upstream«. De todos modos si al arrancar NGINX o al reiniciarlo no los hemos cambiado, no arrancará correctamente y nos lazará un error, para verlo nos sugiere que escribamos el comando: «sudo systemctl status nginx.service»

Habilitamos sitio:

Reiniciamos NGINX:

Reiniciamos Odoo:

Y a funcionar, accedemos a «erp_demo.ekiketa.com» y debería de funcionar 👀


👀
Ojo, con el cambio del dbfilter hay algo que es importante. Puede que al intentar imprimir un «Report» (Facturas, pedidos de compra, etc) Odoo 12 pierda la sesión y la factura se imprima sin estilos. Recordemos qué hacer si Odoo imprime mal las facturas, tocábamos un parámetro del sistema de Odoo llamado «report.url«. (Click en el enlace anterior para ver el tutorial).
Pues con el dbfilter activado, tenemos que hacer una pequeña modificación en este parámetro y en el archivo «/etc/hosts» de la máquina donde está Odoo 12 instalado.

Para ello, vamos a editar el archivo hosts de el servidor donde tenemos nuestro Odoo.

(Puede que se redundante que mencione tanto nuestro máquina donde está Odoo, nuestro servidor de Odoo, etc… Pero es importante no perder el contexto en estos puntos)

Y añadimos un nombre «local» para nuestros dominios, por ejemplo:

Ahora, desde nuestro navegador «local» (Donde se encuentra nuestro Odoo) deberemos acceder a éste mediante: http://erp_demo.ekiketa.local:8069 y… deberemos cambiar en Odoo el parámetro «report.url» de los Parámetros del sistema.

Y ya, ahora sí que estará todo al sitio.

¡Saludos!


Tu opinión es importante para mi, ¿Te ha resultado útil este artículo?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*