1 Câu hỏi: Cách gửi email văn bản đơn giản bằng cURL

câu hỏi được tạo ra tại Wed, May 8, 2019 12:00 AM

Tôi đang cố gắng gửi email bằng cURL (tiếc là tôi không thể sử dụng API hoặc thư viện php). Tôi có thể dễ dàng gửi thư định dạng HTML - có vô số bản demo và ví dụ về web. Tuy nhiên, tôi đang vật lộn để gửi một email văn bản đơn giản, đơn giản.

Tôi đã cố gắng điều chỉnh các ví dụ HTML nhưng không thành công.

Tôi hiện đang gửi:

--mail-from john@organisation.com
--mail-rcpt jane@destination.com
--user john.doe:Pa55w0rd
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
From: John Doe <john@organisation.com>
To: Jane Doe <jane@destination.com>
Subject: Test email

Some text

Tuy nhiên, máy chủ phản hồi với: 252 2.1.5 Xác minh không được hỗ trợ

Tìm hiểu kỹ, tôi thấy rằng lỗi này dường như liên quan đến nỗ lực xác minh tài khoản người dùng (một thứ không được hỗ trợ trên nhiều máy chủ thư, vì lý do bảo mật có thể hiểu được) và không phải là một nỗ lực gửi thư.

Cú pháp của tôi rõ ràng không chính xác, vì tôi KHÔNG cố xác minh người dùng, nhưng tôi không thể tìm thấy bất kỳ ví dụ nào trên web để làm việc. Nhưng tôi đã gửi thành công thư HTML có hình ảnh được nhúng qua cURL đến cùng một máy chủ thư!

    
0
1 Câu trả lời                              1                         

Nếu bạn sử dụng tùy chọn -T (--upload-file), curl sẽ không ban hành lệnh VRFY.

Xem https://ec.haxx.se/USEcurl-smtp.html

Ví dụ:

curl smtp://mail.example.com --mail-from myself@example.com \
--mail-rcpt receiver@example.com \
--upload-file email.txt

Khi curl có một tin nhắn để gửi, nó sẽ không VRFY và thay vào đó hãy thực hiện MAIL FROM...RCPT TO.

Từ man curl:

  

- mail-RCpt                 (SMTP) Chỉ định một địa chỉ, tên người dùng hoặc tên danh sách gửi thư.

     

Khi thực hiện chuyển thư, người nhận nên chỉ định địa chỉ email hợp lệ để gửi thư đến. (Đã thêm vào 7.20.0)

     

Khi thực hiện xác minh địa chỉ (lệnh VRFY), người nhận phải được chỉ định làm tên người dùng hoặc tên người dùng và   tên miền (như                 theo Phần 3.5 của RFC5321). (Đã thêm vào 7.34.0)

Nó không được nêu rõ lắm, nhưng nếu lệnh thiếu thông báo (-T hoặc --upload-file), thì curl thực hiện xác minh địa chỉ.

    
1
2019-05-09 00: 06: 41Z
  1. Cảm ơn! Wow - không được ghi chép tốt, ngay cả trong liên kết bạn đã gửi!
    2019-05-08 21: 33: 30Z
  2. Đồng ý! Tôi đã thêm một số thông tin từ trang curl man về VRFY, nhưng trên chính nó, rõ ràng là nếu bạn không chỉ định một tệp, thì nó sẽ tự động thực hiện xác minh địa chỉ.
    2019-05-09 00: 07: 12Z
nguồn đặt đây