2013-04-25 4 views
0

У меня странная проблема.PEAR SMTP Поведение в Windows

Я использую PEAR SMTP на Ubuntu. Когда я отправляю это сообщение:

--==Alternative_Boundary_x{da5ccf044317613d9f8e371455f292a6}x 
Content-Type: text/plain; charset="utf-8" 
Content-Transfer-Encoding: 7bit 

hello world - plain text test 
--==Alternative_Boundary_x{da5ccf044317613d9f8e371455f292a6}x 
Content-Type: text/html; charset="utf-8" 
Content-Transfer-Encoding: 7bit 

<i>hello world - html test</i> 
--==Alternative_Boundary_x{da5ccf044317613d9f8e371455f292a6}x-- 

--==Mixed_Boundary_x{e46253d4aad6aff75d74ef5eb064a626}x 
Content-Type: application/rtf; name="attachment.rtf" 
Content-Disposition: attachment; filename="attachment.rtf" 
Content-Transfer-Encoding: base64 

e1xydGYxXGFuc2lcZGVmZjB7XGZvbnR0Ymx7XGYwXGZtb2Rlcm5cZnBycTFcZmNoYXJzZXQwIENv 
dXJpZXIgTmV3O317XGYxXGZuaWxcZmNoYXJzZXQwIENvdXJpZXIgTmV3O319DQp7XGNvbG9ydGJs 
IDtccmVkMFxncmVlbjBcYmx1ZTA7fQ0Ke1wqXGdlbmVyYXRvciBNc2Z0ZWRpdCA1LjQxLjE1LjE1 
MTU7fVx2aWV3a2luZDRcdWMxXHBhcmRcY2YxXGxhbmcyMDU3XGYwXGZzMzIgSGVsbG8gd29ybGRc 
Y2YwXGYxXGZzMjBccGFyDQpcY2YxXGlcZjBcZnMyNCBIZWxsbyB3b3JsZFxjZjBcaTBcZjFcZnMy 
MFxwYXINClxiIEhlbGxvIHdvcmxkXHBhcg0KXGIwXHBhcg0KXHBhcg0KfQ0KAA== 


--==Mixed_Boundary_x{e46253d4aad6aff75d74ef5eb064a626}x 
--==Mixed_Boundary_x{e46253d4aad6aff75d74ef5eb064a626}x 
Content-Type: text/xml; name="attachment.xml" 
Content-Disposition: attachment; filename="attachment.xml" 
Content-Transfer-Encoding: base64 

PD94bWwgdmVyc2lvbj0iMS4wIj8+DQo8YXR0YWNoZW1udD5pbiAueG1sIGZpbGU8L2F0dGFjaGVt 
bnQ+IA== 


--==Mixed_Boundary_x{e46253d4aad6aff75d74ef5eb064a626}x-- 

я получаю без одного из - == Mixed_Boundary_x {e46253d4aad6aff75d74ef5eb064a626} х (смотрите, где есть два подряд) отсутствует. Некоторые, как PEAR smtp send отправляет сообщение с отсутствующим.

Но если я делаю это из Windows, используя phplib, он отправляет только штраф и заставляет приложения работать!

Я знаю, что могу использовать сообщение PEAR Mime, чтобы справиться с этим, но, к сожалению, я работаю с устаревшим кодом, и это не вариант, поскольку сообщение уже имеет все кодировки.

Мой вопрос: почему PEAR удаляет его? И что он нарушает вложения, когда не там?

Благодаря

+0

Что такое * phplib * если я могу спросить? – hakre

+0

Настраиваемая библиотека PHP. Он устарел, и я не думаю, что он поддерживается. –

+0

И вы получаете сообщения об ошибках? Некоторые намеки, что может пойти не так? Вы сообщаете об ошибках в полной мере? – hakre

ответ

0

Я могу только предположить, что от того, что вы даете, но Ascii-Art в вашей границе действительно хороший, но только, наверное, немного сверху. Он содержит символы, которые не допускаются к этим спецификациям, и это фигурные скобки. Может быть, из-за наличия там недействительного электронного письма, что-то упало?

+0

Почему не все удаляются. И почему это работает в некоторых случаях? –

+0

Ну, если граница не обнаружена (или ее конец), тогда это создаст одно вложение. Но это просто хорошая догадка, проблема в том, что на самом деле проблема заключается в том, что вы не отправляете правильное письмо с этими фигурными скобками. Я бы не подумал слишком много о том, почему это сломается, потому что оно сломано (по спецификации, это в [RFC2046] (http://tools.ietf.org/html/rfc2046)). Может быть, в этом случае описан механизм возврата и в действии. Но, возможно, это просто случайно, потому что вы накачиваете нечеткие данные./Http://tools.ietf.org/html/rfc2046#page-22 – hakre

+0

Я избавился от фигурных скобок для всех. Теперь ни одно из вложений или текста не работает. Но все это в источнике. –

0

Получил это! Оказывается, дополнительная линия не должна была быть там вообще и вызывала всевозможные проблемы. Удалось изменить какой-то код, чтобы его не было, и все началось!

Смежные вопросы