我无法通过Outlook发送包含sendmailR
的电子邮件。
它在我的主计算机(Windows机器)上工作正常,但是当我在运行Ubuntu的虚拟机上尝试它时,我收到以下错误:
Error in socketConnection(host = server, port = port, blocking = TRUE) :
cannot open the connection
In addition: Warning message:
In socketConnection(host = server, port = port, blocking = TRUE) :
MYADRESSE.local:25 cannot be opened
我使用了以下代码,在主机上再次正常工作。
library(sendmailR)
from <- "myname@company.com"
to <- "myname@company.com"
subject <- "Performance Result"
body <- "This is the result of the test:"
mailControl=list(smtpServer="MYADRESSE.local")
sendmail(from=from,to=to,subject=subject,msg=body,control=mailControl)
我是否必须设置虚拟机才能访问MYADRESSE.local
?两者之间的网络(主机和托管)设置为&#34;桥接&#34;。我的最终目标是使用闪亮的服务器来创建一个能够通过主机主Outlook发送电子邮件的应用程序,目前,电子邮件可以完美地放在一边工作。
答案 0 :(得分:1)
Outlook是邮件客户端,sendmailR也是如此。我假设您的意思是,您通过您的Outlook邮件客户端也连接到的SMTP邮件服务器发送邮件。
首先,检查您是否可以从虚拟机ping您的SMTP邮件服务器。与Outlook相同的SMTP邮件服务器。
其次,尝试从VM ubuntu telnet到你的SMTP服务器,例如
telnet your-smtp-server 22
如果两者都不起作用,请查找有关将VM连接到LAN的问题。
(UPDATE) 要使Windows机器与MYADRESSE.local通信,主机文件中必须有一个设置。打开c:\ windows \ system32 \ drivers \ etc \ hosts,看看是否有条目。 如果条目显示
127.0.0.1 MYADRESSE.local
这意味着您的Windows系统中有SMTP服务器设置。如果有任何其他地址,例如(只是例子,地址可以改变)
192.168.100.10 MYADDRESS.local
然后192.168.100.10是您的SMTP服务器地址。然后上面的ping,telnet工作显示应该使用这个IP地址。例如telnet 192.168.100.10 ...你的SendMailR应该使用这个IP地址,而不是MYADDRESS.local