Wytyczne techniczne dla serwera pod Oprogramowanie KSI

Instrukcja dla administratora systemu – wymagania, konfiguracja i dostęp na potrzeby instalacji serwisu produkcyjnego i testowego.

Ważne

W przypadku instalacji Oprogramowania na serwerze klienta, KSI nie konfiguruje systemu.

Pracownicy KSI nie korzystają z konta root w celu zmiany konfiguracji serwera. Wszystkie czynności administracyjne wykonuje administrator klienta zgodnie z poniższymi wytycznymi.

Serwer ogólnie

  • Serwer VPS lub dedykowany.
  • SYSTEM: zalecany Debian.
  • RAM: min. 8 GB.
  • CPU: min. 2 rdzenie.
  • Dysk SSD: min. 40 GB.
Produkcja/test
rekomendowane oddzielne katalogi i jedna baza (z możliwością utworzenia kopii – patrz sekcja MySQL).
Backup
regularne kopie zapasowe katalogów public_html/swpb2/ i public_html/swpb2-test/ oraz bazy danych.

Serwer SSH

Serwer WWW – Apache 2+

<Directory /var/www/html>
  AllowOverride All        # lub precyzyjniej: AllowOverride FileInfo Options Indexes
  Options FollowSymLinks
  Require all granted
</Directory>
Wskazówka: gdzie dodać blok <Directory>?
Najczęściej w pliku vhosta (np. /etc/apache2/sites-available/example.conf) lub globalnie w /etc/apache2/apache2.conf. Po zmianach wykonaj a2enmod rewrite oraz systemctl reload apache2.

Obsługa domen

DomenaDocelowy katalog
https://domena-klienta.pl(...)public_html/swpb2/
https://www.domena-klienta.pl(...)public_html/swpb2/
https://test-domena-klienta.pl(...)public_html/swpb2-test/

MySQL / Percona

-- Przykłady (wykonywane jako użytkownik z uprawnieniami SUPER/SESSION_VARIABLES_ADMIN):
SET GLOBAL sql_mode = (SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
SET @@sql_mode = '';
SET GLOBAL log_bin_trust_function_creators = 1;

Aby wartości nie znikały po restarcie, dodaj do globalnej konfiguracji MySQL (np. mysqld.cnf):

[mysqld]
# Wyłączenie ONLY_FULL_GROUP_BY w sql_mode
sql_mode = ''
# Umożliwia tworzenie funkcji i procedur przy włączonym binlogu
log_bin_trust_function_creators = 1

PHP w wersji 7.4 – 8.2

Wymagane rozszerzenia

Wydajność i pamięć

Uwagi

Wymagany swobodny dostęp (bez VPN i innych ograniczeń) na czas wdrożenia do:

Dodatkowe moduły przez usługi

Jeśli planujesz korzystać z:

wtedy konieczne będzie dodanie w PHP obsługi SQLite (przez PDO).

KSI