Login实现身份验证确实很方便,安全性也好点,易于扩展。PasswordRecovery控件是密码找回控件,本地使用调试时需要设置一下,看代码:
Default.aspx代码:
<asp:PasswordRecovery ID="PasswordRecovery1" runat="server">
<MailDefinition From="administrator@Contoso.com"
IsBodyHtml="true"
Subject="Your new password"
BodyFileName="PasswordMail.txt" />
</asp:PasswordRecovery>
<MailDefinition From="administrator@Contoso.com"
IsBodyHtml="true"
Subject="Your new password"
BodyFileName="PasswordMail.txt" />
</asp:PasswordRecovery>
PasswordMail.txt内容(此文件和网页文件放在同一路径下):
======================================================
<br>
您好,这是一封密码找回邮件,请注意及时修改自己的密码<br>
并删除本邮件,谢谢使用! <br>
用户名:<% userName %> <br>
新密码:<% password %> <br>
欢迎再次光临本站 <br>
======================================================
<br>
您好,这是一封密码找回邮件,请注意及时修改自己的密码<br>
并删除本邮件,谢谢使用! <br>
用户名:<% userName %> <br>
新密码:<% password %> <br>
欢迎再次光临本站 <br>
======================================================
然后在web.config加smtp节点:
<system.net>
<mailSettings>
<smtp deliveryMethod="Network">
<network host="localhost" port="25" defaultCredentials="true"/>
</smtp>
</mailSettings>
</system.net>
<!--SMTP网络设置结束-->
<mailSettings>
<smtp deliveryMethod="Network">
<network host="localhost" port="25" defaultCredentials="true"/>
</smtp>
</mailSettings>
</system.net>
<!--SMTP网络设置结束-->
这样就配置好了,如果在发邮件的时候,出现服务器失败等问题,请设置以下:
打开IIS(Internet信息服务),在"默认SMTP虚拟服务器"上右键,弹出属性框,单击"访问"-"身份验证",将"匿名方法"这个勾打上,然后单击"访问"-"中继",弹出中继限制窗口,添加一个计算机,IP为本地IP,即127.0.0.1
作者:wknight
浙公网安备 33010602011771号