IIS的安装

因为工作的需要,开始学习Asp.net,安装完IIS后,出现了让人心酸的问题:

    Server application Error 
  The Server has encountered an error while loading an application during the processing of your request. Please refer to the event log for more detail information. Please contact theServer administrator for assistance. 

不过有部分的提示是这样的:

    Server application Error 
    while loading an application during the processing of your request. Please refer to the event log for more detail information. Please contact the Server administrator for assistance.

整理了一下Server application Error解决方案,修正了命令中涉及到路径的问题,使用本文中的命令,将不需要理会路径问题:
  1、右键点击我的电脑 --> 管理 --> 本地用户和组 --> 用户,在右侧给“IUSR_机器名”和“IWAM_机器名”两个用户均设置密码为123
  2、开始 --> 运行 --> cmd ,然后依次在命令行窗口输入以下命令(一行一行的输入);  

    cscript.exe %HOMEDRIVE%/Inetpub/Adminscripts/adsutil.vbs set w3svc/wamuserpass 123
    cscript.exe %HOMEDRIVE%/Inetpub/Adminscripts/adsutil.vbs set w3svc/anonymoususerpass 123   

网上说这里需要去查看一下IIS正常没,不过这问题我好像以前也碰到过,这一次依然一样,到这里90%还是问题依就。 

    那我们就继续操作。

    cscript.exe %HOMEDRIVE%/Inetpub/Adminscripts/synciwam.vbs -v
    iisreset

  操作到这里后,我这儿提示 error:8004e00f ,属于MSDTC服务异常。如果没有这种提示,那么恭喜你啦,你修复成功了。
我们继续操作:
  3、删除注册表中的键: 

  · //HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/MSDTC 
  · //HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSDTC 
  · //HKEY_CLASSES_ROOT/CID     

  4、继续在刚才的CMD窗口中,键入命令(停止并重新安装MSDTC服务):

    net stop msdtc 
    msdtc -uninstall 
    msdtc -install      

  5、重新按第一步的说明操作(设置2个系统用户的密码);

  6CMD命令,同步IIS metabaseIWAM_MYServer的密码:

   %HOMEDRIVE%/Inetpub/Adminscripts/adsutil.vbs set w3svc/wamuserpass "123"

      7CMD命令,同步COM+应用程序所用的IWAM_MYServer密码:

    cscript %HOMEDRIVE%/Inetpub/Adminscripts/synciwam.vbs -v    

  操作到这里后,我这儿虽说没有8004e00f的错误提示,但测试过IIS,问题依旧啊,访问页面还是Serverapplication Error
还得继续操作: 
  检查你的DTC服务(全名:Distributed Transaction Coordinator)是否可以正常启动,一般都没问题的。
  继续在CMD下执行以下命令: 

  runDLL32 %windir%/system32/inetsrv/wamreg.DLL, CreateIISPackage 
  regsvr32 %windir%/system32/inetsrv/asptxn.DLL /s     

  到这里大功告成!
  OK,asp页面一切正常了


下面附上批处理的文档

@echo off

echo *

echo *

echo ****************************************************

echo *                                                  *

echo *  IIS Server Application Error错误自动修复批处理  *

echo *                                                  *

echo ****************************************************

echo *

echo *

set /p isok0=开始IIS修复?(y/n)

if %isok0%==y goto begin

goto forend

 

:begin

set userIWAM=IWAM_%COMPUTERNAME%

set userIUSR=IUSR_%COMPUTERNAME%

 

:checkIWAM

net user %userIWAM%

if %errorlevel%==0 goto checkIUSR

goto netuserIWAM

 

:checkIUSR

net user %userIUSR%

if %errorlevel%==0 goto edituser

goto netuserIUSR

 

:netuserIWAM

net user

set /p tiwam=请输入正确的“启动 IIS 进程帐户”名称(即以IWAM_开头的帐户名称)?

set userIWAM=%ans%

goto checkIWAM

 

:netuserIUSR

net user

set /p tiusr=请输入正确的“Internet 来宾帐户”名称(即以IUSR_开头的帐户名称)?

set userIUSR=%tiusr%

goto checkIUSR

 

:edituser

echo 重置“启动 IIS 进程帐户”密码为123

net user %userIWAM% 123

echo 重置“Internet 来宾帐户”密码为123

net user %userIUSR% 123

echo 密码同步

cscript.exe %HOMEDRIVE%/Inetpub/Adminscripts/adsutil.vbs set w3svc/wamuserpass 123

cscript.exe %HOMEDRIVE%/Inetpub/Adminscripts/adsutil.vbs set w3svc/anonymoususerpass 123

echo *

echo *

set /p isok1=请测试IIS是否正常?(y/n)

if %isok1%==y goto forend

 

cscript.exe %HOMEDRIVE%/Inetpub/Adminscripts/synciwam.vbs -v

iisreset

echo *

echo *

set /p isok2=请测试IIS是否正常?(y/n)

if %isok2%==y goto forend

 

echo 清除MSDTC服务注册表相关信息

reg delete HKLM/SYSTEM/CurrentControlSet/Services/MSDTC /f 

reg delete HKLM/SOFTWARE/Microsoft/MSDTC /f

reg delete HKCR/CID /f

echo 停止并重新安装MSDTC服务

net stop msdtc 

msdtc -uninstall 

msdtc -install 

echo 重置“启动 IIS 进程帐户”与“Internet 来宾帐户”密码

net user %userIWAM% 123

net user %userIUSR% 123

echo 同步IIS metabase中IWAM_MYSERVER的密码

%HOMEDRIVE%/Inetpub/Adminscripts/adsutil.vbs set w3svc/wamuserpass "123"

echo 同步COM+应用程序所用的IWAM_MYSERVER密码

cscript.exe %HOMEDRIVE%/Inetpub/Adminscripts/synciwam.vbs -v

echo *

echo *

set /p isok3=请测试IIS是否正常?(y/n)

if %isok3%==y goto forend

 

echo 重新注册相关组件

rundll32 %windir%/system32/inetsrv/wamreg.dll, CreateIISPackage 

regsvr32 %windir%/system32/inetsrv/asptxn.dll /s

echo *

echo *

set /p isok4=请测试IIS是否正常?(y/n)

if %isok4%==y goto forend

 

echo *

echo *

echo 如果IIS还不正常的话,我真的解决不了唉,请另请高明吧!

 

:forend

echo *

echo *

@echo 批处理执行完毕,请按任意键退出?

@echo off 

pause

 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值