1、现象
a.用localhost访问,正常
b.用IP地址访问,则出现403错误
2、分析
a.怀疑是ACL问题,设置Everyone为完全控制,问题仍无法解决
b.无意中访问了"WebForm1.aspx",再访问该主页,可以正常访问
c.原来无法访问的aspx都是从asp转换过来的
3、结论
a.访问任一从asp转换过来,变为aspx的网页,若新的aspx的网页中未包含“Codebehind="index.aspx.cs" AutoEventWireup="false" Inherits="IQTest.WebForm1"”部分,则会出现403错误
b.解决方法:一定要保证访问所有从asp转换过来的aspx的网页之前,访问任一包含“Codebehind”的页面;本质的原因是asp.net应用程序未能启动,造成IIS的拒绝访问
同理,可见当asp.net应用程序超时被回收,之后提交的页面也会出现此403错误!
注:不包含“Codebehind="index.aspx.cs" AutoEventWireup="false" Inherits="IQTest.WebForm1"的aspx页面可以正常访问。