Introduzione
SuiteCRM è un'applicazione gratuita open source per la gestione delle relazioni con i clienti per server. È scritto in PHP. Il CRM open source viene spesso utilizzato come alternativa al software CRM proprietario di grandi aziende come HubSpot, Salesforce e le applicazioni Microsoft Dynamics CRM. SuiteCRM è un fork del software del popolare sistema di gestione delle relazioni con i clienti (CRM) di SugarCRM. Il progetto SuiteCRM è iniziato quando SugarCRM ha deciso di interrompere lo sviluppo della sua versione open-source.
In questa guida, ti mostreremo come installare SuiteCRM nel tuo CentOS 8 Linux.
Installazione
Segui i passaggi seguenti:
- Aggiorna sistema
dnf update -y && dnf upgrade -y
- Installa PHP e le estensioni richieste
sudo dnf -y install yum-utils
sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo dnf -y install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
dnf module reset php #run this with root user
sudo dnf module install php:remi-7.3
sudo yum install wget php php-bcmath php-json php-xml php-fpm php-common php-curl php-intl php-zip php-imap php-pear php-cgi php-mbstring php-gd php-mysqlnd php-gettext -y
- Aumenta il timeout php e la dimensione massima del caricamento dei file come mostrato:
sudo vim /etc/php.ini
Quindi modifica i valori
upload_max_filesize = 20M
max_execution_time = 120
- Imposta l'utente e il gruppo per nginx per eseguire php-fpm
sudo vim /etc/php-fpm.d/www.conf
Quindi modificali come segue:
user = nginx
group = nginx
- Avvia e abilita php-fpm
systemctl start php-fpm && systemctl enable --now php-fpm
- Installa MariaDB e il server Web Nginx
sudo dnf -y install nginx mariadb mariadb-server
- Avvia e abilita i servizi nginx e mariadb
sudo systemctl start nginx && sudo systemctl enable nginx
sudo systemctl start mariadb && sudo systemctl enable mariadb
- Una volta installato il server del database, proteggerlo con
mysql_secure_installation
- Rispondi a tutte le domande come mostrato di seguito
Enter current password for root (enter for none):
Set root password? [Y/n] Y
New password:
Re-enter new password:
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
- Crea un database per SuiteCRM.
mysql -u root -p
CREATE DATABASE suitecrm_db;
CREATE USER 'suitecrm_usr'@'localhost' IDENTIFIED BY 'unixcopPassword';
GRANT ALL PRIVILEGES ON suitecrm_db.* TO 'suitecrm_usr'@'localhost';
FLUSH PRIVILEGES;
\q;
- Installa SuiteCRM controllando l'ultima versione di SuiteCRM
- Al momento della stesura di questo articolo, l'ultima versione è v7.12.0-RC
sudo wget https://github.com/salesagility/SuiteCRM/archive/refs/tags/v7.12-rc.tar.gz
sudo tar xvf v7.12-rc.tar.gz
- Installa il compositore
sudo wget https://getcomposer.org/installer -O composer-installer.php
sudo php composer-installer.php --filename=composer --install-dir=/usr/local/bin
- Sposta i file estratti di SuiteCRM in /var/www/html/
sudo mkdir /var/www/html/suitecrm
sudo cp -r SuiteCRM-7.12-rc/* /var/www/html/suitecrm
- Esegui l'installazione del compositore
cd /var/www/html/suitecrm
composer install
- Cambia la proprietà dei file all'utente del servizio web
sudo chown -R nginx:nginx /var/www/html/suitecrm
sudo chmod -R 766 /var/www/html/suitecrm
- Configura SELinux per i file
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/suitecrm(/.*)?"
sudo restorecon -Rv /var/www/html/suitecrm/
- Configura Nginx
sudo vim /etc/nginx/conf.d/suitecrm.conf
Quindi aggiungi quanto segue:
server {
server_name suitecrm.unixcop.com;
client_max_body_size 20M;
root /var/www/html/suitecrm;
location / {
try_files $uri /index.php;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
error_log /var/log/nginx/suitecrm_error.log;
access_log /var/log/nginx/suitecrm_access.log;
location ~ /\.ht {
deny all;
}
}
- Riavvia nginx e php-fpm.
sudo systemctl restart nginx php-fpm
- Consenti porta http nelle impostazioni del firewall.
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-service=https --permanent
sudo firewall-cmd --reload
- Accedi all'interfaccia Web di SuiteCRM aprendo il browser e vai a http://suitecrm.unixcop.com
Nota :se ricevi questo errore, potresti dover aggiungere la cartella della sessione per risolvere l'errore
Soluzione
In tal caso, conferma che esiste una cartella esistente /var/lib/php/session , altrimenti crealo. Quindi, assicurati che il motore del server web appropriato disponga delle autorizzazioni su di esso
sudo mkdir -p /var/lib/php/session
sudo chown -R nginx:nginx /var/lib/php/session
- Riavvia nginx quindi ricarica la tua pagina web
- Seleziona Accetto quindi fare clic su Avanti
- Ecco un'informazione sull'ambiente di sistema, puoi verificare che tutto sia a posto come mostrato sopra Quindi fare clic su Avanti
- Fornisci il tuo database nome che hai creato in precedenza e modifica le configurazioni del sito con le tue informazioni come mostrato sopra, quindi fai clic su Avanti .
- Attendere l'installazione e creare le impostazioni predefinite.
- Fai clic su Fine pulsante per iniziare con l'accesso a SuiteCRM.
- Fornisci il nome utente e la password che li hai aggiunti in precedenza nelle configurazioni del sito impostazioni.
- Verrai indirizzato correttamente a SuiteCRM Dashboard come mostrato sopra.
- Configura anche cron per consentire all'utente web di eseguire gli scheduler di SuiteCRM.
sudo crontab -e -u nginx
- Quindi aggiungi la seguente riga al crontab
* * * * * cd /var/www/html/suitecrm; php -f cron.php > /dev/null 2>&1
Conclusione
In questo articolo, abbiamo illustrato come installare completamente SuiteCRM sul tuo server CentOS 8.
Questo è tutto... grazie.