Najlepiej rozpakować pliki bezpośrednio na serwerze, dzięki temu będą zachowane oryginalne uprawnienia na plikach.
Bazę danych wgrywamy za pomocą konsoli CLI (zalecane) lub klienta bazodanowego np. DBeaver, Database Workbench , SQLyog
mysql -P 3306 -h 127.0.0.1 -u crm -p crm < dump.sql
Po wgraniu plików i zaimportowaniu bazy danych zaktualizuj następujące pliki:
/** Backslash is required at the end of URL */ public static $site_URL = 'https://example.yetiforce.cloud/';
/** Gets the database server */ public static $db_server = 'localhost'; /** Gets the database port */ public static $db_port = '3306'; /** Gets the database user name */ public static $db_username = 'root'; /** Gets the database password */ public static $db_password = ''; /** Gets the database name */ public static $db_name = 'yetiforce';
Warto też sprawdzić czy niedozwolone domeny do pobierania i linkowania nie uległy zmianie:
/** Restricted domains */ public static $EMAIL_FIELD_RESTRICTED_DOMAINS_VALUES = ['yetiforce.com','github.com'];
Sprawdź czy jest włączone wymuszone HTTPS, jeśli na starym serwerze był HTTPS i włączone przekierowanie a nowy serwer nie ma aktywnego HTTPS, to moga się pojawić problemy.
/** Force site access to always occur under SSL (https) for selected areas. You will not be able to access selected areas under non-ssl. Note, you must have SSL enabled on your server to utilise this option. */ public static $forceHttpsRedirection = false;
Jeśli na serwerze mamy dostępny katalog dla kopii zapasowej, to możemy go włączyć:
/** Backup catalog path. */ public static $BACKUP_PATH = '';
Zawsze po przeniesieniu systemu na nowy serwer, przywróceniu z backupu lub aktualizacji serwera LAMP uruchom weryfikację konfiguracji serwera zgodnie z wymaganiami z wbudowanego narzędzia do weryfikacji konfiguracji (Serwer - konfiguracja) lub artykułu "Wymagania dla serwera WWW".
Jeśli serwer nie spełnia wymogów, nie należy z niego korzystać, ponieważ może to powodować utratę danych. Jeśli jakieś parametry widnieją na żółto lub czerwono, to należy je poprawić.
Ważnym jest również to, aby właścicielem plików był ten sam użytkownik na którym działa serwer www (apache, nginx).
Uruchom i zweryfikuj działanie CRON-a
Przeniesienie na nowy serwer lub przywrócenie z backupu wymaga ponownej rejestracji systemu.
Niektóre dodatki mogą wymagać ponownej konfiguracji podczas zmiany lokalizacji lub adresu CRM.
Wymaga ponownej reinstalacji i zainstalowania nowego pliku XML.
Stary dodatek zainstalowany w Outlook należy usunąć, pobrać nowy plik XML z panelu CRM zgodnie z instrukcją.
Jeżeli tworzymy środowisko testowe warto jest wprowadzić kilka istotnych zmian które pomogą nam w rozróżnieniu i bezpieczeństwie środowisk.
Warto jest dodać komunikat o tym że jest to środowiska testowe, można to zrobić na stronie logowania oraz na górnej belce systemu CRM.
Od wersji 6.2.0 dostępna jest możliwość aby w pliku konfiguracyjnym config\Main.php ustawić dodatkowe komunikaty informacyjne.
https://doc.yetiforce.com/code/classes/Config-Main.html#property_loginPageAlertMessage
/** Header alert message */ public static $headerAlertMessage = ''; /** Header alert type, ex. alert-primary, alert-danger, alert-warning, alert-info */ public static $headerAlertType = ''; /** Header alert icon, ex. fas fa-exclamation-triangle, fas fa-exclamation-circle, fas fa-exclamation, far fa-question-circle, fas fa-info-circle */ public static $headerAlertIcon = ''; /** Login page alert message */ public static $loginPageAlertMessage = ''; /** Login page alert type, ex. alert-primary, alert-danger, alert-warning, alert-info */ public static $loginPageAlertType = ''; /** Login page alert icon, ex. fas fa-exclamation-triangle, fas fa-exclamation-circle, fas fa-exclamation, far fa-question-circle, fas fa-info-circle */ public static $loginPageAlertIcon = '';
Wiadomości wysyłane z nowego środowiska będą wyglądały identycznie jak z produkcyjnego, dlatego warto wyłączyć lub zmienić nazwy nadawców w SMTP aby umieć odróżnić wiadomości mailowe.
Panel: Konfiguracja systemu > Automatyzacja > CRON
Dokumentacja: CRON
Warto zmienić dane dostępowe do API, aby były inne na każdym z środowisk. Aby przypadkiem ktoś mając dostęp do wersji testowej nie próbował uzyskać danych z wersji produkcyjnej.
Panel: Konfiguracja systemu > Integracja > Web service - Aplikacje
W celu prawidłowego przeniesienia systemu CRM na inny serwer należy zrobić pełną kopię systemu (pliki i baza danych). Najlepiej spakować programem do kompresji danych np.
zip -r `date +"%Y%m%d_%H%M"`.zip __CRM_PATH__ -q
tar -zcvf /var/www/html/`date +"%Y%m%d_%H%M"`.tar.gz /var/www/html/
Podczas przenoszenia lub przywracania systemu nie może wystąpić żaden błąd, ponieważ później może okazać sie, że baza jest niekompletna.