Dieser Artikel richtet sich an Kunden mit einem cPanel Hosting Produkt.
Wichtige Hinweise:
1. Wenn Sie eine E-Mail-Adresse zum Versand verwenden und die Domain des Empfängers im cPanel angelegt ist, diese jedoch einen externen MX verwendet, müssen Sie in der cPanel Administration unter dem Menüpunkt "E-Mail - E-Mail-Routing" den Remote Mail Exchange für die entsprechende Domain aktivieren. Falls diese Option nicht gesetzt ist, versucht cPanel die E-Mail lokal zuzustellen, was jedoch nicht möglich ist. Die E-Mail wird dann ohne weitere Fehlermeldung verworfen. Die cPanel Administration erreichen Sie wie folgt:
- Melden Sie sich ins KIS an unter https://sso.hosteurope.de
- Navigieren Sie zu folgendem Pfad: "Produktverwaltung - cPanel Webhosting / cPanel Webserver"
- Klicken Sie dort auf "cPanel Login"
- Nun wählen Sie das gewünschte Produkt aus.
- Auf der nächsten Seite, die dann erscheint, klicken Sie bitte auf den schwarzen Knopf (rechts oben) "cPanel Administration".
2. Damit der Versand einwandfrei funktioniert, legen Sie die gewünschte E-Mail-Adresse bitte zusätzlich im cPanel an.
PHP-Mail Funktion:
Grundsätzlich empfehlen wir die Nutzung der PHP-Mail Funktion.
Der Schlüssel hierbei besteht darin, den "-f"-Parameter zu setzen. Ohne diese Information könnte es sein, dass die E-Mail von bestimmten Zielprovidern abgelehnt oder herausgefiltert wird.
Hier sehen wir ein Beispiel, wo der Versand erfolgreich ist:
####
<?php
$to = "empfaenger.email@domain.tld";
$subject = "Die Mail-Funktion";
$body = "Testnachricht";
$headers = "From: absender.email@domain.tld";
// Hinzufügen des "-f" Parameters für die Absenderadresse
if (mail($to, $subject, $body, $headers, "-f absender.email@domain.tld ")) {
echo "Nachricht erfolgreich versendet!";
} else {
echo "Fehler bei der Nachrichtenzustellung...";
}
?>
####
Der -f-Parameter benötigt kein Leerzeichen zwischen "-f" und der Absenderadresse. Wichtig hier zu beachten ist, dass es eine E-Mail-Adresse aus dem cPanel sein muss.
SMTP:
Der SMTP-Versand ist ausschließlich für Domains und Hostnamen zugelassen, die in cPanel hinterlegt sind. Die Domain muss lediglich im cPanel hinzugefügt sein. DNS-Anpassungen sind dafür nicht notwendig.
Bitte berücksichtigen Sie zusätzlich die Hinweise am Anfang dieses Artikels zum E-Mail-Routing sowie zum Anlegen der E-Mail-Adresse im cPanel.
Für Ihr Skript oder SMTP-Plugin stehen zwei technisch unterstützte Konfigurationen zur Verfügung. Welche funktioniert, hängt vom jeweiligen Plugin bzw. von der Implementierung ab.
cPanel unterstützt zwei SMTP-Konfigurationswege. Die passende Variante richtet sich danach, welche Parameter Ihr Plugin oder Skript akzeptiert:
1. Empfohlene Konfiguration:
-
Port: 25
-
SMTP-Authentifizierung: Falsch oder keine
-
SSL- oder sichere Verbindung: keine
-
Server oder Host: localhost
-
SMTP server/type: Andere SMTP
2. Alternative Konfiguration (falls Option 1 nicht unterstützt wird):
-
Port: 587 (bei TLS) oder 465 (bei SSL)
-
SMTP-Authentifizierung: Falsch oder keine
-
SSL- oder sichere Verbindung: TLS oder SSL
-
Server oder Host: localhost
-
SMTP server/type: Andere SMTP
Wenn Ihr Skript einen Zertifikatsfehler wie zum Beispiel
Peer certificate CN='*.prod.sxb1.secureserver.net' did not match expected CN='localhost'
meldet, verwenden Sie statt localhost den spezifischen Hostnamen Ihres cPanels. Diesen finden Sie nach dem Login im cPanel oben in der Browser-Adresszeile, z. B.:
sxb1abcde12345.prod.sxb1.secureserver.net (bitte ohne https:// eintragen).
Hinweis: Externe SMTP-Server werden grundsätzlich blockiert. Dazu zählen auch Systeme wie Professional Mail oder Microsoft 365. Serveradressen wie smtp.office365.com oder smtp.secureserver.net können daher nicht verwendet werden. Verwenden Sie stattdessen wie oben erklärt als Server den "localhost".
Sendmail Funktion:
Die Nutzung von sendmail ist nicht möglich und wird meistens mit folgendem Fehler abgelehnt:
"You are not authorized to run this command "
English Version:
How does script-based email sending work in cPanel using PHP Mail, SMTP, and Sendmail?
This article is for customers with a cPanel hosting product.
Important note:
1. If you use an email address for sending and the recipient's domain is created in cPanel but uses an external MX, you must activate Remote Mail Exchange for the corresponding domain under the menu item ‘Email - Email Routing’. If this option is not set, cPanel will attempt to deliver the email locally, which is not possible. The email will then be discarded without any further error message. You can access the cPanel administration as follows:
- Log in to KIS at sso.hosteurope.de
- Navigate to the following path: "Produktverwaltung - cPanel Webhosting / cPanel Webserver"
- Click on "cPanel Login"
- Select your product
- On the next page that appears, click the black button (top right) labeled "cPanel Administration"
2. To ensure that outgoing mail works correctly, please also create the required email address in your cPanel.
PHP Mail Function:
We generally recommend using the PHP mail function.
The key here is to set the "-f" parameter. Without this information, the email might be rejected or filtered out by certain destination providers.
Here is an example where the sending is successful:
####
<?php
$to = "recipient.email@domain.tld";
$subject = "The Mail Function";
$body = "Test message";
$headers = "From: sender.email@domain.tld";
// Adding the "-f" parameter for the sender address
if (mail($to, $subject, $body, $headers, "-f sender.email@domain.tld")) {
echo "Message sent successfully!";
} else {
echo "Error in message delivery...";
}
?>
####
The -f parameter does not require a space between "-f" and the sender's address. It is important to note that the email address must be from the cPanel.
SMTP:
SMTP sending is only allowed for domains and hostnames registered in cPanel. The domain simply needs to be added in cPanel. No DNS configurations are required.
Please follow the instructions at the beginning of this article regarding email routing and creating the email address in cPanel.
For your script or SMTP plugin, two technically supported configuration methods are available. The appropriate method depends on which parameters your plugin or script accepts:
1. Recommended Configuration:
- Port: 25
- SMTP-Authentication: false or none
- SSL- or secure connection: none
- Server or Host: localhost
- SMTP server/type: other SMTP
2. Alternative Condifuration (if Option 1 is not supported):
- Port: 587 (bei TLS) oder 465 (bei SSL)
- SMTP-Authentication: false or none
- SSL- or secure connection: TLS or SSL
- Server or Host: localhost
- SMTP server/type: other SMTP
If your script reports a certificate error such as:
Peer certificate CN='*.prod.sxb1.secureserver.net' did not match expected CN='localhost'
use the specific hostname of your cPanel instead of localhost. You can find this after logging into cPanel in the browser’s address bar, for example:
sxb1abcde12345.prod.sxb1.secureserver.net (enter without ).
Note: External SMTP servers are generally blocked. This includes systems like Professional Mail or Microsoft 365. Server addresses such as smtp.office365.com or smtp.secureserver.net cannot be used. As explained above, use "localhost" as the server instead.
Sendmail Function:
The usage of sendmail is not possible and is typically rejected with the following error:
"You are not authorized to run this command."