[英]IIS URL Rewrite Wrong Port in Generated Links for Email
我在IIS 8.5上使用ARR,且URL重写指向服务器场。 后端网站在同一台计算机上运行,但在不同的端口(即8102
。 一些支持网站的节点发送电子邮件以进行电子邮件确认,并且这些邮件包含一个激活链接,该链接中的端口错误(主机名正确)。 链接具有与网站实例相同的端口。 但这是一个问题,因为链接随后断开了。 在我用来生成链接的代码中:
Url.Action("ConfirmMail", "Account",
new { userId = user.Id, code = UserManager.GeneratePasswordResetTokenAsync(user.Id)},
protocol: Request.Url.Scheme);
因此,用户获得的链接是https://correct_hostname:8102/Account/ConfirmMail?.....
正确的链接应该是https://correct_hostname/Account/ConfirmMail?.....
或https://correct_hostname:443/Account/ConfirmMail?.....
有什么想法使它起作用吗?
我认为您可以像这样删除端口(未经测试的代码):
@Url.Action(
"ConfirmMail",
"Account",
new { userId = user.Id, code = UserManager.GeneratePasswordResetTokenAsync(user.Id)},
protocol: Request.Url.Scheme,
Request.Url.Host
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.