Wymagania Portalu dla serwera WWW

YetiForce Portal stawia pewne wymagania serwerom WWW - dostosowanie serwera jest kluczowe dla prawidłowego działania systemu. Nieprawidłowa konfiguracja serwera jest najczęstszą przyczyną problemów.

Konfiguracja serwera dla Portalu jest bardzo podobna do dla CRM (Wymagania CRM dla serwera WWW), ale zawiera istotne różnice np. brak wymagań dla bazy danych.

Zasoby/Sprzęt

Wymagania dla sprzętu są zależne od liczby aktywnych użytkowników i ilości danych. Dlatego wymagając indywidualnego wyliczenia.
Minimalne wymagania to:

  • procesor z minimum dwoma rdzeniami,
  • 2 GB pamięci RAM ,
  • szybki dysk twardy (najlepiej SSD),
  • szybkie połączenie sieciowe do CRM

Oprogramowanie bazowe dla serwera (LAMP/LEMP)

  • System operacyjny - Debian, Ubuntu, RedHat, Mint - działa na większości dystrybucji linuksowych. Nie zalecamy systemu operacyjnego MS Windows, jak również MS Windows Server. Pomimo, że nasz system dobrze sobie radzi na serwerach Windows, to nie jest ono optymalne pod kątem działania aplikacji WWW.
  • Serwer WWW
    • Nginx 1.19 (rekomendowany) - poprawnie działa również na wcześniejszych wersjach, jednakże preferujemy najnowsze stabilne wersje oprogramowania. Możesz również używać oprogramowania alternatywnego, ale kompatybilnego z tym oprogramowaniem.
    • Apache 2.4 - poprawnie działa również na wcześniejszych wersjach tj. 2.1, 2.2, 2.3, jednakże preferujemy najnowsze stabilne wersje oprogramowania. Możesz również używać oprogramowania alternatywnego, ale kompatybilnego z tym oprogramowaniem. 
      System nie działa z rozszeżeniem do serwera WWW ModSecurity
  • PHP 7.4  (zalecane), 7.3.x , 8.0. Zalecamy używanie najnowszych stabilnych wersji oprogramowania (np. 7.4.x)

Wymagania dla PHP

Wymagania są zależne od wersji systemu, zalecana konfiguracja php.ini:

Konfiguracja bibliotek zewnętrznych

  • OpenSSL Obowiązkowy
  • Curl Obowiązkowy
  • PCRE Obowiązkowy
  • JSON Obowiązkowy
  • SESSION Obowiązkowy
  • MBSTRING Obowiązkowy
  • FILEINFO Obowiązkowy
  • ICONV Obowiązkowy
  • INTL Obowiązkowy
  • bcmath Obowiązkowy
  • filter Obowiązkowy
  • ctype Obowiązkowy
  • hash Obowiązkowy
  • OPCACHE Opcjonalny (zalecany w celu lepszej wydajności)
  • APCU Opcjonalny (zalecany w celu lepszej wydajności)
  • uopz Zabroniony (rozszerzenie powoduje zawieszanie i blokowanie systemu)

FPM

Wymagania są zależne od wersji systemu, zalecana konfiguracja https://github.com/YetiForceCompany/YetiForceCRM/blob/stable/tests/setup/fpm/www.conf

Serwer WWW

Apache: https://github.com/YetiForceCompany/YetiForceCRM/blob/stable/tests/setup/apache/.htaccess

Nginx: https://github.com/YetiForceCompany/YetiForceCRM/blob/stable/tests/setup/nginx/vhost.conf

Uprawnienia do folderów i plików

Uprawnienia do folderów i plików często są głównym źródłem problemów dla osób instalujących aplikacje na swoich serwerach VPS i serwerach dedykowanych. Wszystkie pliki i foldery CRM powinny mieć tego samego właściciela. Preferujemy taką konfiguracje plików [644] i folderów [755], aby wgrane pliki bez zmiany uprawnień na folderach i plikach miały z poziomu przeglądarki pełen dostęp do odczytu i zapisu (aby przeglądarka miała takie uprawnienia). Należy pamiętać, że sama aplikacja podczas pracy wykonuje różne operacje takie jak odczyt, zapis, jak również tworzenie i usuwanie plików. Jeżeli nie wiesz jak prawidłowo skonfigurować uprawnienia, poproś o to swojego administratora wysyłając mu link do tego artykułu.

  • Configuration directory config
  • Application data directory app_data
  • Cache Directory cache/
  • Logs directory cache/logs/
  • Session directory cache/session/
  • Cache templates directory cache/layouts/