Presupposti: Vtigercrm funzionante e configurato su server#1 si vuole trasferire su altro server#2
Nel mio caso server#1 e server#2 sono macchine ubuntu 22.04
Sul server#2 che dovrà ospitare il vtigercrm trasferito ho installato
- la stessa distro ubuntu
- la stessa versione php 8.1
Su server#2
installa
- apache
- mysql
- phpmyadmin (non indispensabile se sai usare la riga di comando con mysql)
INSTALLA VTIGERCRM
sudo apt install php libapache2-mod-php php-mysql php-curl php-json php-cgi php-imap php-cli php-gd php-zip php-mbstring php-xml -y
Once installed, configure PHP by setting the necessary parameters in the php.ini file.
sudo nano /etc/php/8.3/apache2/php.ini
Modify the following lines to the php.ini file.
memory_limit = 256M
max_execution_time = 60
error_reporting = E_ERROR & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
display_errors = Off
short_open_tag = Off
download ultima versione vtigercrm
wget -O vtigercrm.tar.gz https://sourceforge.net/projects/vtigercrm/files/latest/download
Next, extract the downloaded file and move the extracted files to the Apache web root directory.
tar -xvzf vtigercrm.tar.gz
sudo mv vtigercrm /var/www/html/
Set the correct permissions for the vTiger CRM directory.
sudo chown -R www-data:www-data /var/www/html/vtigercrm
sudo chmod -R 755 /var/www/html/vtigercrm
RIMOZIONE DELLA NUOVA INSTALLAZIONE PER CARICARE QUELLA CHE SI VUOLE TRASFERIRE
verifica che la versione vtigercrm nuova installazione funzioni
se funziona: elimina la directory che ospita il sito (nel mio caso) /var/www/html/vtgercrm
sudo -rm -R /var/www/html/vtgercrm
RIMOZIONE VECCHIO DATABASE
elimina il database che è stato creato dall’installazione fresh di vtigercrm (nel mio caso il database si chiama “vtiger”
mysql -u root -p
DROP DATABASE vtiger;
CREAZIONE NUOVO DATABASE E UTENTE
crea un nuovo database “vtiger”
CREATE DATABASE vtiger;
Per sicurezza elimina l’utente “vtiger” dell’installazione fresh
DROP USER ‘vtiger’@’localhost’;
Crea l’utente vtiger nuovo
CREATE USER ‘vtiger’@’localhost’ IDENTIFIED BY ‘password’;
Se l’utente esiste già, e vuoi mantenerlo usa invece:
ALTER USER ‘vtiger’@’localhost’ IDENTIFIED BY ‘password’;
Assegna i permessi
GRANT ALL PRIVILEGES ON vtiger.* TO ‘vtiger’@’localhost’;
Applica le modifiche
FLUSH PRIVILEGES;
EXIT;
IMPORT VECCHIO DATABASE
importa nel nuovo database “vtiger” il backup del database che vuoi importare. Nel mio caso il backup è nella cartella /mnt/CONDIVISA/ e si chiama vtiger.sql (non deve essere in forma compressa, nel caso lo fosse prima scompattalo)
in una bash normale (non sotto i comandi sql)
mysql -u vtiger -p vtiger < /mnt/CONDIVISA/vtiger.sql
inserisci la password che avevi dato all’utente “vtiger”
inizierà il processo di importazione che durerà un pò (in base alla grandezza del database che stai importando…nel mio caso 400kb di sql hanno impiegato circa 10 minuti
COPIA/INCOLLA DIRECTORY DEL VECCHIO SITO SUL NUOVO
copia la cartella che contiene l’intero sito del vtigercrm che vuoi trasferire, nella root del nuovo sito sul server#2 (nel mio caso /var/www/html/)
dai i permessi corretti
sudo chown -R www-data:www-data vtigercrm
sudo chmod -R 755 vtigercrm
entra nella root del sito e modifica il file config.inc.php (sicuramente sarà da modificare l’indirizzo ip sul quale deve rispondere il nuovo server e nel caso aveste variato user e password dell’utente che accede al database sql
sudo nano /var/www/html/config.inc.ph
CORREZIONE ERRORE IONCUBE
se ora tutto è andato bene, e collegate l’ip del server nuovo http://ip_server/vtigercrm vi uscirà la schermata di login nel quale dovrete accedere con le vostre vecchie credenziali
effettuato l’accesso sicuramente vi apparirà una pagina bianca con questo errore:
Script error: the ionCube Loader for PHP needs to be installed. The ionCube Loader is the industry standard PHP extension for running protected PHP code, and can usually be added easily to a PHP installation. For Loaders please visit get-loader.ioncube.com and for an instructional video please see http://ioncu.be/LV
ecco come risolvere:
Controlla la versione PHP in uso (fondamentale)
php -v
e anche quella usata da Apache:
php -i | grep “Loaded Configuration File”
Verifica se ionCube è installato
php -m | grep -i ioncube
Se non restituisce nulla → ionCube non è installato / non caricato
Scarica ionCube
cd /tmp
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
tar xzf ioncube_loaders_lin_x86-64.tar.gz
Copia il loader giusto per la tua versione PHP
Esempio PHP 8.1:
cp ioncube/ioncube_loader_lin_8.1.so /usr/lib/php/
(Verifica il percorso corretto con:)
php -i | grep extension_dir
Abilita ionCube in PHP
Apri il file php.ini usato da Apache
(esempio PHP 8.1):
nano /etc/php/8.1/apache2/php.ini
PRIMA di qualsiasi altra extension, aggiungi:
zend_extension=/usr/lib/php/ioncube_loader_lin_8.1.so
Riavvia Apache
sudo systemctl restart apache2

Lascia un commento
Devi essere connesso per inviare un commento.