Кто-нибудь знает, какой SMTP-код ответа я могу дать отправителю, пытающемуся доставить почту на мой сервер, чтобы он знал, что почта не может быть доставлена на мой сервер. Но это не серьезная ошибка, поэтому письмо возвращается отправителю.
Я хочу, чтобы он попытался доставить электронное письмо в другие записи MX для этого домена. Теперь отправитель может любое количество раз пытаться доставить его на мой сервер, но каждый раз я хочу, чтобы он не был принят, и пытался выполнить другую запись MX.
Первая цифра кода ответа сообщит отправителю, можно ли повторить транзакцию или нет. Если первая цифра равна 4, транзакцию можно повторить позже или сразу с другим MX, и у нее будет шанс на успех. Если первая цифра 5, это указывает на постоянный сбой, который должен быть возвращен пользователю, поскольку повторная попытка транзакции снова вызовет ту же ошибку.
соответствующий раздел RFC 2821 говорит это:
Ответ 4yz Transient Negative Completion
Команда не была принята, и запрошенное действие не было выполнено. Однако состояние ошибки является временным, и действие может быть запрошено снова. Отправитель должен вернуться к началу последовательности команд (если есть). Когда два разных сайта (SMTP-агенты получателя и отправителя) должны согласовывать интерпретацию, трудно придать значение «временному». Каждый ответ в этой категории может иметь разное значение времени, но клиенту SMTP рекомендуется повторить попытку. Эмпирическое правило для определения того, подходит ли ответ к категории 4yz или 5yz (см. Ниже), состоит в том, что ответы имеют размер 4yz, если они могут быть успешными при повторении без каких-либо изменений в форме команды или в свойствах отправителя или получателя (то есть , команда повторяется идентично, и получатель не предлагает новую реализацию.)
5yz Постоянный отрицательный ответ о завершении
Команда не была принята, и запрошенное действие не было выполнено. Клиенту SMTP не рекомендуется повторять точный запрос (в той же последовательности). Можно исправить даже некоторые «постоянные» ошибки, поэтому пользователь-человек может захотеть направить SMTP-клиенту повторно инициировать последовательность команд прямым действием в какой-то момент в будущем (например, после того, как орфография была изменена, или пользователь изменил статус аккаунта).