更新时间:2022-08-16 20:45:38
在我们安装的asp.net运行环境受到损坏,或者先安装.net framework再安装iis时,我们常常会使用VS.net
2003工具目录下的命令行入口"Visual Studio .NET 2003 Command Prompt"来执行aspnet_regiis
-i命令。不过我发现这个命令有个小问题,不知道是bug还是by design。
如果我们正常的安装了.net
framework及asp.net运行环境,就是先装iis再装.net
framework,并且aspx可以正常解析。这时如果我修改了asp.net的默认帐号aspnet的密码,或者某些安装程序修改了它,并且我又糊里糊涂的忘记了这个密码,这时运行asp.net站点,我们会得到如下错误:
那么我怎么恢复它为初始正常值从而来启动aspnet_wp.exe这个进程呢?那就使用aspnet_regiis
-i啰!问题就是这个aspnet_regiis -i并不会修复当前系统里面那个aspnet帐号的密码。即使重装iis再装.net
framework也同样于事无补,让人非常的郁闷。
其实也就一步之遥了,只是在执行aspnet_regiis -i前,需要我们手动的从用户和用户组管理里面手动的删除掉ASPNET那个帐号。再执行aspnet_regiis
-i,除了拷贝文件和在iis上注册外,就会再在系统中重新创建一个新的ASPNET帐号。这时就可以通过machine.config中,processModel配置为:userName="machine"
password="AutoGenerate"
来启动这个进程了。当然新的ASPNET帐号也需要重新分配到你所希望的组里去。同时即使我们执行aspnet_regiis -u,这个叫ASPNET的Asp.net
machine帐号也同样不会被删掉(这算是服务器潜在的安全隐患了),这问题不知道是aspnet_regiis的bug还是by design。
本文转自博客园鸟食轩的博客,原文链接:http://www.cnblogs.com/birdshome/,如需转载请自行联系原博主。