在本機調試ASP頁面需要輸入用戶名和密碼的問題處理
2024-09-10 21:54:38
供稿:網友
當我們在本機調試ASP動態網頁時,可輸入
http://localhost
http://本地計算機名
在當輸入 時,一般機器都需要輸入用戶名和密碼進入,這里將分兩種情況:
一種是剛新建IIS的,為了測試IIS,所以此時訪問即是“系統盤/Inetpub/wwwroot”下的iisstart.asp,隨之iisstart.asp又跳轉到localstart.asp,并同時打開iishelp的?!發ocalhost”、“計算機名”都沒問題,但輸入127.0.0.1時,彈出對話框,需要輸入帳戶和密碼。
第二種情況是,建立了虛擬目錄,通過“localhost 虛擬目錄”和“計算機名 虛擬目錄”都能訪問,同樣是“127.0.0.1 虛擬目錄”不能訪問。
雖然同是相同的癥狀,但卻是不同的情況。
首先,先拋出第一條總的要訣:要使得輸入 能訪問,無論直接訪問,還是虛擬目錄,必須確保“匿名訪問”的打開。
那么現在就能快速解決第二種情況的問題,如下圖的操作:打開IIS,在“默認站點”上右鍵,彈出菜單選擇“屬性”,打開面板,選擇“目錄安全”進行“編輯”,此時,假如“匿名訪問”前沒有勾選,選擇勾選,“確定”就能解決這個問題。
此時訪問 “127.0.0.1 虛擬目錄的” 第二種已經解決
不過這個問題,碰到的人比較少,并且就這樣簡簡單單的勾選了還不算回事,再往下看。
此時單獨測試 127.0.0.1 雖然也沒有了要求密碼輸入對話框,但新的問題出現了,同樣,此刻輸入http://localhost 同樣的是如此的錯誤,這也就是很多人反饋的:
錯誤類型:
Microsoft VBScript 運行時錯誤 (0x800A0046)
沒有權限: 'GetObject'
/localstart.asp, 第 40 行
那么現在就先停在這,分析下原因
開始沒有“匿名訪問”,需要提供帳戶密碼;現在有了“匿名訪問”,則出現了錯誤。注重!這是針對直接 127.0.0.1 訪問而言的。
那么“匿名訪問”就是提供的帳戶和密碼,才使得“127.0.0.1 虛擬目錄”的問題得到解決,當然也解決了直接“127.0.0.1”訪問的部分問題(不需要帳號密碼了)
說明這個“匿名帳戶”是有用的。
但現在要解決這個新出來的問題:Microsoft VBScript 運行時錯誤 (0x800A0046) 沒有權限: 'GetObject'
通常被提供的方法是:單獨對“iisstart.asp”和“localstart.asp”取消“匿名訪問”
要解決“(0x800A0046) 沒有權限: 'GetObject'”的方案是“單獨”對這兩個文件進行取消“匿名訪問”
具體操作流程:在IIS中選擇“localstart.asp”文件,右鍵,彈出菜單選擇“屬性”,打開面板,選擇“文件安全性”進行“編輯”,取消“匿名訪問”訪問前的選擇。
同樣的操作流程對“iisstart.asp”再進行一般。
那么現在“http://localhost ”已經能訪問,解決了Microsoft VBScript 運行時錯誤 (0x800A0046) 沒有權限: 'GetObject'的問題。
到此,再來分析下:
1,要使得127.0.0.1能訪問必須要設置“匿名訪問”
2,要使得“iisstart.asp”和“localstart.asp”能正常訪問,必要要單獨設置取消“匿名訪問”
經過了如上設置后,localhost,localhost 虛擬目錄,127.0.0.1 虛擬目錄都能正常訪問,就剩下單獨的 127.0.0.1 訪問的情況,以上的分析似乎又是相矛盾的