GNU/Linux >> Tutoriels Linux >  >> Panels >> cPanel

Comment transférer les messages électroniques entrants vers un fichier de script

cPanel vous permet de configurer des redirecteurs de courrier électronique qui dirigent les messages électroniques entrants vers un fichier de script. Vous pouvez ensuite programmer un fichier de script pour traiter automatiquement les messages entrants comme vous le souhaitez.

Configurer un script

Les langues suivantes sont actuellement prises en charge pour les scripts de transfert d'e-mail :

  • PHP
  • Perl
  • Python
  • Rubis

Lorsque vous configurez un script, il y a deux choses que vous devez faire pour vous assurer que le redirecteur fonctionne correctement :

  1. Utilisez le bon shebang : Cela dépend du langage que vous utilisez pour écrire le script. Par exemple, un fichier de script PHP doit utiliser le shebang suivant au début du fichier :
    #!/usr/bin/php -q
    Le -q L'option active le mode silencieux, qui supprime la sortie de l'en-tête HTTP. Pour plus d'informations sur les shebangs corrects pour d'autres langues, veuillez consulter cet article.
  2. Définissez les autorisations de fichier correctes pour le script : Pour ce faire, tapez la commande suivante en remplaçant scriptfile avec le nom du fichier script :

    chmod 755 scriptfile
    

S'il y a des erreurs de configuration dans le redirecteur ou dans le fichier de script, l'expéditeur du message reçoit le message suivant :

Mail delivery failed: returning message to sender

En outre, ce message de retour peut répertorier les erreurs contenant des fragments de code du fichier de script. Assurez-vous de bien tester votre fichier de script avant de l'utiliser avec un redirecteur d'e-mail actif !

Exemple de script PHP

L'exemple de code PHP suivant montre une façon de traiter un message électronique entrant. Le script lit simplement le message de stdin , puis stocke le texte du message dans une variable nommée $message :

#!/usr/bin/php -q
<?php

$fd = fopen( "php://stdin", "r" );

$message = "";

while ( !feof( $fd ) )
{
    $message .= fread( $fd, 1024 );
}

fclose( $fd );

// The $message variable now holds the entire message text,
// which you can use for further processing.

?>

Ajouter un redirecteur d'e-mails dans cPanel

Pour ajouter un redirecteur d'e-mail qui redirige vers un fichier de script, procédez comme suit :

  1. Connectez-vous à cPanel. Si vous ne savez pas comment vous connecter à votre compte cPanel, veuillez consulter cet article.
  2. Dans la section EMAIL de l'écran d'accueil de cPanel, cliquez sur Redirecteurs :

  3. Cliquez sur Ajouter un redirecteur.
  4. Dans la zone de texte Adresse à transférer, saisissez le nom d'utilisateur du compte.
  5. Dans la zone de liste Domaine, sélectionnez le domaine du compte de messagerie.
  6. Cliquez sur Options avancées.
  7. Cliquez sur Rediriger vers un programme, puis dans la zone de texte, saisissez le chemin d'accès au script relatif à votre répertoire personnel. Par exemple, si votre script se trouve dans /home/username/scripts/process_mail.php , vous taperez scripts/process_mail.php.
  8. Cliquez sur Ajouter un redirecteur. Le transitaire s'active immédiatement.
  9. Vous pouvez tester le redirecteur en envoyant un e-mail à l'adresse e-mail. Le fichier de script correspondant doit s'exécuter.

cPanel
  1. Les e-mails ne sont pas transférés vers les comptes Gmail

  2. Les messages électroniques ne sont pas transférés vers les comptes Outlook.com (Hotmail)

  3. Comment gérer l'utilisation du disque de messagerie dans cPanel

  4. Comment filtrer les e-mails entrants par adresse IP

  5. Comment activer les messages de réponse automatique pour un compte de messagerie dans Plesk

Comment exécuter un script Shell en tant que service Systemd sous Linux

Comment télécharger un fichier sur le serveur

Comment créer un fichier de site Web

Comment modifier les autorisations de fichier

Comment copier un fichier dans le gestionnaire de fichiers

Comment grep pour unicode � dans un script bash