Verwendete Technik
Wir setzen auf weltweit millionenfach bewährte Standards bei der Umsetzung von CCM19. Die Grundlage der Software ist das PHP
Frontend- Widgets
Die Frontend
Sicherheit
CCM19 nutzt intensiv Content Security Policy (CSP) mit regulär folgenden Einschränkungen:
Content<nt>-</nt>Security<nt>-</nt>Policy:
default<nt>-</nt>src 'self';
connect<nt>-</nt>src 'self' https://update.ccm19.de;
script<nt>-</nt>src 'self' 'unsafe<nt>-</nt>inline';
style<nt>-</nt>src 'self' 'unsafe<nt>-</nt>inline';
img<nt>-</nt>src 'self' data:;
frame<nt>-</nt>ancestors 'self';
form<nt>-</nt>action 'self'
Speicherung ohne Datenbank
Alle Daten werden im JSON
Die Speicherung und Verarbeitung ist so effizient, dass auch mehrere Millionen Aufrufe pro Tag problemlos verarbeitet werden können.
Speicherung mit Datenbank
CCM19 nutzt alternativ MongoDB ab Version 4.0. In dieser Variante werden alle Daten in der Datenbank gespeichert.
Das /var
CCM19 benötigt Multi
Beta- Phase
Vor der Veröffentlichung führen wir diverse Tests durch um typische Fehler zu finden und zu korrigieren. Weiterhin gibt es eine ausgedehnte Beta Phase an der viele Kunden teilnehmen und uns Feedback vor der endgültigen Veröffentlichung geben.
Systemvoraussetzungen für Download- Variante
Die Self
Apache httpd
Als Server empfehlen wir einen LAMP
Beim Betrieb mit Apache httpd werden folgende Module benötigt:
CCM19 ist mit dem Caching
nginx
Sollte ihr Webserver nginx verwenden, sind unter Umständen Anpassungen an der Serverkonfiguration nötig, damit CCM19 zufriedenstellend läuft, nachdem Sie den ersten Schritt der Installation durchgeführt haben.
Bringen Sie zunächst den Pfad zur Konfigurationsdatei des nginx
Notieren Sie bitte weiterhin den absoluten Pfad zum public
Die hier aufgeführte Beispiel
Beispiel:
# Fügen Sie den Inhalt dieser Datei Ihrer nginx<nt>-</nt>Konfiguration innerhalb eines
# server<nt>-</nt>Blocks hinzu, wenn Sie CCM19 in einem Unterverzeichnis betreiben wollen.
# Dazu wird das PHP<nt>-</nt>FPM<nt>-</nt>Modul mit mindestens PHP 7.2 benötigt.
#
# Sie müssen folgende Anpassungen vornehmen:
# <nt>-</nt> "/ccm19" durch den URL<nt>-</nt>Pfad ersetzen unter dem CCM19 erreichbar sein soll,
# <nt>-</nt> "/path/to/ccm/public" durch den Pfad zum public<nt>-</nt>Verzeichnis in Ihrer
# CCM19<nt>-</nt>Installation (ohne / am Ende!) ersetzen,
# <nt>-</nt> "unix:/run/php/php7.2<nt>-</nt>fpm.sock" je nach Serverkonfiguration durch den
# Socket<nt>-</nt>Pfad zu Ihrem PHP<nt>-</nt>FPM<nt>-</nt>Modul ersetzen.
set $ccm19_urlpath /ccm19;
set $ccm19_realpath /path/to/ccm/public;
location ~ /ccm19(/.*) {
root $ccm19_realpath;
try_files $1 @ccm19;
}
location ^~ /ccm19/index.php {
return 403;
}
location @ccm19 {
root $ccm19_realpath;
fastcgi_index index.php;
fastcgi_split_path_info ^(/ccm19)(/.*)$;
set $path_info $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root/index.php;
fastcgi_param SCRIPT_NAME $ccm19_urlpath/index.php;
fastcgi_param PATH_INFO $path_info;
fastcgi_param HTTP_PROXY "";
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REQUEST_SCHEME $scheme;
fastcgi_param HTTPS $https if_not_empty;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
fastcgi_pass unix:/run/php/php7.2<nt>-</nt>fpm.sock;
}