IIS安装测试错误详解

IIS安装测试错误详解
2010年11月10日
  很多朋友在安装好IIS之后,测试的时候会出现各种问题,这里针对我们常见的问题做一下分析,常见错误代码为403和405.这个就代表IIS本身的问题了,与程序无关
  错误代码:403
  这就表示IIS服务器出现错误,表示您没有权限访问或是服务器配置错误,请尝试以下操作:
  1、查看网站属性――文档
  看看启用默认文档中是否存在:index.asp index.htm index.html (最好全都有,没有可添加)
  2、查看网站属性――主目录
  A、本地路径是否指定正确
  B、是否勾选“脚本资源访问”?
  C、是否勾选“读取”?
  D、执行权限:纯脚本
  3、查看网站属性――目录安全性――编辑
  A、是否勾选“匿名访问”?
  B、用户名:IUSR_您的计算机名(不对,就点浏览选择)
  C、密码不用改,勾选“允许IIS控制密码”就可以了
  D、其它不用选
  4、查看网站属性――网站
  A、IP地址:全部未分配 或者 选择一个
  B、TCP端口:80 (最好不要改,改了访问方法就不一,特别提醒:有些软件会占用80端口,端口被占就启动不了IIS,例如:讯雷)
  5、打开控制面板――管理工具――计算机管理――本地用户和组――用户
  A、看看“IUSR_您的计算机名”此用户有没有启动,必须启动(说明:有红色的×表示没有启动)
  B、看看“IWAM_您的计算机名”此用户有没有启动,必须启动(说明:有红色的×表示没有启动)
  C、在“IWAM_您的计算机名”该用户上按右键――设置密码(密码要记住,后面还需要用上该密码)
  6、打开控制面板――管理工具――组件服务――组件服务――计算机――我的电脑――COM+应用程序
  A、在“IIS Out-Of-Process Pooled Applications”上按右键选择‘属性’――选择‘标识’,指定用户:IWAM_您计算机名(说明:可以点浏览查找);输入密码,密码上面步骤的密码。再次启动该服务,启动后它会动。
  B、在“IIS In-Process Applications”上按右键选择‘属性’――选择‘安全性’,将‘启用身份验证’勾去掉
  C、在“IIS Utilities”上按右键选择‘属性’――选择‘安全性’,将‘启用身份验证’勾去掉。
  特别提醒:有些朋友的组件无法启动,可能是您优化了XP服务,也可能是病毒导致,也可能是组件出差……这些就只能靠您处理了
  7、请检查“控制面板――管理工具――数据源 (ODBC)”,看看系统DSN 有没有Access数据库驱动,如果是空白的话,请添加一个。
  8、如果经过上面设置还不行话的,请注册以下组件,分别把它复制到运行中:
  A、regsvr32 %windir%\system32\VBscript.dll
  B、regsvr32 %windir%\system32\JScript.dll
  C、regsvr32 %windir%\system32\Inetsrv\Asp.dll
  最后,就是测试了……(如果还不行,建议您重装IIS,重作以上操作)
  错误代码:500
  之所以会出现IIS500 的错误,大部分是因为账号不同步的原因,可以通过下面的方法解决:(在开始之前,先需要确保你登陆的账号有管理权限,即计算机的管理员账号)。
  1.首先,我们一次打开“控制面板”――》管理工具――》计算机管理――》系统工具――》本地用户和组――》用户里面,找到一个IWAM_MACHINE 账号(MACHINE为你的计算机名),右键设置密码,如改成123456.
  2.按第一步的方法进入本地用户和组管理,在“本地用户和组”――“组”里面,右键点击Users组属性,添加进NT AUTHORITY\Authenticated Users 和NT AUTHORITY\Interactive两个用户成员,确定。
  3,在C:\Inetpub\AdminScripts目录下找到adsutil.vbs,用记事本打开此文件
  查找 issecureproperty = true ,将 issecureproperty = true 改为 issecureproperty = false,然后保存。
  4,用win+r打开“运行”对话框,输入“cmd”回车进入命令提示符。然后将目录切换到IIS提供的内置脚本的目录,即C:\Inetpub \AdminScripts。(不知道打命令的朋友请输入:cd C:\Inetpub\AdminScripts),然后输入下面的命令:
  adsutil.vbs SET w3svc/WAMUserPass "123456"
  会得到如下的提示:
  wamuserpass: (string) "123456"
  5,在未关闭的命令提示符狂口中再次输入(如关闭了需要重新将路径改过去):
  cscript synciwam.vbs -v
  会出来一大堆的字符,不用管,完成了之后exit。
  现在打开你的asp程序看,是不是可以正常浏览了。
  下面说明下上面的每一步在干什么,为什么要做上面的那几步。
  首先说明下IWAM是什么。它是安装IIS时系统自动建立的一个内置账号,主要用于启动进程之外的应用程序的Internet信息服务。IWAM账号的名字会根据每台计算机NETBIOS名字的不同而有所不同,通用的格式是IWAM_MACHINE,即由“IWAM”前缀、连接线“_”加上计算机的 NETBIOS名字组成。如我的计算机的NETBIOS名字是IVERSHUO,因此我的计算机上IWAM账号的名字就是IWAM_IVERSHUO,这一点与IIS匿名账号ISUR_MACHINE的命名方式非常相似。
  IWAM账号建立后被Active Directory、IIS metabase数据库和COM+应用程序三方共同使用,账号密码被三方分别保存,并由操作系统负责这三方保存的IWAM密码的同步工作。按常理说,由操作系统负责的工作我们大可放心,不必担心出错,但不知是BUG还是其它什么原因,系统的对IWAM账号的密码同步工作经常失败,使三方IWAM账号所用密码不统一。当IIS或COM+应用程序使用错误IWAM的密码登录系统,启动IIS Out-Of-Process Pooled Applications时,系统会因密码错误而拒绝这一请求,导致IIS Out-Of-Process Pooled Applications启动失败,也就是我们在ID10004错误事件中看到的“不能运行服务器{3D14228D-FBE1-11D0-995D- 00C04FD919C1} ”(这里{3D14228D-FBE1-11D0-995D-00C04FD919C1} 是IIS Out-Of-Process Pooled Applications的KEY),不能转入IIS5应用程序,HTTP 500内部错误就这样产生了。
  于是,我们要做的就是将这三方的密码同步起来。
  上面的第一步是自己指定一个密码,因为IIS生成的密码是一个长的杂乱随机的字符串不便于后面的修改。
  第二步一般不用设置,因为很多情况下默认已经是这样的了,如果不是请照着设置;
  第三步不是必须的,只是为了使后面显示密码的时候显示出来的是明码而不是“***”这样的字符串;
  第四步,同步IIS metabase的密码,因为有第三步我们可以看到得到密码是否修改成功;
  第五步,同步COM+应用程序所用的IWAM_MYSERVER的密码。注意,这步必须在第四步完成的基础上来做。
  同时,上面的第五步也可以这样做:
  依次打开“控制面板”――(“性能和维护”)――“管理工具”――“组件服务”,在左边选择“控制台根目录”――“组件服务”――“计算机”――“我的电脑”――“COM+应用程序”, 然后在右边框里点右键“IIS Out-Of-Process Pooled Applications ”,选择“属性”,点“标识”选项卡,然后会看到IWAM_IVERSHUO这个用户嘛,你知道怎么做了,呵呵。
  如果报错无法进com+控制台(错误代码8004E00F-COM+无法与Microsoft分布式事务协调程序),
  在开始程序运行:
  msdtc -resetlog
  “COM+应用程序”里正常要有的应用程序一般为8个对象,如果没有IIS****项目则在控制面板/组件里重新安装IIS就会解决(这种情况大部分是因为IIS安装包的问题,可以使用我在上一篇文章中提供的IIS包再次安装看,再次提示:注意版本!)。
  COM+ Explorer
  COM+ QC Dead Letter Queue Listener
  COM+ Utilities
  IIS In-Process Applications
  IIS Out-Of-Process Pooled Applications
  IIS Utilities
  MS Software Shadow Copy Provider
  System Application
  或许还有很多朋友这样做了之后还是出现了asp程序无法正常工作的情况,主要表现在不涉及到数据库的操作都能做,但是涉及到数据库的就会报错(典型的会报错为:“数据库连接出错,请检查连接字串!”),而仔细检查了数据库连接并没有错误,或者上传到了服务器一切正常,但是在本机就出现数据库无法连接,这是什么原因呢?
  这种情况一般出现在系统所在的盘其文件格式为ntfs
  那么,你就要进行下面的操作了,很简单,但是很关键:
  打开系统盘下windows文件夹在temp文件夹上右键,属性,选择“安全”看列出来的用户里面有没有 MACHINE/IUSR_MACHINE(MACHINE是你的计算机名)这个用户。如有,选到这个用户修改其权限(至少都得有读的权限吧);如没有点击“添加”,在弹出来的对话框下部有个“高级...”按钮,点击它,然后在出来的对话框里点击"立即查找",得到一列用户,将上面提到的 MACHINE/IUSR_MACHINE选择,确定,返回,修改其权限。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装ModSecurity的步骤如下: 1. 下载ModSecurityIIS_2.9.4-64b.msi并进行安装。 2. 在C:\inetpub\wwwroot目录下创建一个名为modsecurity的文件夹。 3. 将C:\Program Files\ModSecurity IIS目录中的modsecurity.conf、modsecurity_iis.conf和unicode.mapping复制到C:\inetpub\wwwroot\modsecurity目录下。 4. 修改C:\inetpub\wwwroot\web.config文件,启用ModSecurity的设置,将"SecRuleEngine DetectionOnly"改为"SecRuleEngine On"。 5. 保存修改后的web.config文件,以启用ModSecurity。 以上是安装ModSecurity的步骤。需要注意的是,确保按照正确的版本进行安装,并按照引用资料中提供的指导进行配置。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [如何使用ModSecurity WAF 来保护Windows IIS - 安装](https://blog.csdn.net/allway2/article/details/126291817)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [Windows 安装ModSecurity 并通过 Logstash 同步到 Mysql 数据库](https://blog.csdn.net/qq_42986416/article/details/111319381)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值