Wissensdatenbank
1000 FAQ, 500 Anleitungen und Lernvideos. Hier gibt es nur Lösungen!
Dieser Leitfaden beschreibt, wie Sie Daten von Ihren Webhostings (Shared oder Cloud-Server) mit Acronis auf Swiss Backup, der Backup-Lösung in einer unabhängigen Schweizer Cloud, sichern können.
Vorwort
- Es handelt sich um eine Backup-Lösung, die die automatische Sicherung Ihrer Dateien ermöglicht, falls die von Infomaniak angebotenen Backups Ihren Anforderungen an Verfügbarkeit oder Sicherheit nicht entsprechen oder nicht mehr entsprechen.
- Es ist auch möglich, andere Datentypen zu sichern.
- Die Backups werden in der Regel alle 24 Stunden durchgeführt, abhängig von der Last des Cloud-Agents.
- Es ist nicht möglich, Dateien von der Sicherung auszuschließen: Alle Dateien werden gesichert, was zu Warnungen führen kann, da bestimmte Systemdateien geschützt und für den Kunden nicht zugänglich sind; das ist völlig normal und bei allen Hosting-Anbietern üblich.
- Erleichtern Sie sich das Leben! Bei Bedarf können lokale Partner, die von Infomaniak referenziert werden, diese Schritte übernehmen. Starten Sie eine kostenlose Ausschreibung. Sie kümmern sich um alles und entlasten Sie von technischen Details.
Erstellung des Backup-Speicherplatzes
Voraussetzungen
- Besitzen Sie einen Swiss Backup Infomaniak-Speicherplatz mit einem verfügbaren Gerätekontingent (mindestens 1) für ein Acronis-Backup vom Typ Website:

- Wenn notwendig, das Gerätekontingent nach Bedarf erhöhen.
- Gerät im Infomaniak Manager hinzufügen, um die Anmeldeinformationen zu erhalten.
- Die Acronis-Dokumentation zu diesem Thema einsehen: Backup / Wiederherstellung
- Verwenden Sie ein Webhosting.
- Die Informationen des FTP+SSH-Benutzerkontos kennen:

- Die Informationen des MyQSL/MariaDB-Benutzerkontos kennen, das die maximalen Berechtigungen (Lesen/Schreiben/Admin) für alle Datenbanken und Tabellen haben muss, die Sie sichern möchten:

Um die Sicherung einer Website mit Acronis zu konfigurieren:
- Hier klicken, um auf die Acronis-Konsole mit den nach der Hinzufügung des Geräts erhaltenen Anmeldeinformationen zuzugreifen (Hilfe benötigt?).
- Klicken Sie auf die Schaltfläche zum Hinzufügen eines Geräts, um ein Gerät vom Typ Website hinzuzufügen:

- Geben Sie die Informationen zu den FTP-Daten ein:
- geben Sie einen Namen/Beschreibung an
- geben Sie den FTP-Host an
- lassen Sie den Port 22
- geben Sie den FTP+SSH-Benutzernamen an
- geben Sie das Passwort des FTP+SSH-Kontos an
- Klicken Sie auf die Schaltfläche Weiter:

- Geben Sie die Informationen zu den MySQL/MariaDB-Datenbanken ein:
- wählen Sie die Option SSH aus
- geben Sie den MySQL/MariaDB-Host an
- lassen Sie den Port 3306
- geben Sie den MySQL/MariaDB-Benutzernamen an
- geben Sie das Passwort des MySQL/MariaDB-Kontos an
- Klicken Sie auf die Schaltfläche Weiter (oder Überspringen, wenn keine Daten dieses Typs zu sichern sind):

Website-Daten sichern
Sobald die Sicherung konfiguriert und erstellt wurde, finden Sie sie unter Websites im linken Seitenmenü:
Klicken Sie auf den Namen Ihrer Sicherung, um deren Wiederholung zu konfigurieren, und starten Sie eine erste Kopie sofort, falls erforderlich.
Auf die gesicherten Dateien zugreifen und diese wiederherstellen
Nehmen Sie diesen anderen Leitfaden zur Kenntnis, wenn Sie Informationen zur Wiederherstellung (teilweise oder vollständig) Ihrer Daten suchen.
Diese Anleitung bezieht sich auf die ODBC-Funktionen von PHP.
Die ODBC-Funktionen von PHP werden nur auf Serveur Cloud unterstützt.
Open Database Connectivity Funktionen
Dabei handelt es sich um Funktionen, die zur Interaktion mit Datenbanken über die ODBC-Schnittstelle (Open Database Connectivity) verwendet werden, einen Standard zum einheitlichen Zugriff auf Datenquellen. Hier sind einige Beispiele für die Verwendung der ODBC-Funktionen von PHP:
- Daten aus einer externen Datenbank lesen und auf Ihrer Website anzeigen
- Daten in eine externe Datenbank einfügen oder ändern
- Komplexe Abfragen an einer externen Datenbank durchführen
Diese Anleitung erklärt, wie Sie einem Webhosting, das im Infomaniak Manager innerhalb Ihrer Organisation vorhanden ist, einen anderen Namen geben.
Vorwort
- Ein Webhosting ist, vereinfacht ausgedrückt, der Speicherplatz, der für die Bereitstellung einer oder mehrerer Ihrer Websites reserviert ist.
- Standardmäßig trägt Ihr Infomaniak-Hosting den Namen der ersten Website, die Sie zu diesem Hosting hinzufügen:
- Sie besitzen die Domain "domaine.xyz" und möchten eine Website mit dieser Domain...
- Sie kaufen ein Webhosting, das automatisch "domaine.xyz" benannt wird, auch wenn Sie später eine zweite Website "toto.com" hinzufügen.
- Das Hosting kann in einen generischeren Namen wie "Meine Websites" umbenannt werden, um seinen tatsächlichen Inhalt besser widerzuspiegeln.
- Das Umbenennen dient dazu, die Lesbarkeit/Verständlichkeit der im Manager aufgeführten Produkte zu verbessern und hat keinerlei Auswirkungen auf die Adressen der Websites: Nehmen Sie sich diese andere Anleitung zur Hand, um den Domainnamen zu ändern.
Webhosting umbenennen
Um auf das Webhosting zuzugreifen, um die Namensänderung vorzunehmen:
- Hier klicken, um auf die Verwaltung Ihres Produkts im Infomaniak Manager zuzugreifen (Hilfe benötigt?).
- Klicken Sie direkt auf den Namen, der dem betreffenden Produkt zugewiesen wurde.
- Klicken Sie auf die Schaltfläche Verwalten.
- Klicken Sie auf Namen ändern:

- Geben Sie den gewünschten Namen ein.
- Klicken Sie auf Speichern.
Die Hosting-Plattform für Ihre Websites *.perso.ch, *.users.ch, *.geneva-link.ch wird aktualisiert. Dieser Leitfaden zeigt Ihnen, wie Sie sich mit Ihrem FTP-Speicherplatz verbinden.
Änderung der Anmeldeinformationen
Die aktuelle Hosting-Plattform verwendet ein Präfix für Ihren FTP-Benutzernamen. Dieses Präfix hat folgendes Format: persoch_
Wenn Ihr Benutzername also infomaniak war, müssen Sie sich nun mit dem folgenden Benutzer über FTP verbinden: persoch_infomaniak.
Dieser Leitfaden erklärt, wie man ohne das Modul PECL SSH2 client, das auf den Webhostings und Cloud-Servern von Infomaniak nicht verfügbar ist, arbeitet, indem man stattdessen die Bibliothek phpseclib verwendet, die in nativem PHP funktioniert und keine spezielle Erweiterung erfordert.
Vorwort
- Die Verwendung von
PECL SSH2 clientführt zu Fehlern wieNo compatible key exchange algorithms foundoderUnable to exchange encryption keysin der letzten verfügbaren Version. Phpseclibermöglicht:- Die SSH-Authentifizierung per Passwort oder privatem Schlüssel.
- Die Ausführung von Fernbefehlen.
- Den sicheren Dateitransfer (SFTP).
- Das Management von SSH-Schlüsseln.
phpseclib verwenden
Um eine SSH-Verbindung in ein PHP-Skript zu integrieren, verwenden Sie phpseclib wie folgt:
use phpseclib3\Net\SSH2;
use phpseclib3\Crypt\PublicKeyLoader;
$ssh = new SSH2('domain.xyz');
$key = PublicKeyLoader::load(file_get_contents('/path/to/private_key'));
if (!$ssh->login('utilisateur', $key)) {
exit('Authentication Failed');
}
echo $ssh->exec('ls -la');Diese Anleitung beschreibt die spezifischen Regeln, die beim Erstellen eines Benutzerpassworts mit mysqli_connect(), das das Zeichen „Dollar“ $ enthält, auf den Infomaniak-Plattformen zu beachten sind.
Vorbemerkung
- Wenn Sie bei der Verwendung von
mysqli_connect()die Fehlermeldung "Access denied for user" erhalten und Ihr Datenbankbenutzerpasswort ein Dollarzeichen$enthält, kann das Problem aus der Funktion von Zeichenketten in PHP resultieren. - Das Problem kann auch mit Messaging-Skripten auftreten.
Richtlinien einzuhalten
Wenn das Sonderzeichen $ in einem Benutzerpasswort verwendet wird und diesem kein Zahlzeichen folgt, ist der Variablenname ungültig und die Ersetzung erfolgt nicht korrekt.
Hier sind Lösungen, um dies zu beheben:
- Setzen Sie das Passwort in einfache Anführungszeichen:
'$******' - Stellen Sie sicher, dass direkt auf den Dollar eine Zahl folgt:
"$2*****" - Verwenden Sie einen Backslash, um das Dollarzeichen im Passwort zu "escapen":
“\$****”
Diese Anleitung bezieht sich auf das Apache-Modul mod_auth_mysql, das die Authentifizierung von Benutzern und die Zugriffsberechtigung über eine MySQL-Datenbank ermöglicht.
Mit einer Shared-Hosting-Lösung
Das Modul mod_auth_mysql ist nicht verfügbar mit Shared-Hosting-Lösungen; Sie müssen einen Cloud-Server in Betracht ziehen oder PHP-Skripte und Sitzungen verwenden.
Dieser Leitfaden erklärt, wie Sie auf InnoDB bei Infomaniak zugreifen.
Verwenden Sie den MySQL-Speichermotor InnoDB
Sobald Ihr Infomaniak-Hosting Ihnen Zugriff auf MySQL / MariaDB-Datenbanken gewährt, ist InnoDB gleichzeitig verfügbar (zuvor MyISAM).
InnoDB bietet erweiterte Funktionen wie ACID-Transaktionen, Zeilenebenen-Sperren, Volltextindizes usw. Sie können diese Funktionen nutzen, indem Sie geeignete SQL-Anweisungen in Ihren Abfragen verwenden.
Diese Anleitung betrifft die Installation von PHP-Erweiterungen auf Webhosting von Infomaniak.
Verwendung von PHP-Erweiterungen Zend
- Zend Guard Loader ist eine PHP-Erweiterung, die das Ausführen von PHP-Skripten ermöglicht, die mit Zend Guard verschlüsselt wurden.
- Zend Guard Loader ist standardmäßig für PHP <= 5.6 auf allen Webhostings installiert und ist nicht für PHP-Versionen >= 5.6 verfügbar.
- Seit PHP 5.3.x wurde das Modul Zend Optimizer durch ZendGuardLoader ersetzt
- Die Erweiterung ZendOPCache erfordert einen Cloud-Server, der mit PHP 5.5 konfiguriert ist
Dieser Leitfaden betrifft YAZ, eine Softwarebibliothek, die zur Implementierung des Z39.50-Protokolls verwendet wird, ein Informationssuch- und -abrufprotokoll, das die Kommunikation zwischen verschiedenen Bibliotheksmanagementsystemen (BMS) wie PMB ermöglicht, das in Frankreich weit verbreitet ist.
Infomaniak für ein effektives Bibliotheksmanagement
Auf den Webhostings von Infomaniak wird PMB unterstützt und YAZ standardmäßig aktiviert.
Sollten Sie jedoch Fehler wie Call to undefined function yaz_connect() erhalten, müssen Sie Ports über den Manager öffnen. Der Port 210 ist der Standardport, der für die Z39.50-Kommunikation verwendet wird, zögern Sie jedoch nicht, die Dokumentation Ihrer Anwendungen zu konsultieren.
Für die alten Infomaniak-Hosting-Tarife sollte ein Angebotswechsel in Betracht gezogen werden.
Der Zugriff auf die Systembefehle who und users ist für LDAP-Benutzer auf allen Infomaniak-Servern verboten.
Dieser Leitfaden hilft Ihnen, wenn Sie beispielsweise ein Paket wie pymysql bereitstellen möchten und dieses eine Python-Version benötigt, die höher ist als die auf Ihrem Hosting angebotene.
Vorwort
- Anaconda ist eine kostenlose und Open-Source-Distribution der Programmiersprache Python. Diese Distribution zielt darauf ab, die Verwaltung von Paketen und die Bereitstellung zu vereinfachen.
- Es wird empfohlen, conda zu verwenden, das mit einer aktuellen Version von Python geliefert wird und im Benutzerbereich installiert wird, sodass es keine Konflikte mit dem System-Python gibt (wie in einer virtuellen Umgebung, die immer eine Systeminstallation der gewünschten Version erfordert).
- Nehmen Sie die offizielle Dokumentation zur Kenntnis.
⚠️ Für zusätzliche Hilfe kontaktieren Sie einen Partner oder starten Sie eine kostenlose Ausschreibung — erfahren Sie auch mehr über die Rolle des Hosting-Anbieters.
Installationsprogramm herunterladen
uid165116@od-12345:~$ wget https://repo.anaconda.com/miniconda/Miniconda3-py37_4.10.3-Linux-x86_64.sh
--2021-07-28 18:21:10-- https://repo.anaconda.com/miniconda/Miniconda3-py37_4.10.3-Linux-x86_64.sh
Resolving repo.anaconda.com (repo.anaconda.com)... 2606:4700::6810:8303, 2606:4700::6810:8203, 104.16.131.3, ...
Connecting to repo.anaconda.com (repo.anaconda.com)|2606:4700::6810:8303|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 89026327 (85M) [application/x-sh]
Saving to: ‘Miniconda3-py37_4.10.3-Linux-x86_64.sh’Miniconda3-py37_4.10.3-Linux-x86_64.sh 100% [==============================================>] 84.90M 203MB/s in 0.4s 18:21:11 (100 MB/s) - ‘Miniconda3-py37_4.10.3-Linux-x86_64.sh’ saved [89026327/89026327]Hash überprüfen
uid165116@od-12345:~$ test $(md5sum Miniconda3-py37_4.10.3-Linux-x86_64.sh | awk '{print $1}') == "9f186c1d86c266acc47dbc1603f0e2ed" && echo "OK"
OKInstallation starten
uid165116@od-12345:~$ bash Miniconda3-py37_4.10.3-Linux-x86_64.sh -b
PREFIX=/home/clients/fc84cbbf6dcbd6dd76b15d3e56c1789f/miniconda3
Unpacking payload ...
Collecting package metadata (current_repodata.json): done
Solving environment: done## Package Plan ##environment location: /home/clients/fc84cbbf6dcbd6dd76b15d3e56c1789f/miniconda3added / updated specs:
- _libgcc_mutex==0.1=main
- _openmp_mutex==4.5=1_gnu
- brotlipy==0.7.0=py37h27cfd23_1003
- ca-certificates==2021.7.5=h06a4308_1
- certifi==2021.5.30=py37h06a4308_0
- cffi==1.14.6=py37h400218f_0
- chardet==4.0.0=py37h06a4308_1003
- conda-package-handling==1.7.3=py37h27cfd23_1
- conda==4.10.3=py37h06a4308_0
- cryptography==3.4.7=py37hd23ed53_0
- idna==2.10=pyhd3eb1b0_0
- ld_impl_linux-64==2.35.1=h7274673_9
- libffi==3.3=he6710b0_2
- libgcc-ng==9.3.0=h5101ec6_17
- libgomp==9.3.0=h5101ec6_17
- libstdcxx-ng==9.3.0=hd4cf53a_17
- ncurses==6.2=he6710b0_1
- openssl==1.1.1k=h27cfd23_0
- pip==21.1.3=py37h06a4308_0
- pycosat==0.6.3=py37h27cfd23_0
- pycparser==2.20=py_2
- pyopenssl==20.0.1=pyhd3eb1b0_1
- pysocks==1.7.1=py37_1
- python==3.7.10=h12debd9_4
- readline==8.1=h27cfd23_0
- requests==2.25.1=pyhd3eb1b0_0
- ruamel_yaml==0.15.100=py37h27cfd23_0
- setuptools==52.0.0=py37h06a4308_0
- six==1.16.0=pyhd3eb1b0_0
- sqlite==3.36.0=hc218d9a_0
- tk==8.6.10=hbc83047_0
- tqdm==4.61.2=pyhd3eb1b0_1
- urllib3==1.26.6=pyhd3eb1b0_1
- wheel==0.36.2=pyhd3eb1b0_0
- xz==5.2.5=h7b6447c_0
- yaml==0.2.5=h7b6447c_0
- zlib==1.2.11=h7b6447c_3The following NEW packages will be INSTALLED: _libgcc_mutex pkgs/main/linux-64::_libgcc_mutex-0.1-main
_openmp_mutex pkgs/main/linux-64::_openmp_mutex-4.5-1_gnu
brotlipy pkgs/main/linux-64::brotlipy-0.7.0-py37h27cfd23_1003
ca-certificates pkgs/main/linux-64::ca-certificates-2021.7.5-h06a4308_1
certifi pkgs/main/linux-64::certifi-2021.5.30-py37h06a4308_0
cffi pkgs/main/linux-64::cffi-1.14.6-py37h400218f_0
chardet pkgs/main/linux-64::chardet-4.0.0-py37h06a4308_1003
conda pkgs/main/linux-64::conda-4.10.3-py37h06a4308_0
conda-package-han~ pkgs/main/linux-64::conda-package-handling-1.7.3-py37h27cfd23_1
cryptography pkgs/main/linux-64::cryptography-3.4.7-py37hd23ed53_0
idna pkgs/main/noarch::idna-2.10-pyhd3eb1b0_0
ld_impl_linux-64 pkgs/main/linux-64::ld_impl_linux-64-2.35.1-h7274673_9
libffi pkgs/main/linux-64::libffi-3.3-he6710b0_2
libgcc-ng pkgs/main/linux-64::libgcc-ng-9.3.0-h5101ec6_17
libgomp pkgs/main/linux-64::libgomp-9.3.0-h5101ec6_17
libstdcxx-ng pkgs/main/linux-64::libstdcxx-ng-9.3.0-hd4cf53a_17
ncurses pkgs/main/linux-64::ncurses-6.2-he6710b0_1
openssl pkgs/main/linux-64::openssl-1.1.1k-h27cfd23_0
pip pkgs/main/linux-64::pip-21.1.3-py37h06a4308_0
pycosat pkgs/main/linux-64::pycosat-0.6.3-py37h27cfd23_0
pycparser pkgs/main/noarch::pycparser-2.20-py_2
pyopenssl pkgs/main/noarch::pyopenssl-20.0.1-pyhd3eb1b0_1
pysocks pkgs/main/linux-64::pysocks-1.7.1-py37_1
python pkgs/main/linux-64::python-3.7.10-h12debd9_4
readline pkgs/main/linux-64::readline-8.1-h27cfd23_0
requests pkgs/main/noarch::requests-2.25.1-pyhd3eb1b0_0
ruamel_yaml pkgs/main/linux-64::ruamel_yaml-0.15.100-py37h27cfd23_0
setuptools pkgs/main/linux-64::setuptools-52.0.0-py37h06a4308_0
six pkgs/main/noarch::six-1.16.0-pyhd3eb1b0_0
sqlite pkgs/main/linux-64::sqlite-3.36.0-hc218d9a_0
tk pkgs/main/linux-64::tk-8.6.10-hbc83047_0
tqdm pkgs/main/noarch::tqdm-4.61.2-pyhd3eb1b0_1
urllib3 pkgs/main/noarch::urllib3-1.26.6-pyhd3eb1b0_1
wheel pkgs/main/noarch::wheel-0.36.2-pyhd3eb1b0_0
xz pkgs/main/linux-64::xz-5.2.5-h7b6447c_0
yaml pkgs/main/linux-64::yaml-0.2.5-h7b6447c_0
zlib pkgs/main/linux-64::zlib-1.2.11-h7b6447c_3Preparing transaction: done
Executing transaction: done
installation finished.Conda starten
uid165116@od-12345:~$ source <(~/miniconda3/bin/conda shell.bash hook)pymysql installieren (z.B.)
(base) uid165116@od-12345:~$ python3 -V
Python 3.7.10(base) uid165116@od-12345:~$ pip3 install pymysql --user
Collecting pymysql
Downloading PyMySQL-1.0.2-py3-none-any.whl (43 kB)
|████████████████████████████████| 43 kB 892 kB/s
Installing collected packages: pymysql
Successfully installed pymysql-1.0.2
Diese Anleitung erklärt, wie man eine Datei angibt, die vor der gewünschten Seite oder zu Beginn jedes auf Ihrem Server ausgeführten PHP-Skripts geladen wird, als ob sie mit der Funktion require() aufgerufen worden wäre, jedoch globaler mit der PHP-Direktive auto_prepend_file.
Vorwort
- Um beispielsweise die Header einer Website zu deklarieren, können Sie eine Datei
headers.phperstellen, die PHP-Funktionenheader()enthält und die zu Beginn jeder PHP-Datei prepend wird…- … über eine Datei
.user.ini(eigen für ein Verzeichnis), - … oder über die Konfiguration der Website des Manager (global), wie unten beschrieben.
- … über eine Datei
Eine Datei global vom Manager aus einbinden
Um auf die Verwaltung der Website zuzugreifen:
- Klicken Sie hier, um auf die Verwaltung Ihres Produkts im Infomaniak Manager zuzugreifen (Hilfe benötigt?).
- Klicken Sie direkt auf den Namen des betreffenden Produkts:
- Klicken Sie auf Verwalten unter Erweiterte Einstellungen:

- Klicken Sie auf die Registerkarte PHP / Apache.
- Vervollständigen Sie die betreffende Zeile, indem Sie den Pfad der einzubindenden Datei eingeben.
- Klicken Sie auf die Schaltfläche zum Speichern:

Nach der Definition dieser Direktive werden alle PHP-Seiten auf Ihrem Server automatisch die angegebene Datei einbinden, bevor sie ihren eigenen Code ausführen.
Die in einer Datei .htaccess definierten Header gelten nur für nicht-PHP-Inhalte (also statisch).
Infomaniak verwendet php-fpm, das die verschiedenen Header über apache fast_cgi erhält. In der RFC von cgi_www gehört der Header Strict-Transport-Security nicht zu den über CGI übertragenen Headern, und die Apache-Dokumentation bestätigt dies. Nehmen Sie Kenntnis von dieser anderen RFC.
⚠️ Für zusätzliche Hilfe kontaktieren Sie einen Partner oder starten Sie eine kostenlose Ausschreibung — erfahren Sie auch mehr über die Rolle des Hosters.
Dieser Leitfaden erklärt, wie Sie die Konfiguration einer Node.js-Website anpassen, die auf der Infomaniak-Infrastruktur gehostet wird, um das Verhalten Ihrer Anwendung entsprechend ihrer Entwicklung, ihrer Abhängigkeiten oder Ihrer technischen Präferenzen anzupassen.
Voraussetzungen
- Installieren Sie eine Node.js-Website auf Ihrem Hosting.
- Testen Sie Ihre Änderungen lokal, bevor Sie sie in der Produktion anwenden.
- Stellen Sie sicher, dass Ihre Skripte (
start,build) in Ihrer Dateipackage.jsondefiniert sind. - Wenn Sie die Struktur Ihres Projekts ändern, denken Sie daran, den Ausführungsordner und die zugehörigen Befehle anzupassen.
- Der im Manager definierte Listening-Port muss unbedingt mit dem in Ihrem Anwendungscode verwendeten übereinstimmen.
Auf die Konfiguration zugreifen
Jede Website verfügt über ein eigenes Dashboard, um die Anwendung zu steuern (start, stop, neustarten), die Ausführungsconsole zu konsultieren, die Node.js-Versionen zu verwalten, die Domänen zu konfigurieren und die SSL-Zertifikate zu aktivieren:
- Klicken Sie hier, um auf die Verwaltung Ihres Produkts im Infomaniak-Manager zuzugreifen (Hilfe benötigt?).
- Klicken Sie direkt auf den Namen des betreffenden Produkts.
- Sie können die Konsole öffnen, das Projekt stoppen (es wird eine Wartungsseite angewendet) oder es neu starten.
- Um auf die erweiterten Einstellungen zuzugreifen, klicken Sie auf Verwalten unter Erweiterte Einstellungen:

- Klicken Sie auf die Registerkarte Node.js, um auf die Einstellungen zuzugreifen:

Änderungen anwenden
Dazu:
- Speichern Sie die Änderungen über die Manager-Oberfläche.
- Starten Sie Ihre Anwendung neu, damit die Änderungen übernommen werden.
Nehmen Sie sich diesen anderen Leitfaden im Falle von Problemen zur Kenntnis.
Hauptbefehle
Ausführungsverzeichnis
Das Ausführungsverzeichnis gibt den Speicherort auf dem Server an, an dem die Build- und Startbefehle ausgeführt werden. Es muss auf das Stammverzeichnis Ihrer Anwendung zeigen, d.h. dort, wo sich Ihre Datei package.json befindet.
Zum Beispiel können Sie für die Projektwurzel angeben:
./oder wenn sich Ihre Anwendung in einem Unterverzeichnis namens app befindet:
./appoder wenn sie sich in einem Verzeichnis backend befindet:
./backendBuild-Befehl (optional)
Wenn Ihre Node.js-Anwendung einen Kompilierungsschritt vor der Ausführung benötigt, geben Sie einen Build-Befehl in das dafür vorgesehene Feld ein. Dieser Befehl wird automatisch vor dem Start der Anwendung ausgeführt.
Zum Beispiel können Sie angeben:
npm install && npm run buildoder, wenn Sie yarn :
yarn install && yarn buildverwenden, wenn Ihr Projekt keine Kompilierung benötigt, kann dieses Feld leer gelassen werden.
Start-Befehl
Der Start-Befehl entspricht dem Befehl, der zum Starten Ihrer Anwendung verwendet wird. Er muss identisch mit dem sein, den Sie lokal verwenden, um das Projekt auszuführen.
Zum Beispiel können Sie angeben:
node index.jsnpm startoder
yarn startDieser Befehl muss es ermöglichen, den Server oder den Einstiegspunkt Ihrer Anwendung direkt zu starten, wie er in Ihrer Entwicklungsumgebung definiert ist.
Listening Port
Ihre Anwendung muss auf einem bestimmten Port “hören”, der im Manager definiert ist. Dieser Port wird Ihrer Anwendung über eine Umgebungsvariable PORT übermittelt.
Beispiel in Ihrem Node.js-Code:
const port = process.env.PORT || 8080;
app.listen(port, () => {
console.log(`Anwendung gestartet auf Port ${port}`);
});Stellen Sie sicher, dass dieser Port in Ihrem Code berücksichtigt wird.
Node.js-Version
Sie können die Node.js-Version auswählen, die Ihre Website verwenden soll. Es wird empfohlen, eine stabile und stets unterstützte Version zu verwenden, um die Sicherheit und Kompatibilität Ihrer Anwendung zu gewährleisten.
ACHTUNG: Diese Methode ändert die Kerndateien von Magento, um die Überprüfung der erweiterten Berechtigungen (triggers, routines) zu deaktivieren, was eine riskante Praxis in Bezug auf Sicherheit und Stabilität ist und zukünftige Updates erschwert.
Heute ist Magento (nun Adobe Commerce oder Magento Open Source) eine moderne Plattform, die eine Serverumgebung erfordert, die ihren strengen Voraussetzungen entspricht. Die aktuelle stabile Version ist oft die 2.4.8 oder eine neuere Patch-Version. Diese Versionen erfordern zwingend aktuelle Technologien wie PHP 8.2/8.3, MySQL 8.0/MariaDB 10.6 und eine dedizierte Suchmaschine wie Elasticsearch oder OpenSearch.
Für jede neue Installation oder Migration wird dringend empfohlen, die neueste stabile Version ohne jegliche manuelle Änderung des Quellcodes zu verwenden. Sie müssen einen leistungsfähigen Hosting-Typ (Cloud-Server oder VPS/Dediziert) wählen, der den Zugriff auf alle erforderlichen Systemberechtigungen für einen sicheren und stabilen Betrieb garantiert.
Vermeiden Sie unbedingt die Verwendung des folgenden alten Patches. Beachten Sie, dass dieser Patch bei einer Installation auf einem Cloud-Server unnötig ist.
Dieser Leitfaden erklärt, wie Sie die Magento-Installation patchen können, damit diese auf einem gemeinsamen Hosting von Infomaniak durchgeführt werden kann, selbst ohne Berechtigungen vom Typ triggers & routines.
Behebung von Magento 2 Installationsproblemen
Bearbeiten Sie die Datei DbValidator.php:
--- setup/src/Magento/Setup/Validator/DbValidator.php.orig 2019-04-11 17:01:45.154767893 +0200
+++ setup/src/Magento/Setup/Validator/DbValidator.php 2019-04-13 21:37:02.560386985 +0200
@@ -150,12 +150,8 @@
'ALTER',
'CREATE TEMPORARY TABLES',
'LOCK TABLES',
- 'EXECUTE',
'CREATE VIEW',
- 'SHOW VIEW',
- 'CREATE ROUTINE',
- 'ALTER ROUTINE',
- 'TRIGGER'
+ 'SHOW VIEW'
];
// check global privilegesBei SOAP/PHPfpm-Fehlern
Je nach verwendeter Magento-Version funktioniert die Funktion soap nicht korrekt und kann die folgende Fehlermeldung zurückgeben: «Uncaught SoapFault exception: [Client] looks like we got no XML document».
Das Problem liegt nicht an einer falschen Serverkonfiguration, sondern an einem schlechten Design von Magento, das den Fall der Ausführung von PHP in einer FPM-Umgebung nicht berücksichtigt. Daher enthalten die von Magento generierten SOAP-Anfragen doppelte Header (nicht konform mit der SOAP-Spezifikation) und verursachen einen Fehler.
Nehmen Sie Kenntnis von dieser Lösung (nicht von Infomaniak entwickelt).
Dieser Leitfaden erklärt, wie Sie den Wert max_children auf einem Cloud-Server erhöhen, um die Anzahl der gleichzeitig verwendbaren PHP-Prozesse für Ihre Website zu erhöhen. Dies ist sehr nützlich, um Probleme mit dem endlosen Laden von Seiten Ihrer Website zu beheben.
Vorwort
- Standardmäßig ist die Grenze von
max_childrenauf allen Hostings auf 20 festgelegt.- Obwohl es möglich ist, diesen Wert über den Infomaniak Manager zu erhöhen, wird die Grenze von
max_childrenautomatisch an die Konfiguration Ihres Cloud-Servers angepasst. - Um diese Grenze auf einem Shared Hosting zu erhöhen, migrieren Sie zu einem Cloud-Server.
- Obwohl es möglich ist, diesen Wert über den Infomaniak Manager zu erhöhen, wird die Grenze von
- Um zu verstehen, wie Sie die benötigten
max_childrenam genauesten berechnen können, lesen Sie diesen Artikel zu diesem Thema.
Erhöhung des Wertes max_children
Voraussetzungen
- Stellen Sie sicher, dass Sie über die notwendigen Ressourcen auf dem Cloud-Server verfügen.
- Stellen Sie sicher, dass alle Ressourcen des Cloud-Servers nicht verwendet werden; wenn sich herausstellt, dass diese vollständig verwendet werden, hat die Erhöhung des Wertes
max_childrenkeine Wirkung (Ressourcen des Cloud-Servers ändern). - Überwachen Sie die Ressourcen Ihres Servers, falls die Ressourcen Ihres Servers erreicht sind, ist es notwendig, die Optimierung der Prozesse und Ihrer Website zu überprüfen, bevor Sie die Erhöhung des Wertes
max_childrenin Betracht ziehen. - Überprüfen Sie die PHP-Fehlerberichte aus dem Ordner
/ik-logs(Master-Process-PHP-Protokolle - Dateiname: php-fpm.log), um zu überprüfen, ob die Grenze "max_children" überschritten wurde... Beispiel für einen Fehler:[05-Jul-2024 09:08:58] WARNING: [pool www.infomaniak.ch] server reached max_children setting (20), consider raising it
Um auf die Verwaltung der PHP/Apache-Parameter der Website zuzugreifen, für die der Wert max_children auf einem Cloud-Server erhöht werden soll, lesen Sie diesen anderen Leitfaden.
Sie können insbesondere…
- … einen neuen Wert für
max_childrenauswählen:
Vergessen Sie nicht, die Änderungen am Ende der Seite zu speichern.
Grenzen je nach Server
Grenze der max_children je nach Ressourcen des Cloud-Servers:
| Cloud-Server-Konfiguration | max_children |
|---|---|
| 2 CPU / 6 GB RAM | 20 |
| 4 CPU / 12 GB RAM | 40 |
| 6 CPU / 18 GB RAM | 60 |
| 8 CPU / 24 GB RAM | 80 |
| 12 CPU / 36 GB RAM | 120 |
| 16 CPU / 48 GB RAM | 160 |
| 24 CPU / 72 GB RAM | 240 |
| 32 CPU / 96 oder 128 GB RAM | 320 |
Diese Anleitung erklärt, wie Sie den Wert der Direktive php_value include_path ändern.
Include_path ändern
Wie jeder andere PHP-Parameter wird include_path in der Datei .user.ini definiert.
Hier ist ein Beispiel für einen Pfad, der in der Datei .user.ini verwendet werden kann:
include_path = .:/home/clients/123456789a12345b12fc345d/web/www.domainetest.abc/public/abc/includeNehmen Sie sich diese weitere Anleitung zum Thema phpinfo zu Hilfe, um zu überprüfen, ob Ihre neue Direktive berücksichtigt wird.
Das Apache-Modul mod_userdir ist nicht verfügbar.
Diese Anleitung richtet sich an Sie, weil Sie sich für Infomaniak als Hosting-Anbieter entschieden haben (oder dies tun werden). Diese Entscheidung ist nicht ohne Bedeutung. Sie sind umweltbewusst und möchten so viel wie möglich tun, um den CO2-Fußabdruck im Internet zu reduzieren.
Infomaniak bedankt sich bereits jetzt dafür, dass Sie diesen Hoster, der sich um den Planeten kümmert gewählt haben und die untenstehenden Möglichkeiten erkunden, um in der ökologischen Gestaltung Ihrer Webumgebung voranzukommen.
Warum handeln?
Websites consume energy to function, and the use of the Internet is one of the main causes of the increase in greenhouse gas emissions.
Neben der Wahl eines ethischen Hosting-Anbieters, der erneuerbare Energiequellen für seine Server nutzt, können Sie auch dazu beitragen, diese Emissionen zu verringern, indem Sie umweltfreundliche Praktiken bei der Gestaltung und Verwaltung Ihrer Websites und Mail-Dienste anwenden.
Wie kann man handeln?
Wie oben erwähnt, handelt Infomaniak auf verschiedenen Ebenen, einschließlich des Support-Teams: Es wird Sie bei der Auswahl von Dienstleistungen unterstützen, die Ihren Bedürfnissen entsprechen und gleichzeitig die Umwelt schützen. Es sammelt Ihr Feedback, um unsere Praktiken zu optimieren und sich von Ihren Erfahrungen inspirieren zu lassen, und kommuniziert die Umweltfragen im Bereich Hosting, um gute digitale Praktiken zu fördern.
Auf Ihrer Ebene gibt es mehrere Möglichkeiten, Ihren CO2-Fußabdruck im Internet zu reduzieren:
Den Energieverbrauch minimieren
Um den Energieverbrauch der Server und der Benutzercomputer zu reduzieren: Optimieren Sie Bilder, verwenden Sie Web-Schriftarten, verwenden Sie minimierte Skripte und Datendekompressionstechnologien. Einfache Designs können helfen, den Bandbreitenbedarf zu reduzieren.
Bieten Sie Optionen an, um den Datenverbrauch zu reduzieren, indem Sie Bilder mit niedrigerer Qualität verwenden oder Videos in verschiedenen Qualitäten zum Streaming anbieten, um Tracker und Werbung zu deaktivieren, die viel Daten verbrauchen.
Für gute Praktiken, die sich an WordPress richten, besuchen Sie die GreenIT-Karten.
Nachhaltige Technologien nutzen
Nachhaltige Technologien wie HTML5, CSS3 und JavaScript sind umweltfreundlicher.
Nachhaltigkeit fördern
Sensibilisieren Sie die Benutzer für die Umweltauswirkungen der Internet-Technologien und laden Sie sie ein, umweltverantwortliche Praktiken zu übernehmen. Inklusive der Lösung WordPress.
Und was ist mit der E-Mail-Kommunikation?
Die gleichen Reflexe können bei Ihrer E-Mail-Kommunikation angewendet werden:
- Verwenden Sie eine umweltfreundliche Signatur, die die Empfänger dazu einlädt, ihren ökologischen Fußabdruck zu verringern, indem sie umweltfreundliche Technologien nutzen oder umweltfreundliche Praktiken anwenden…
- Verwenden Sie umweltfreundliche E-Mail-Management-Tools, die erneuerbare Energiequellen nutzen und umweltfreundliche Richtlinien zur Energieverbrauch haben…
- Verwenden Sie E-Mails im Klartextformat anstelle von HTML-E-Mails, da HTML-E-Mails in der Regel mehr Energie zum Anzeigen verbrauchen…
- Anlagen im PDF-Format anstatt schwererer Formate verwenden…
- Abmeldemöglichkeiten nutzen, um unerwünschte E-Mails zu vermeiden…
- Verwenden Sie Tracking-Tools, um herauszufinden, wie viele Personen Ihre E-Mails öffnen und um zu wissen, ob Sie zu viele oder zu wenige senden…
All diese Maßnahmen können schrittweise umgesetzt und an die jeweilige Website angepasst werden. Es gibt keine einzige Lösung.
Überwachen Sie regelmäßig die Energieverbrauchsstatistiken, um die ökologische Leistung der Website kontinuierlich zu verbessern. Infomaniak wird in Zukunft Tools in dieser Richtung anbieten, aber bis dahin können Sie https://greenframe.io verwenden.
Das Schreiben in die Verzeichnisse /etc und /lib ist aus Sicherheitsgründen deaktiviert.