版本:大小:2KB
类别:服务器区系统:WinXP, Win7, Win8, Win10
立即下载用pb11.5做web发布过程中遇到这类错误是一款关于iis使用过程中出现错误的解决方法教程,这款教程能够有效的帮助用户对这类问题进行解析!有需要的用户快来IT猫扑下载吧!
在用pb11.5做web发布过程中遇到这类错误,使用了这个修复工具搞定了,比较不错!
源码:@echo off
echo *echo *
echo ****************************************************
echo * *
echo * IIS Server Application Error错误自动修复批处理 *
echo * 作者:hayden *
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
最近在跟QAD用Webservice搞接口做数据维护,搞的哥那个叫头大,遇到很多问题,系统的log4net根本就无法记录。话说QAD调我某一个接口,可能包含几百个字段,而且QAD是个产品,所以我这边提供的维护接口,必须符合QAD的接口标准,两个字蛋疼,四个字就是相当蛋疼。
没办法谁让咱是搞程序的呢,再苦再累也得上。这时候我突然相倒了,webservice是基于IIS的,那么基于IIS必须有IIS日志,那么我就从IIS日志入手解决这些问题。
问题示例:QAD调用我方接口,返回消息“<QdocProcessingException>HTTP/1.1 500 Internal Server Error</QdocProcessingException>”,该接口传入参数为对象,对像中包含加密口令,Maintain对象,其中Maintain对象中包含上百个字段,接口方法中有详细的日志日录,方法返回的是一个已定义对象。在QAD调用我方接口的过程中,并未产生相关日志记录。
分析:首先从返回消息格式上看,该返回消息并非是预定义的返回对象,从返回消息内容上看,该消息属于明显的500错误,也就说肯定是我方接口存在一些问题,但是具体是哪里出问题,现在不清楚。其次从问题中可以清晰的了解QAD并未调用到接口中方法,否则方法中的日志记录可以捕获到异常信息,从其他情况来看,QAD已经调用到我方接口,但是在调用进入方法之前出了一点小差错,预计可能是传入对象出错了,但是对象包含上百个字段,如何排查是哪个出错了,即便这次排查成功,那么下次呢。想到此我的汗毛都竖起来了,不过没关系,谁让咱是程序员呢。
查看全部