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頁面可以正常存取。