Wissensdatenbank
1 000 FAQs, 500 Anleitungen und erläuternde Videos. Hier gibt es nur Lösungen!
Dieser Leitfaden beschreibt die Beschränkungen hinsichtlich der Anzahl der gleichzeitig zulässigen Verbindungen zu den MySQL-Datenbanken der Webhosting-Angebote.
Grenzwerte für gleichzeitige MySQL-Verbindungen
Um die Stabilität, Sicherheit und Reaktionsfähigkeit des Servers für alle Benutzer zu gewährleisten, werden durch das System Beschränkungen für gleichzeitige Verbindungen festgelegt.
Für jeden Datenbankbenutzer bei Infomaniak ist die maximale Anzahl gleichzeitiger MySQL-Verbindungen auf 38 begrenzt.
Dieses Limit verhindert eine Überlastung der gemeinsam genutzten Ressourcen. Wird dieses Limit überschritten, wird der Zugriff vorübergehend blockiert, und es können Fehlermeldungen wie Benutzer hat bereits mehr als 'max_user_connections' aktive Verbindungen oder Zu viele Verbindungen angezeigt werden.
In der Praxis wird dieses Limit selten erreicht. Falls erforderlich, ist es durchaus möglich, die Last zu verteilen, indem Sie separate MySQL-Benutzer für die verschiedenen Skripte oder Dienste Ihrer Website erstellen.
Keine Begrenzung der Verbindungsanzahl pro Stunde
Infomaniak setzt keine Beschränkungen für die Anzahl der Anfragen pro Stunde.Einstellungen wie MAX_QUERIES_PER_HOUR oder MAX_CONNECTIONS_PER_HOUR sind nicht aktiviert.
Im Gegensatz zu einigen konkurrierenden Angeboten werden Sie keine Fehlermeldungen bezüglich überschrittener Ressourcen, wie z. B. SQL Error: 1226, aufgrund eines hohen stündlichen Anfragevolumens erhalten.
Mehr erfahren
Link zu dieser FAQ: https://faq.infomaniak.com/471
War diese FAQ nützlich?
Dieser technische Leitfaden beschreibt die Ressourcenbeschränkungen für die Webhosting-Angebote von Infomaniak. Um die Ursache für Script-Unterbrechungen zu verstehen, ist es wichtig, zwischen der Echtzeit (Uhrzeit) und der Rechenzeit (Prozessor) zu unterscheiden.
1. MySQL-Verbindungszeit (I/O)
Grenzwert: 30 Sekunden (tatsächliche Zeit)
Dieser Grenzwert entspricht der absoluten, tatsächlich verstrichenen Zeit (gemessen mit einer Stoppuhr). Er betrifft die Kommunikation zwischen PHP und dem Datenbankserver (MySQL/MariaDB).
Sobald eine Verbindung hergestellt wurde, räumt der Datenbankserver maximal 30 Sekunden Zeit ein, um die Anfrage zu empfangen, auszuführen und die Ergebnisse zurückzugeben. Wenn dieser Zeitraum überschritten wird (oft aufgrund einer schlecht optimierten SQL-Abfrage), trennt der MySQL-Server die Verbindung abrupt. Dies führt in der Regel zu dem Fehler MySQL server has gone away.
2. PHP-Verarbeitungszeit (CPU)
Limit: 10 Sekunden CPU-Zeit
Diese Begrenzung bezieht sich ausschließlich auf die Rechenleistung, die der Webserver für die Ausführung von PHP-Code benötigt.
Es ist wichtig zu beachten, dass die Wartezeit nicht mitgezählt wird. Wenn PHP auf eine Antwort von der Datenbank wartet, pausiert es und verbraucht kaum CPU-Zeit. Daher wird ein Skript nur dann vom Webserver unterbrochen, wenn es über einen kumulierten Zeitraum von mehr als 10 Sekunden intensive Berechnungen durchführt (komplexe Schleifen, Kryptografie, Dateiverarbeitung).
Zusammenwirken der beiden Limits
Um die Stabilität der Anwendung zu gewährleisten, muss jede Operation gleichzeitig diese beiden unterschiedlichen Bedingungen erfüllen:
- Die Anwendung hat insgesamt 30 Sekunden Zeit, um mit der Datenbank zu interagieren (Netzwerk-Latenz + SQL-Ausführung).
- Die Anwendung verfügt über 10 Sekunden reine Rechenzeit zur Verarbeitung der empfangenen Daten.
Beispiel für eine korrekte Funktionsweise: Ein Skript, das 25 Sekunden auf eine komplexe Antwort von MySQL (I/O) wartet und das Ergebnis dann 2 Sekunden lang verarbeitet (CPU), funktioniert einwandfrei, da es keines der beiden individuellen Limits überschritten hat, auch wenn die Gesamtzeit 27 Sekunden beträgt.
Link zu dieser FAQ: https://faq.infomaniak.com/481
War diese FAQ nützlich?
Diese Anleitung erklärt, wie Sie den Datenverkehr eines Alias-Domainnamens (Synonym) auf Ihre Hauptdomain umleiten oder erzwingen können, dass die Hauptdomain in der Adressleiste des Browsers angezeigt wird.
Verhindern von doppelten Inhalten (duplicate content)
Nehmen wir an, Ihre Website wird unter der Hauptdomain example.com gehostet und Sie haben eine Alias-Domain wie example-alias.com konfiguriert.
Standardmäßig wird die eingegebene URL im Browser des Besuchers angezeigt, wenn er eine der beiden Adressen eingibt. Dies kann zu doppelten Inhalten (Duplicate Content) führen, was sich negativ auf das Suchmaschinenranking (SEO) auswirkt.
Um dies zu vermeiden, können Sie eine Weiterleitung erzwingen: Wenn ein Besucher example-alias.com eingibt, wird er automatisch zu example.com weitergeleitet.
Diese Konfiguration erfolgt in der Datei .htaccess, die sich im Stammverzeichnis Ihres Hostings befindet (in der Regel im Ordner /web über Ihren FTP-Zugang). Wenn diese Datei noch nicht vorhanden ist, müssen Sie sie erstellen.
Fügen Sie anschließend die folgenden Direktiven in die Datei ein:
RewriteEngine On
# Erzwingen von HTTPS und Weiterleitung zur kanonischen Domain
RewriteCond %{HTTP:X-Forwarded-Proto} !https [OR]
RewriteCond %{HTTP_HOST} !^example\.com$ [NC]
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]Passen Sie den obigen Code nach Bedarf an:
- Ersetzen Sie
example.comdurch Ihren Hauptdomainnamen und dessen Erweiterung (.com, .org, .ch usw.). Fügen Siewww.vor Ihrer Domain hinzu, wenn Sie die Anzeige der Subdomainwwwerzwingen möchten. - Wenn eine Redirektionsschleife auftritt, können Sie die Protokollbedingung durch
RewriteCond %{HTTPS} offersetzen (insbesondere, wenn Ihr Hosting keinen Reverse-Proxy verwendet).
Weitere Informationen finden Sie in der Dokumentation zu automatischen Weiterleitungen zu HTTPS.
Link zu dieser FAQ: https://faq.infomaniak.com/482
War diese FAQ nützlich?
Dieser Leitfaden behandelt die Synchronisierung von Servern über das NTP-Protokoll (Network Time Protocol) und die Konfiguration der Zeitzone auf den Infomaniak-Servern.
Präzise Server-Synchronisierung über NTP
Die Server von Infomaniak sind alle über das NTP-Protokoll synchronisiert. Das Unternehmen stellt eigene, öffentlich zugängliche Stratum-1-NTP-Server für eine flexible Nutzung bereit.
Um diese Server in Ihre Einstellungen zu integrieren, verwenden Sie den folgenden Eintrag: pool.ntp.infomaniak.ch.
Die Standardeinstellung für die Zeitzone ist UTC. Die PHP-Funktionen sind jedoch so konzipiert, dass sie je nach Bedarf verschiedene Zeitzonen berücksichtigen.
Um die Zeitzone in Ihren PHP-Skripten anzupassen, verwenden Sie die Funktion date_default_timezone_set('UTC').
MySQL: Besonderheiten bei der Verarbeitung von Zeitdaten
Die Infomaniak-Infrastruktur unterstützt Funktionen, die eine präzise und effiziente Verarbeitung von Zeitdaten ermöglichen, wobei Zeitzonen berücksichtigt werden, was für viele moderne Anwendungen entscheidend ist:
- MySQL verwendet eine Datenbank für Zeitzonen, um Informationen über Zeitzonen zu speichern und zu verwalten.
- Die Tabelle
mysql.time_zoneenthält die Daten der Zeitzonen, einschließlich Informationen über Zeitverschiebungen, Zeitzonennamen usw. - Die Funktion CONVERT_TZ wird verwendet, um in MySQL eine Zeit von einer Zeitzone in eine andere umzuwandeln. Die Syntax lautet:
CONVERT_TZ(dt, from_tz, to_tz), wobei:dtdas Datum/die Uhrzeit ist, die umgewandelt werden soll.from_tzdie Quellzeitzone ist.to_tzdie Zielzeitzone ist.
- Beispiel:
CONVERT_TZ('2024-05-14 12:00:00', 'UTC', 'America/New_York')wandelt die Zeit 12:00:00 UTC in die lokale Zeit in New York um.
Link zu dieser FAQ: https://faq.infomaniak.com/487
War diese FAQ nützlich?
Dieser Leitfaden hilft Ihnen bei der Behebung eines Fehlers vom Typ „Ungültige Abfrage: Der MySQL-Server ist nicht mehr verfügbar“.
Einleitung
- Diese Art von Fehler entsteht oft dadurch, dass eine MySQL-Verbindung geöffnet bleibt, ohne dass innerhalb eines bestimmten Zeitraums Anfragen gesendet werden, woraufhin die Verbindung geschlossen wird: http://dev.mysql.com/doc/refman/5.7/en/gone-away.html
- Die Variablen
wait_timeoutundinteractive_timeout, die diese Trennung steuern, sind auf 30 Sekunden eingestellt: http://dev.mysql.com/doc/refman/5.0/en/communication-errors.html
Lösungen
Um den Fehler „MySQL-Server ist nicht erreichbar“ zu vermeiden, gibt es verschiedene mögliche Ansätze:
Automatische Überprüfung und Wiederherstellung der Verbindung
Bevor Sie eine Anfrage ausführen, wird empfohlen, zu prüfen, ob die MySQL-Verbindung noch aktiv ist. Wenn die Verbindung unterbrochen wurde, können Sie sie automatisch wiederherstellen, bevor Sie mit Ihrer Anfrage fortfahren. Hier ist ein Beispiel in PHP:
if (!mysqli_ping($connexion)) {
mysqli_close($connexion);
$connexion = mysqli_connect($host, $user, $password, $database);
}Die Funktion mysqli_ping() prüft, ob die Verbindung noch gültig ist. Wenn dies nicht der Fall ist, schließt das Skript die Verbindung und öffnet eine neue.
Regelmäßiges Senden eines „Ping“
Eine andere Möglichkeit besteht darin, ein Skript auszuführen, das regelmäßig einen „Ping“ an die Datenbank sendet, um die Verbindung aktiv zu halten. Sie könnten beispielsweise einen geplanten Task (Cronjob) erstellen, der in regelmäßigen Abständen eine leichte Anfrage, wie z. B. SELECT 1;, sendet.
Anpassen der MySQL-Einstellungen (Cloud-Server)
Bei einem Cloud-Server können Sie die Werte der Variablen wait_timeout und interactive_timeout im MySQL-Menü Ihres Servers erhöhen, um die Dauer der Verbindung zu verlängern, bevor sie geschlossen wird.
Link zu dieser FAQ: https://faq.infomaniak.com/499
War diese FAQ nützlich?
Dieser Leitfaden erläutert die Rolle der Datei browscap.ini, die von PHP verwendet wird, um bestimmte Merkmale eines Webbrowsers (Name, Version, Betriebssystem und Fähigkeiten) anhand seines HTTP-Headers User-Agent zu identifizieren.
Die Verwendung von browscap.ini dient heutzutage hauptsächlich dazu, die Kompatibilität mit bestehenden Anwendungen zu gewährleisten. Für neue Entwicklungen werden in der Regel modernere Methoden bevorzugt.
Verwendung mit der Funktion get_browser()
Die native PHP-Funktion get_browser() benötigt Zugriff auf eine aktuelle browscap.ini-Datei, um die Eigenschaften des Browsers zu identifizieren, der die Anfrage gestellt hat.
Bei den Webhosting-Angeboten von Infomaniak befindet sich diese Datei in der Regel unter folgendem Pfad:
/opt/php/lib/php/browscap.iniFalls erforderlich, können Sie den Inhalt mit dem folgenden Skript überprüfen:
<?php
header('Content-Type: text/plain');
$file = '/opt/php/lib/php/browscap.ini';
if (file_exists($file)) {
echo file_get_contents($file);
} else {
echo 'Datei nicht gefunden.';
}Aufgrund seiner Größe und der Kosten für das Laden kann die Verwendung von browscap.ini die Leistung von Anwendungen beeinträchtigen, die auf get_browser() zurückgreifen.
Empfohlene Alternativen
Für neue Projekte ist es in der Regel besser, Lösungen zu verwenden, die besser auf die aktuellen Praktiken der Webentwicklung zugeschnitten sind:
- PHP-Bibliotheken, die mit Composer installiert werden, wie z. B.
matomo/device-detectoroderwhichbrowser/parser, die eine regelmäßig aktualisierte und umfassendere Erkennung von Browsern und Geräten bieten. - User-Agent Client Hints (UA-CH), sofern der Browser diese unterstützt, um strukturierte Informationen über die in den aktuellen HTTP-Standards vorgesehenen Mechanismen zu erhalten.
- Funktionserkennung (Feature Detection), indem direkt geprüft wird, ob eine Funktion verfügbar ist (z. B. in JavaScript oder mit der CSS-Regel
@supports), anstatt das Verhalten anhand des verwendeten Browsers abzuleiten.
Link zu dieser FAQ: https://faq.infomaniak.com/505
War diese FAQ nützlich?
Dieser Leitfaden bezieht sich auf Django, ein Open-Source-Webentwicklungs-Framework in Python, das besonders für seine Robustheit und die schnelle Entwicklungszeit bekannt ist.
Installation von Django
Voraussetzungen
- Ein geeignetes Hosting:
- Für die Bereitstellung einer Python-Anwendung, die einen kontinuierlich laufenden Anwendungsserver benötigt, ist ein Standard-Webhosting nicht geeignet.
- Es ist ein vollständiger Zugriff auf den Server über SSH erforderlich.
- Technische Voraussetzungen:
- Python 3 muss auf dem Server installiert sein, ebenso wie der Paketmanager
pip.
- Python 3 muss auf dem Server installiert sein, ebenso wie der Paketmanager
- Grundkenntnisse:
- Vertrautheit mit der Befehlszeilenschnittstelle (CLI) unter Linux und der Verwaltung von Python-Umgebungen (z. B.
venv).
- Vertrautheit mit der Befehlszeilenschnittstelle (CLI) unter Linux und der Verwaltung von Python-Umgebungen (z. B.
Hier sind die allgemeinen Schritte zur Einrichtung Ihrer Umgebung auf Ihrem Server:
Es ist erforderlich, Django auf Web-Angeboten zu installieren, die eine vollständige Kontrolle über die Ausführungsumgebung gewährleisten, wie z. B. Cloud-VPS / VPS Lite: entdecken Sie die verschiedenen Webhosting-Angebote von Infomaniak.
- Melden Sie sich per SSH bei Ihrem VPS-Server an.
- Erstellen und aktivieren Sie eine virtuelle Umgebung, die Ihrem Projekt gewidmet ist, um Ihre Abhängigkeiten zu isolieren (z. B.
python3 -m venv my_environnement, gefolgt vonsource my_environnement/bin/activate). - Installieren Sie das Framework über den Paketmanager:
pip install django. - Initialisieren Sie Ihr neues Projekt mit dem Befehl:
django-admin startproject name_of_project.
Bereitstellung
Achtung: Der in Django integrierte Entwicklungsserver (der über runserver gestartet wird) ist nicht für eine Produktionsumgebung konzipiert. Um Ihre Website sicher im Internet auf Ihrem Infomaniak-VPS bereitzustellen, müssen Sie einen Anwendungsserver (wie Gunicorn oder uWSGI) hinter einem Reverse Proxy wie Nginx oder Apache konfigurieren.
Link zu dieser FAQ: https://faq.infomaniak.com/516
War diese FAQ nützlich?
Diese Anleitung hilft Ihnen, die öffentliche IP-Adresse Ihres Geräts zu finden, was beispielsweise bei bestimmten Supportanfragen nützlich sein kann.
Anzeige der öffentlichen IP-Adresse auf dem verbundenen Gerät
Klicken Sie hier, um die öffentliche IP-Adresse Ihres Geräts im Format IPv4 und IPv6 zu erhalten.
Alternative Methoden
Besuchen Sie ipinfo.io oder ifconfig.me.
… unter macOS
- Führen Sie über eine
Terminal-Anwendung (Befehlszeilenschnittstelle,CLI / Command Line Interface) auf Ihrem Gerät den Befehlcurl ifconfig.meaus und drücken Sie Eingabe. - Die angezeigte Adresse ist die öffentliche IP-Adresse des Computers.
Beachten Sie, dass sich diese Adresse in regelmäßigen Abständen ändern kann, insbesondere wenn der Router neu gestartet wird oder der Internetdienstanbieter eine dynamische IP-Adresszuweisung verwendet.
Um die Suche nach der öffentlichen IP-Adresse zu automatisieren, verwenden Sie Befehle oder Skripte, die Dienste wie api.ipify.org abfragen...
Link zu dieser FAQ: https://faq.infomaniak.com/528
War diese FAQ nützlich?
Diese Anleitung erklärt, wie Sie PHPMailer mit den Webhosting-Diensten von Infomaniak verwenden, um E-Mails von einer Website aus zu versenden.
⚠ ACHTUNG ⚠
Infomaniak garantiert die Konformität seiner Dienste mit den Standardprotokollen (IMAP, S3 usw.), bietet aberkeine zusätzliche Unterstützung für externe Dienste oder Software, da deren Konfiguration je nach Anbieter oder Herausgeber variieren kann.Dieses Handbuch dient lediglich als Richtlinie, und die Umsetzung liegt in Ihrer Verantwortung (siehe: Supportrichtlinien / Art. 11.9 der AGB). Bei Bedarf kann Sie eine qualifizierte Fachkraft unterstützen.
Einleitung
- PHPMailer ist eine PHP-Bibliothek, mit der E-Mails von einer Website aus erstellt und versendet werden können, insbesondere über SMTP.
- Sie ermöglicht unter anderem das Versenden von Nachrichten im HTML-Format, das Hinzufügen einer alternativen Textversion, die Verwaltung von Anhängen und die Verwendung einer SMTP-Authentifizierung.
- Für den Versand authentifizierter E-Mails über SMTP muss die von der Website verwendete PHP-Umgebung mit einer aktuellen, verschlüsselten Verbindung kompatibel sein, insbesondere mit TLS 1.2 oder höher.
- Eine zu alte Version von PHP oder der von PHP verwendeten OpenSSL-Bibliothek kann zu einem Verbindungs- oder Authentifizierungsfehler führen, selbst wenn die E-Mail-Adresse und das Passwort korrekt sind.
- Verwenden Sie für diese Art von Versand nicht PHP 5.3/5.4; verwenden Sie eine aktuelle und unterstützte PHP-Version.
- Bei der authentifizierten SMTP-Übertragung muss die als Absender verwendete Adresse mit der für die SMTP-Authentifizierung verwendeten E-Mail-Adresse übereinstimmen.
PHPMailer installieren
Um PHPMailer zu verwenden, installieren Sie die Bibliothek in den Dateien Ihrer Website.
- Laden Sie PHPMailer von seinem offiziellen Repository herunter oder installieren Sie es mit Composer, falls Ihr Projekt dies verwendet.
- Kopieren Sie die PHPMailer-Dateien in ein Verzeichnis Ihrer Website per FTP.
Laden Sie die benötigten Dateien in Ihr PHP-Skript hoch und passen Sie den Pfad entsprechend dem gewählten Speicherort an:
use PHPMailer\PHPMailer\PHPMailer; use PHPMailer\PHPMailer\Exception; require **DIR** . '/PHPMailer/src/Exception.php'; require **DIR** . '/PHPMailer/src/PHPMailer.php'; require **DIR** . '/PHPMailer/src/SMTP.php';
Konfigurieren Sie den SMTP-Versand mit Infomaniak
Verwenden Sie die folgenden authentifizierten SMTP-Einstellungen:
- SMTP-Server:
mail.infomaniak.com - Port:
465 - Verschlüsselung:
SMTPS/ SSL-TLS - Authentifizierung: erforderlich
- Benutzername: die vollständige E-Mail-Adresse
- Passwort: Das Passwort der verwendeten E-Mail-Adresse
Beispiel für eine vollständige Konfiguration:
<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require **DIR** . '/PHPMailer/src/Exception.php';
require **DIR** . '/PHPMailer/src/PHPMailer.php';
require **DIR** . '/PHPMailer/src/SMTP.php';
$mail = new PHPMailer(true);
try {
// Configuration SMTP
$mail->isSMTP();
$mail->Host = 'mail.infomaniak.com';
$mail->SMTPAuth = true;
$mail->Username = '[sender@domain.xyz](mailto:sender@domain.xyz)';
$mail->Password = 'mot_de_passe_de_l_adresse_mail';
$mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;
$mail->Port = 465;
$mail->CharSet = 'UTF-8';
```
// Expéditeur
// L'adresse doit correspondre à celle utilisée pour l'authentification SMTP.
$mail->setFrom('sender@domain.xyz', 'Nom du site');
// Destinataire
$mail->addAddress('recipient@example.com');
// Adresse de réponse facultative
$mail->addReplyTo('sender@domain.xyz', 'Nom du site');
// Contenu du message
$mail->isHTML(true);
$mail->Subject = 'Message envoyé depuis le site';
$mail->Body = '<p>Contenu HTML du message.</p>';
$mail->AltBody = 'Contenu texte du message.';
$mail->send();
echo 'Message envoyé';
```
} catch (Exception $e) {
echo 'Le message n'a pas pu être envoyé. Erreur: ' . htmlspecialchars($mail->ErrorInfo);
}Wenn Ihre Anwendung die Verwendung von Port 587 erfordert, verwenden Sie STARTTLS:
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->Port = 587;
PHP-Version und TLS-Kompatibilität überprüfen
Für die authentifizierte SMTP-Übertragung ist eine aktuelle, verschlüsselte Verbindung erforderlich. Wenn die Website eine zu alte PHP-Version verwendet, z. B. PHP 5.3, oder eine zu alte OpenSSL-Bibliothek, kann PHPMailer vor oder während der Authentifizierung fehlschlagen. Die resultierenden Fehlermeldungen können irreführend sein, z. B.:
SMTP connect() failedAuthentifizierung fehlgeschlagenstream_socket_enable_crypto()- ein Authentifizierungsfehler, obwohl das Passwort korrekt ist
Überprüfen Sie in diesem Fall Folgendes:
- die PHP-Version, die von der Website verwendet wird;
- die OpenSSL-Version, die von PHP verwendet wird;
- die in Ihrem Projekt verwendete PHPMailer-Version;
- die Übereinstimmung zwischen dem SMTP-Port und der gewählten Verschlüsselung.
Für eine zuverlässige Konfiguration verwenden Sie eine aktuelle PHP-Version, die mit TLS 1.2 oder höher kompatibel ist, sowie eine aktuelle Version von PHPMailer. Lesen Sie bei Bedarf diese Anleitungen:
- PHP-Version einer Website ändern
- Ein PHP-Problem im Zusammenhang mit einer veralteten Version beheben
- Technische Informationen der Website anzeigen
Fehler „Absender stimmt nicht überein“ beheben
Der Fehler Sender mismatch SMTP code: 550 Additional SMTP info: 5.7.1 kann auftreten, wenn die als Absender verwendete Adresse nicht mit der E-Mail-Adresse übereinstimmt, die für die SMTP-Authentifizierung verwendet wird. Ein Beispiel, das vermieden werden sollte:
$mail->Username = 'sender@domain.xyz';
$mail->setFrom('another-address@domain.xyz', 'Nom du site');In diesem Beispiel authentifiziert sich das Skript mit sender@domain.xyz, versucht aber, die Nachricht mit einer anderen Absenderadresse zu versenden.
Verwenden Sie dieselbe E-Mail-Adresse für die SMTP-Authentifizierung und als Absender:
$mail->Username = 'sender@domain.xyz';
$mail->setFrom('sender@domain.xyz', 'Nom du site');Der Absendernamen kann angepasst werden, die E-Mail-Adresse muss jedoch mit dem verwendeten SMTP-Konto übereinstimmen.
Beispiel für ein Kontaktformular
Wenn ein Besucher seine E-Mail-Adresse in einem Formular angibt, verwenden Sie diese nicht als Absenderadresse der Nachricht. Verwenden Sie stattdessen die authentifizierte E-Mail-Adresse als Absender und fügen Sie die Adresse des Besuchers als Antwortadresse hinzu.
Beispiel:
$mail->Username = 'sender@domain.xyz';
$mail->setFrom('sender@domain.xyz', 'Formulaire du site');
$mail->addReplyTo($email_visiteur);Diese Konfiguration ermöglicht es Ihnen, auf Anfragen von Besuchern über Ihr E-Mail-Programm zu antworten, ohne die Nachricht mit einer nicht autorisierten Absenderadresse zu versenden.
Debug-Modus vorübergehend aktivieren
Im Fehlerfall aktivieren Sie vorübergehend den Debug-Modus von PHPMailer, um detailliertere Informationen zur SMTP-Verbindung zu erhalten:
$mail->SMTPDebug = 2;
$mail->Debugoutput = 'html';Deaktivieren Sie diesen Modus nach Ihren Tests, um zu verhindern, dass technische Informationen für die Besucher der Website angezeigt werden.
Mehr erfahren
Link zu dieser FAQ: https://faq.infomaniak.com/576
War diese FAQ nützlich?
Dieser Leitfaden behandelt die Verwendung der Technologie Java, die insbesondere im Hinblick auf den RAM-Speicherverbrauch nicht mit den Anforderungen der Shared-Hosting-Angebote von Infomaniak kompatibel ist. Java-Anwendungen sind oft ressourcenintensiv, was die Leistung und Stabilität der Server beeinträchtigen kann, die von mehreren Benutzern gemeinsam genutzt werden.
Unterstützung ist auf Client-seitige Applets beschränkt
Auf Shared-Servern werden nur clientseitige Java-Applets unterstützt, d. h. solche, die im Webbrowser des Benutzers ausgeführt werden. Diese Applets benötigen keine großen Serverressourcen und verursachen daher nicht die gleichen Probleme wie serverseitige Java-Anwendungen. Folglich werden keine Produkte unterstützt, die serverseitige Java-Technologie verwenden.
Nicht unterstützte Produkte und Technologien
Hier ist eine nicht erschöpfende Liste der spezifischen Produkte und Technologien, die auf Shared-Hosting-Servern nicht unterstützt werden:
- Apache OFBiz
- Greenstone
- Opentaps
- Compiere (benötigt Tomcat)
- Play!
- Solr
- Resin
- JBoss
- Scala
- jftp
- Jakarta EE (ehemals Java 2 Platform, Enterprise Edition, oder J2EE, später Java Platform, Enterprise Edition oder Java EE)
Diese Richtlinie dient dazu, eine optimale Leistung und eine faire Nutzung der Ressourcen für alle Benutzer der Shared-Hosting-Server zu gewährleisten.
Link zu dieser FAQ: https://faq.infomaniak.com/591
War diese FAQ nützlich?
Diese Anleitung erklärt, wie Sie die Option MultiViews über eine .htaccess-Datei auf Websites aktivieren, die bei Infomaniak gehostet werden.
Einleitung
- In bestimmten Fällen muss die Option MultiViews aktiviert werden, um Probleme mit der Weiterleitung und dem Umschreiben von URLs zu beheben.
- Diese Option ermöglicht es dem Server, zu erraten, welche Datei der Benutzer sucht. Beispiel:
- Wenn sich der Ordner
configurationund die Dateiconfiguration.phpim Stammverzeichnis Ihrer Website befinden und Sie versuchen, die Adressedomain.xyz/configurationaufzurufen, muss die Option MultiViews aktiviert sein, damit der Server erraten kann, dass Sie auf die Dateiconfiguration.phpzugreifen möchten.
- Wenn sich der Ordner
- Die Option MultiViews kann manchmal mit komplexeren URL-Rewrite-Regeln, die von
mod_rewritedefiniert werden (und von vielen CMS verwendet werden), in Konflikt geraten.
Die Option MultiViews aktivieren
Dazu:
- Öffnen oder erstellen Sie die Datei
.htaccess, die sich im Stammverzeichnis der betreffenden Website befindet. Fügen Sie die folgende Direktive hinzu:
Options +MultiViews- Speichern Sie die Änderungen.
Link zu dieser FAQ: https://faq.infomaniak.com/605
War diese FAQ nützlich?
Dieser Leitfaden behandelt die Ausführung der Programmiersprache C# und des Frameworks .NET mithilfe der Implementierung Mono auf den Infomaniak-Hosting-Diensten.
Technologien für die Softwareentwicklung
Um die Programmiersprache C# und das Framework .NET mit der Mono-Implementierung zu verwenden, um Softwareanwendungen zu entwickeln, die auf verschiedenen Plattformen außerhalb der Windows-Umgebung bereitgestellt und ausgeführt werden können, wird empfohlen, sich für Lösungen wie die folgenden zu entscheiden:
Die Flexibilität und Portabilität, die diese plattformübergreifenden Umgebungen bieten, bedeuten, dass ein gemeinsames Webhosting keine Ausführung von Projekten, die auf C#, .NET oder Mono basieren.
Link zu dieser FAQ: https://faq.infomaniak.com/607
War diese FAQ nützlich?
Diese Anleitung erklärt, wie Sie ein bestehendes Webhosting-Angebot ändern können, um beispielsweise zusätzliche Websites zu hosten, falls das maximale Website-Limit erreicht ist, oder eine neuere Hosting-Lösung zu erhalten, um von den neuesten Versionen von PHP & MySQL zu profitieren.
Zusätzliche Websites, Speicherplatz oder IP-Adressen bestellen
Um auf den Konfigurator für Webhosting zuzugreifen:
- Klicken Sie hier, um die Verwaltung Ihres Webhostings im Infomaniak Manager aufzurufen (Benötigen Sie Hilfe?).
- Klicken Sie auf das Aktionsmenü ⋮ rechts neben dem betreffenden Hosting-Angebot.
- Klicken Sie auf Angebot bearbeiten:

- Erhöhen Sie die Werte, die Sie ändern möchten.
- Klicken Sie auf die Schaltfläche Weiter, um zur Bezahlung der vorgenommenen Änderungen am Hosting zu gelangen:

Auf einen aktuelleren Server umsteigen
Um eine Hosting-Lösung auf einem aktuelleren Server zu erhalten und somit unter anderem von den neuesten Versionen von PHP & MySQL zu profitieren, können Sie entweder…
- … lesen Sie diese andere Anleitung und befolgen Sie die darin beschriebene Vorgehensweise bis zum Ende:

- … lesen Sie diese andere Anleitung und befolgen Sie die darin beschriebene Vorgehensweise bis zu Schritt 4, klicken Sie dann auf die Schaltfläche, um zu aktualisieren:

Wenn kein Informationsbanner angezeigt wird, bedeutet das, dass Sie bereits ein aktuelles Hosting-Angebot nutzen.
Link zu dieser FAQ: https://faq.infomaniak.com/626
War diese FAQ nützlich?
Dieser Leitfaden beschreibt die Integration der ASP / ASP.NET-Umgebung in das Infomaniak-Ökosystem.
Kompatibilität & Infrastruktur
Die Webhosting- und Managed-Cloud-Server-Lösungen sind für Linux/Apache-Umgebungen optimiert. Daher wird das Modul Apache::ASP in diesen Shared-Hosting-Angeboten nicht nativ unterstützt.
Alternativen & Cloud-Lösungen
Für den reibungslosen Betrieb Ihrer ASP-Anwendungen stehen Ihnen verschiedene Optionen zur Verfügung:
- Cloud-VPS: Installieren und konfigurieren Sie Ihren eigenen ASP/IIS-Stack oder verwenden Sie Mono/Core auf einer Distribution Ihrer Wahl.
- Jelastic Cloud (PaaS): Stellen Sie Ihre ASP.NET Core-Anwendungen mit wenigen Klicks über Docker-Container bereit und profitieren Sie von automatischer horizontaler Skalierung.
- Public Cloud: Für hochverfügbare Infrastrukturen, die auf OpenStack basieren, ideal für Microservices-Architekturen.
Link zu dieser FAQ: https://faq.infomaniak.com/631
War diese FAQ nützlich?
Diese Anleitung erklärt, wie Sie das Hotlinking von Dateien, die auf Ihrem Webhosting von Infomaniak gehostet werden, einschränken können.
Einleitung
- Beim Hotlinking wird eine Datei (z. B. ein Bild oder ein Video), die auf Ihrem Server gehostet wird, direkt auf einer anderen Website angezeigt, indem die öffentliche URL verwendet wird, ohne dass die Datei auf der anderen Website selbst gehostet wird.
- Diese Praxis nutzt die Ressourcen Ihres Hostings (Bandbreite, HTTP-Verbindungen und Serverressourcen) ohne Ihre Erlaubnis. Sie kann auch Ihre Urheberrechte verletzen oder die Kontrolle über die Verbreitung Ihrer Inhalte beeinträchtigen.
- Auch wenn die aktuellen Netzwerkkapazitäten die Auswirkungen auf die Bandbreite im Allgemeinen weniger kritisch machen als früher, wird dennoch empfohlen, Hotlinking einzuschränken, um einen unnötigen Ressourcenverbrauch Ihres Hostings zu vermeiden.
Hotlinking mit einer .htaccess-Datei verhindern
Wenn Ihre Website den Webserver Apache und das Modul mod_rewrite verwendet, können Sie den direkten Zugriff auf bestimmte Dateien einschränken, indem Sie Regeln in der Datei .htaccess hinzufügen, die sich im Stammverzeichnis Ihrer Website befindet.
Das folgende Beispiel schützt die wichtigsten Bildformate, einschließlich der modernen Formate WebP und AVIF:
RewriteEngine On
# Anfragen ohne einen Referer-Header zulassen
RewriteCond %{HTTP_REFERER} !^$
# Anfragen von Ihrer eigenen Domain zulassen (ersetzen Sie dies durch Ihre Domain)
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?votre-domaine\.com [NC]
# Anfragen von wichtigen Suchmaschinen zulassen
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?google\. [NC]
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?bing\. [NC]
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?yahoo\. [NC]
# Hotlinking für Bilddateien blockieren
RewriteRule \.(jpg|jpeg|png|gif|svg|webp|avif)$ - [F,NC,L]Vor der Verwendung anpassen:
- Ersetzen Sie
ihre-domain.comdurch Ihren eigenen Domainnamen. - Anfragen ohne den HTTP-Header
Refererwerden zugelassen, um die Kompatibilität mit bestimmten Browsern, Anwendungen oder Datenschutzmechanismen zu gewährleisten, die diesen Header nicht übermitteln. - Die Regeln, die den wichtigsten Suchmaschinen den Zugriff auf Bilder erlauben, ermöglichen es ihren Bots, auf die Bilder zuzugreifen, damit diese indiziert werden können. Wenn Sie diese Regeln entfernen, wird die Indizierung dieser Bilder verhindert.
- Die Regel verwendet die Option
[F], die eine HTTP-Antwort403 Forbiddenzurückgibt. Diese Methode blockiert die Anfrage sofort, ohne zusätzlichen Inhalt bereitzustellen, was den Ressourcenverbrauch des Servers reduziert.
Wenn Sie Cloudflare als CDN vor Ihrem Infomaniak-Hosting verwenden, können Sie die Funktion Hotlink-Schutz auch über dessen Verwaltungsoberfläche aktivieren, um diese Art von Zugriff zu blockieren, bevor er Ihr Hosting erreicht.
Link zu dieser FAQ: https://faq.infomaniak.com/678
War diese FAQ nützlich?
Dieser Leitfaden stellt Befehle vor, die ausgeführt werden können, um eine Verbindung oder ein Netzwerk zu testen und so die mögliche Fehlerquelle genauer zu bestimmen.
Ein Telnet-Test durchführen …
TELNET ermöglicht es, die Verbindung zu einem Server zu testen, ohne die zusätzlichen Einstellungen einer E-Mail- oder FTP-Anwendung zu berücksichtigen, um die Ursache eines Problems zu ermitteln. Wenn die Verbindung zu einem SMTP-Server nicht funktioniert, sollten Sie beispielsweise prüfen, ob Ihre Firewall den Port 587 oder 465 blockiert.
… unter macOS
- Suchen Sie nach Netzwerkdienstprogramm.
- Gehen Sie zum Reiter
Ping,LookupoderTraceroute, je nachdem, was Sie testen möchten. - Sie können auch eine Anwendung vom Typ
Terminal(Befehlszeilenschnittstelle,CLI / Command Line Interface) auf Ihrem Gerät verwenden und, je nachdem, was Sie testen möchten, Folgendes eingeben:traceroute [server]nc [server] [port]
Ersetzen Sie[server]durch den Namen des Servers oder seine IP-Adresse, ebenso für[port]…
… unter Windows
Aktivieren Sie Telnet gegebenenfalls vorher.
- Verwenden Sie eine Anwendung vom Typ
Terminal(Befehlszeilenschnittstelle,CLI) auf Ihrem Gerät, z. B. indem Sie Ausführen eingeben und danncmd. - Geben Sie im sich öffnenden Fenster, je nachdem, was Sie testen möchten, Folgendes ein:
tracert [Server]telnet [Server] [Port]
Beispiel:telnet mail.infomaniak.com 587(ermöglicht das Testen des SMTP-Ports, falls Ihre Software/Ihr E-Mail-Client das Senden von E-Mails nicht ermöglicht)…
… auf Android
- Verwenden Sie die App Simple Telnet Client, mit der Sie sehr einfach über zwei auszufüllende Felder eine Verbindung herstellen können (z. B.
mail.infomaniak.comund Port143oder993)…
Einen PING durchführen
PING ermöglicht es, zu überprüfen, ob ein Gerät über das Internet erreichbar ist. Mit diesem Tool können Sie auch feststellen, ob Sie das richtige Gerät ansprechen, beispielsweise nach einer DNS-Änderung, indem Sie die erhaltene IP-Adresse überprüfen. Es ist möglich, einen Ping an einen Domainnamen, einen Hostnamen oder eine IP-Adresse zu senden.
PING ist auf den Shared-Hosting-Angeboten von Infomaniak definitiv blockiert.
Link zu dieser FAQ: https://faq.infomaniak.com/727
War diese FAQ nützlich?
Diese Anleitung erklärt, wie Sie ohne das Modul PECL SSH2 client arbeiten können, das auf Infomaniak Webhosting und Cloud Servern nicht verfügbar ist. Stattdessen wird die Bibliothek phpseclib verwendet, die in nativem PHP funktioniert, ohne dass eine spezielle Erweiterung erforderlich ist.
Einleitung
- Die Verwendung von
PECL SSH2 clientführt in der neuesten verfügbaren Version zu Fehlern wieKeine kompatiblen Key-Exchange-Algorithmen gefundenoderSchlüsselabtausch nicht möglich. Phpseclibermöglicht:- SSH-Authentifizierung per Passwort oder privatem Schlüssel.
- Ausführung von Remote-Befehlen.
- Sichere Dateiübertragung (SFTP).
- Verwaltung von SSH-Schlüsseln.
Verwendung von phpseclib
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('benutzer', $key)) {
exit('Authentifizierung fehlgeschlagen');
}
echo $ssh->exec('ls -la');Link zu dieser FAQ: https://faq.infomaniak.com/767
War diese FAQ nützlich?
Dieser Leitfaden beschreibt die wichtigsten Schritte, die Sie unternehmen sollten, wenn Sie nach einer Änderung an Ihrer Website keinen Unterschied zwischen der neuen und der alten Version feststellen. Diese Tipps gelten auch, wenn Sie Probleme bei der Verwendung der Infomaniak-Produkt-Oberfläche haben.
Einleitung
- Während der Nutzung speichert ein Webbrowser die aufgerufenen Daten in einem temporären Speicherbereich, um zu vermeiden, dass der Server die bereits aufgerufenen Daten erneut anfordert, um Zeit und Ressourcen zu sparen.
- Ihr Cache kann eine große Menge an Daten enthalten, und manchmal kommt es zu Fehlfunktionen im Browser. Websites können dann fehlerhaft oder in einer veralteten Version angezeigt werden.
- Durch das Löschen des Caches wird sichergestellt, dass immer die aktuellste Version der angezeigten Seite oder des Ordners geladen wird.
Cache des Webbrowsers löschen …
… in Safari
Wählen Sie Ihre macOS-Version aus, um die entsprechende Apple-Hilfe anzuzeigen.
… zu den Google-Tools (Chrome, Android usw.)
Lesen Sie die Google-Hilfe.
… in Firefox
Lesen Sie die Mozilla-Hilfe.
… für Edge / Internet Explorer
Weitere Informationen finden Sie in der Microsoft-Hilfe.
Link zu dieser FAQ: https://faq.infomaniak.com/793
War diese FAQ nützlich?
Dieser Leitfaden beschreibt die verfügbaren Funktionen zur Verwaltung relationaler Datenbanken auf den Hosting-Angeboten von Infomaniak.
Verwendung von Views, Triggern, gespeicherten Prozeduren und Routinen
In Bezug auf die Verwaltung relationaler Datenbanken ist die Funktionalität von „Views“ standardmäßig verfügbar, wodurch Benutzer Views erstellen können, um die Datenverwaltung und -darstellung zu vereinfachen.
Bestimmte erweiterte Funktionen, die eine feinere und komplexere Datenmanipulation ermöglichen, wie z. B. …
- „Trigger“ (Auslöser)
- gespeicherte Prozeduren („stored procedures“)
- Routinen
- und die Erstellung von Funktionen
… sind nur auf Cloud-Servern verfügbar.
Sie sind auf Shared-Servern nicht zulässig..
Diese Einschränkung ist hauptsächlich auf die potenziellen Risiken für die Stabilität der Infrastruktur zurückzuführen. Eine fehlerhafte Konfiguration oder eine übermäßige Nutzung dieser Funktionen könnte zu endlosen Schleifen oder erheblichen Überlastungen führen, was nicht nur die Leistung des betreffenden Servers beeinträchtigen, sondern auch die Benutzererfahrung aller Kunden, die auf derselben Infrastruktur gehostet werden, negativ beeinflussen würde.
Behebung eines Problems beim Importieren eines MySQL/MariaDB-Dumps
Beim Exportieren und anschließenden Re-Importieren einer MySQL- oder MariaDB-Datenbank über die Infomaniak-Hosting-Oberfläche kann es vorkommen, dass der Vorgang aufgrund von Fehlern im Zusammenhang mit den DEFINER-Einstellungen von Triggern oder Views fehlschlägt. Dieser Fall tritt auf, wenn die Objekte der Datenbank mit einem bestimmten Benutzer (dem Definer) erstellt wurden, der zum Zeitpunkt des Imports nicht mehr existiert.
Konkret verwendet der Export- und Importprozess einen temporären Benutzer, der nur während dieser Vorgänge verwendet wird. Nach der Löschung dieses Benutzers werden die Views oder Trigger, die mit diesem Konto als DEFINER definiert wurden, ungültig, was zu Fehlern wie folgt führt:
Allgemeiner Fehler: 1449 Der als Definierer angegebene Benutzer ('xxxx_temp_1'@'%') existiert nicht
Um dieses Problem zu vermeiden, können Sie die Backup-Datei (dump.sql oder dump.sql.gz) vor dem Import korrigieren, indem Sie die Definer-Definitionen durch CURRENT_USER ersetzen. Dadurch werden die Trigger und Views automatisch dem aktuell angemeldeten Benutzer zugeordnet, wenn der Import durchgeführt wird.
Hier ist ein Beispiel für einen Befehl, mit dem die Dump-Datei vor dem Import geändert werden kann:
sed -E 's/DEFINER=`[^`][^`]*`@`[^`][^`][^`]*`/DEFINER=CURRENT_USER/g' dump.sql > dump-corrected.sql
Nachdem dieser Austausch durchgeführt wurde, kann die korrigierte Datei wie gewohnt über das Infomaniak Manager importiert werden. Dieses Verhalten ist bekannt und hängt mit der Funktionsweise temporärer Benutzer beim Sichern/Wiederherstellen zusammen. Eine Änderung des Export-/Importprozesses ist kurzfristig nicht geplant, aber das Thema wird weiterhin auf Infrastrukturebene evaluiert.
Weitere Informationen zur Variablen CURRENT_USER finden Sie in der offiziellen Dokumentation:
Link zu dieser FAQ: https://faq.infomaniak.com/821
War diese FAQ nützlich?
Diese Anleitung erklärt, wie Sie das Passwort einer MySQL-/MariaDB-Datenbank eines Webhostings ändern.
Einleitung
- Lesen Sie diese Anleitung, wenn Sie Informationen zur Aktualisierung der Anmeldedaten (Skripte, Websites usw.) im Zusammenhang mit einer Änderung des Datenbankpassworts benötigen.
- Ein Datenbankbenutzer, der nach der Installation einer Webanwendung (angeboten von Infomaniak) erstellt wurde, kann nicht geändert werden.
- Um auf die zugehörige Datenbank zuzugreifen, müssen Sie einen neuen Datenbankbenutzer mit dem gewünschten Passwort erstellen und ihm dann die entsprechenden Rechte für die gewünschte Datenbank zuweisen.
MySQL-, MariaDB-Passwort usw. ändern
Dazu müssen Sie den Benutzer bearbeiten, der der betreffenden Datenbank zugeordnet ist, und das Passwort ändern (ohne das alte Passwort angeben zu müssen) über das Infomaniak-Verwaltungsinterface:
- Klicken Sie hier, um die Verwaltung Ihres Hostings im Infomaniak Manager aufzurufen (Benötigen Sie Hilfe?).
- Klicken Sie direkt auf den Namen des betreffenden Hostings:

- Klicken Sie im linken Menü auf Datenbanken.
- Klicken Sie auf das Menü Benutzer.
- Klicken Sie auf das Aktionsmenü ⋮ rechts neben dem betreffenden Element.
- Klicken Sie auf Bearbeiten:

- Klicken Sie auf Passwort ändern.
- Geben Sie das gewünschte neue Passwort ein.
- Klicken Sie auf die Schaltfläche Speichern:

- Falls erforderlich, können Sie die neuen Berechtigungen (Lesen / Schreiben / Verwalten) für den Benutzer für den Zugriff auf die vorhandenen Datenbanken auf dem Hosting konfigurieren.
Link zu dieser FAQ: https://faq.infomaniak.com/846
War diese FAQ nützlich?