¿Cómo reportar los cambios que se hacen a la BD?
El primer paso para liberar a producción un sitio es insertar y actualizar sus registros en la BD.
A continuación describimos las tablas que requieren algún insert/update
IMPORTANTE: Antes de liberar el sitio web es importante verificar que se hayan migrado las secciones del sitio web.
Debe estar el sitio correcto en el dominio demo.clevertechnology.com.mx
Por ejemplo.
https://demo.clevercloudapp.com/sitio/publish/propelfoods.com/
TBL_SUPERADMIN_INSTANCIAS: Debe existir la instancia del negocio que se va a liberar
TBL_WEBSITE_SECCIONES: Todas las secciones se deben migrar de DEV a PROD, incluso los assets cuando sea pertinente. Ojo, se debe asociar al ID_INSTANCIA correcto
*TBL_SUPERADMIN_CONFIG: Revisar si el sitio requiere alguna variable de configuración extra; por ejemplo, las tiendas en línea necesitan los links a para el pago.
TBL_WEBSITE_SITIOS: Cambiar el valor de los campos LINK_HOME, LINK_PRODUCTO, etc... También se necesita cambiar el correo de contacto.
Se tienen que modificar los registros DNS en el proveedor indicado por el Cliente. Si el dominio lo compramos nosotros se debe solicitar el cambio internamente.
Se debe solicitar la creación de dos registros tipo A en la tabla de DNS del dominio. Estos registros deben apuntar a la IP 143.198.53.242
Por ejemplo, si el domino es "propelfoods.com" el primer registro A debe coincidir exactamente con el dominio y el segundo debe comenzar con "www" => "www.propelfoods.com"
Después del cambio pueden pasar de minutos a horas para que se vea reflejado.
Para corroborar que el cambio se hizo correctamente, al abrir el dominio en un navegador nos va a redirigir a clevertechnology.com.mx
En el servidor PROD se debe configurar Apache para que reconozca el nuevo dominio y necesitamos apuntarlo a la carpeta en demo
A continuación se describen los pasos que se deben seguir en el servidor PROD.
cd /etc/apache2/sites-available
ls
sudo cp clevercloud.mx.conf propelfoods.com.conf
Tomar en cuenta que "clevercloud.mx.conf" ya existía previamente y "propelfoods.com.conf" es el nuevo archivo de configuración
sudo nano propelfoods.com.conf
Abrimos el archivo nuevo .conf y editamos las siguientes líneas marcadas:
en rojo las que debemos eliminar
en azul las que debemos editar;
DocumentRoot: se debe escribir el nombre de la carpeta en nuestro código
Directory: se debe escribir el nombre de la carpeta en nuestro código
ServerName: se debe escribir el nombre de dominio que contrató el cliente
ServerAlias: se debe escribir el nombre de dominio que contrató el cliente con el prefijo www
* Esta aclaración es importante por que a veces el nombre interno en nuestro código no coincide con el dominio definitivo del Cliente.
NOTA: no copies y pegues el código de abajo... está incompleto. Edítalo directo en la consola
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/demo/clevercloud/sitio/publish/clevercloud.mx
ServerName clevercloud.mx
ServerAlias www.clevercloud.mx
#Header set Access-Control-Allow-Origin '*'
<Directory /var/www/html/demo/clevercloud/sitio/publish/clevercloud.mx/>
#Options Indexes FollowSymLinks
Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Credentials "true"
Header set Access-Control-Allow-Methods "GET,HEAD,OPTIONS,POST,PUT,DELETE"
Header set Access-Control-Allow-Headers "Access-Control-Allow-Headers, Origin,Accept, X-Requested-With, Content-Type...
Options -Indexes
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<IfModule mod_dir.c>
DirectoryIndex index.php index.pl index.cgi index.html index.xhtml index.htm
</IfModule>
RewriteEngine on
RewriteCond %{SERVER_NAME} =clevercloud.mx
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
Después de los cambios, el archivo .conf debe quedar así... (con el dominio nuevo)
Posteriormente hay que ejecutar las siguientes líneas para que el servidor tome el cambio.
sudo a2ensite <nombre-del-dominio.com>.conf
sudo systemctl reload apache2
FELICIDADES ya se debería ver el sitio web del Cliente en su dominio... pero aún no terminamos
Una vez que está el sitio publicado en el dominio necesitamos instalar el certificado de seguridad SSL.
Para instalar el certificado de seguridad utilizamos certbot. Afortunadamente esto se ejecuta en el servidor con una sola línea
sudo certbot --apache -d <nombre-del-dominio.com>,www.<nombre-del-dominio.com> --expand
Para el ejemplo de propelfoods.com seria así:
sudo certbot --apache -d propelfoods.com,www.propelfoods.com --expand
Al ejecutar esta línea realizará varias acciones hasta llegar a una pregunta
"Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access."
Seleccionamos la opción 2 => Enter
EXCELENTE, recargamos la página y ahora podremos ver el candado de que el sitio es seguro.
Revisar los metatags que usará Google, Facebook y Twitter cuando se comparta información
Ejemplo de metatags de sitio
Se debe instalar dos tags de seguimiento: Matomo y OWA
En el index.php del sitio dentro del tag <head> se debe agregar el siguiente código
NOTA:
$domain_to_track es el nombre de dominio (sin www)
$owa_site_id es el identificador que se genera desde el panel de control de OWA
$matomo_site_id lo dejaremos siempre en 4
<?php
$domain_to_track = 'propelfoods.com';
$owa_site_id = 'f5665089b771ae8423fcd961400efa2e';
$matomo_site_id = '4';
include "../../functions/clever-analytics-tags.php";
?>
Panel de control OWA
https://dev.clevertechnology.com.mx/owa/index.php?owa_do=base.sites
Se debe crear un nuevo registro de seguimiento:
Domain => Site Name => Save Profile
Se agrega el dominio y un nombre de sitio
El tag de seguimiento se obtiene Get Tracking Code del nuevo sitio.
En este caso es: f5665089b771ae8423fcd961400efa2e
Finalmente, necesitamos probar el form de contacto (que le llegue correo al cliente) y el cuadro de texto de subscripción (que caigan los correos al panel de Clever Cloud)