|
|
|
我前面曾经发过贴子,询问非标准端口下(http非80)修改密码出错的问题,原因是微软的脚本考虑不全,会导致引用错误的URL. 比如你使用<a target=_blank href=http://testnull.com:2000(>http://testnull.com:2000(</a> ssl为443)访问你的邮箱,如果修改密码,弹出的修改密码窗口会出现以下错误调用:" <a target=_blank href=https://testnull.com:2000/iisadmpwd/aexp2b.htr?http://testnull.com:2000/exchange>https://testnull.com:2000/iisadmpwd/aexp2b.htr?http://testnull.com:2000/exchange</a> " 注意<a target=_blank href=https://testnull.com:2000>https://testnull.com:2000</a> ,SSL端口是443,不是2000,所以<a target=_blank href=https://xxx:2000>https://xxx:2000</a>是错误的,现在研究了一下,用以下方法可以解决,找到exchange目录下的exchweb/controls/dlg_options20.js,找开作以下修改: <br>
<br>
function openChangePassword()<br>
{<br>var objLocation = window.location;<br>var szServer = objLocation.host;<br>var lenstring = szServer.length; //得到Server Url的长<br>var lszServer = szServer.substring(0,lenstring-4); //去掉"2000"<br>var szClose = g_szUserBase + "/?Cmd=close";<br>var szURL = "<a target=_blank href=https://">https://"</a>; + lszServer + "/iisadmpwd/"+g_szPasswordPage+"?" + szClose;<br>var szOpts = "toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=1,width=355,height=350";<br>window.open(szURL,0,szOpts)<br>
}<br>
<br>
上面加入的代码就是去掉多余的":2000"端口号,如果你的发布端口不是2000,比如81,那么就是szServer.substring(0,lenstring-2) . <br>
<br>
|
|