我正在尝试将提交后的电子邮件发送到office365.com上托管的交换分发列表。他们需要TLS。我试图按照http://www.visualsvn.com/support/topic/00018/的说明操作,但无法使其正常工作。这是我使用的配置,修改了用户名和密码:
"%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" ^ commit-notification "%1" -r %2 ^ --from fromemail@example.com ^ --to commit@example.com ^ --smtp-server smtp.office365.com ^ --smtp-ssl ^ --smtp-port 587 ^ --smtp-user fromemail@example.com ^ --smtp-password APassword
提交时,提交更改,但我收到此错误消息:
警告:提交后挂钩失败(退出代码1)并带有输出: VisualSVNServerHooks:E020014:传输无法连接到服务器。
我可以从运行svn的系统telnet到smtp.office365.com 587。提交后的电子邮件可以使用其他非SSL帐户。
有没有其他人能够让这个工作?
答案 0 :(得分:1)
切换到用于SSL连接的端口465
对我有用,我能够从我的svn服务器telnet
到587
答案 1 :(得分:1)
我遇到了同样的问题,并向VisualSVN-Support-Team发送了一封邮件。这就是答案:
很遗憾,但是TLS(STARTTLS)可能存在问题。这是一个已知的问题。
VisualSVNServerHooks.exe
不支持通过具有STARTTLS的SMTP进行提交通知。目前,我建议您尽可能将端口465与启用SSL的SMTP服务器一起使用。或者,切换到不使用SSL / TLS的端口25。
此问题已经升级到我们的开发人员。我们将考虑在将来的VisualSVN Server版本中实现此选项。
我在2018年3月22日得到了这个答案。
答案 2 :(得分:0)
是否定义了环境变量%VISUALSVN_SERVER%
?您是否在提交中获得任何退出价值?如果提交后挂钩失败,您将在提交时收到错误消息,但提交将起作用,因为挂钩在提交后被触发。
你说你无法远程登录。您只是在做telnet smtp.office365.com
还是在端口中添加:telnet smtp.office365.com 587
。该端口号很重要。很少有人将telnet
作为服务运行。标准telnet
端口#23通常已死,但telnet
命令允许您尝试其他端口。
如果您无法访问该端口,请确保您的路由器不会阻止端口587.您还可以尝试我的提交后的观察程序。它使用Perl,但您可以在Windows上安装Strawberry Perl。 VisualSVN使用带有mod_svn的标准Apache。主要的是它给你一个漂亮的前端,但标准的钩子设置应该工作正常。至少它会为你提供另一种尝试的途径。