Проблема с заголовком «От» при отправке SMS через функцию mail mail () PHP - PullRequest
2 голосов
/ 09 февраля 2012

Я использую функцию PHP mail () для отправки SMS-сообщений. Он работает нормально, за исключением того, что сообщение отображается как «myuser@mr2.websitewelcome.com», когда я хочу, чтобы оно отображалось как «test@mydomain.com». Вот соответствующий код:

//Set headers and send mail.
$headers = "From: " . "test@mydomain.com" . "\r\n";
$headers .= "Reply-To: ". "test@mydomain.com" . "\r\n";

mail( $from, '', $message, $headers );

Я знаю, что этот вопрос задавался ранее, но пока мне ничего не помогло. Я попытался установить заголовок как -f test@mydomain.com. Не повезло.

Кстати, если я отправлю на адрес электронной почты, а не номер телефона, заголовки будут работать нормально.

ИДК, если это как-то связано с этим, но мой скрипт вызывается из почтового сервера пересылки, который я настроил в cpanel, например:

Address                 Forward To
test@mydomain.com       |/home/myuser/public_html/handler.php

Кроме того, вот полные заголовки письма, отправленного на адрес электронной почты:

Return-Path: <itch3@mr2.websitewelcome.com>
Received: from gateway01.websitewelcome.com (gateway01.websitewelcome.com [67.18.65.19])
    by mtain-mk01.r1000.mx.aol.com (Internet Inbound) with ESMTP id 1B28B3800008B
    for <myemail@me.com>; Wed,  8 Feb 2012 20:25:56 -0500 (EST)
Received: by gateway01.websitewelcome.com (Postfix, from userid 5007)
    id A69B35C21D4BD; Wed,  8 Feb 2012 19:25:55 -0600 (CST)
Received: from mr2.websitewelcome.com (mr2.websitewelcome.com [74.53.229.178])
    by gateway01.websitewelcome.com (Postfix) with ESMTP id 9CBAF5C21D49D
    for <myemail@me.com>; Wed,  8 Feb 2012 19:25:55 -0600 (CST)
Received: from itch3 by mr2.websitewelcome.com with local (Exim 4.69)
    (envelope-from <itch3@mr2.websitewelcome.com>)
    id 1RvIln-0003AQ-Cv
    for myemail@me.com; Wed, 08 Feb 2012 19:25:55 -0600
To: myemail@me.com
Subject: subject
From: "test@mydomain.com" <test@mydomain.com>
Reply-To: test@mydomain.com
Message-Id: <E1RvIln-0003AQ-Cv@mr2.websitewelcome.com>
Date: Wed, 08 Feb 2012 19:25:55 -0600
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - mr2.websitewelcome.com
X-AntiAbuse: Original Domain - aol.com
X-AntiAbuse: Originator/Caller UID/GID - [2146 32003] / [47 12]
X-AntiAbuse: Sender Address Domain - mr2.websitewelcome.com
X-BWhitelist: no
X-Source: /usr/bin/php
X-Source-Args: /usr/bin/php -q /home/itch3/public_html/handler.php 
X-Source-Dir: switchon3.com:/public_html
X-Source-Sender: 
X-Source-Auth: itch3
X-Email-Count: 2
X-Source-Cap: aXRjaDM7Y3ZncnViYnM7bXIyLndlYnNpdGV3ZWxjb21lLmNvbQ==
x-aol-global-disposition: G
X-AOL-SCOLL-SCORE: 0:2:199012208:93952408  
X-AOL-SCOLL-URL_COUNT: 0  
x-aol-sid: 3039ac1d61854f3320a4018d
X-AOL-IP: 67.18.65.19
X-AOL-SPF: domain : mr2.websitewelcome.com SPF : none

Ответы [ 3 ]

5 голосов
/ 09 февраля 2012

Можно ли использовать аргумент дополнительных параметров (снова) для объявления адреса from?

mail('nobody@example.com', 'the subject', 'the message',
"From: webmaster@example.com\r\n", '-fwebmaster@example.com');

Я обычно добавляю дополнительный параметр при использовании mail (), и он имеет тенденцию исправлять большинство проблем, с которыми я сталкивался.

3 голосов
/ 09 февраля 2012

Вы можете установить Return-Path на test@mydomain.com, например так:

mail( $from, '', $message, $headers, '-ftest@mydomain.com');

(обратите внимание на отсутствие места после -f)

0 голосов
/ 01 февраля 2017

Переменная $ from не установлена, поэтому она по умолчанию. Ваш код должен быть:

//Set headers and send mail.
$headers = "From: " . "test@mydomain.com" . "\r\n";
$headers .= "Reply-To: ". "test@mydomain.com" . "\r\n";

$from = "test@mydomain.com";

mail( $from, '', $message, $headers );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...