iis許可權設定及故障排除

2021-06-08 12:15:50 字數 3963 閱讀 5570

1、這裡有篇文章(虛擬乙個win2003做伺服器執行asp.net程式,共享資料夾許可權問題)認為是共享資料夾許可權的問題,不過我都可以在虛擬機器裡直接建立.aspx檔案,並且把**程式直接複製到虛擬機器裡也是同樣情況,所以可以確定是iis問題而不是共享資料夾許可權問題。(後來證實在虛擬機器裡直接建立aspx是可以的,確實是虛擬機器的共享資料夾問題)

2、也非目錄檔名問題,我把共享資料夾的檔案路徑全部都設為英文,仍然是那個錯誤。

3、甚至我還按這裡說的放到根目錄下,作為乙個虛擬目錄而不是**,也不行。

4、按這裡說的把檔案所在的目錄設定為應用程式,在屬性-主目錄中設定,卻出現了另外一種情況:

伺服器應用程式不可用

您試圖在此 web 伺服器上訪問的 web 應用程式當前不可用。 web 瀏覽器中的「重新整理」按鈕重試您的請求。

管理員注意事項: 詳述此特定請求失敗原因的錯誤資訊可在 web 伺服器的系統事件日誌中找到。請檢查此日誌項以查明導致該錯誤發生的原因。

5、後來我還是把**檔案移到虛擬機器中 ,新建了乙個站點,沒有進行其他配置,無意竟發現可以了,一切正常。

檢視了下正常狀態下的許可權和應用伺服器設定,現在,可以找出這個問題的真正原因了:

iis6.0的預設設定是(我推算出來,而且還再虛擬了個2003才驗證得出的結論啊):

1、預設**的許可權安全裡沒有everyone組

2、aspnet_client及下級目錄的許可權安全裡有everyone組

3、預設**有建立乙個應用程式「預設應用程式」

4、aspnet_clent沒有應用程式,需要自己建立。

5、新建站點或目錄沒有everyone組。無論此站點或目錄的上級資料夾是否有everyone許可權。(第一次新建站點或目錄都只開放administrators跟system許可權)

6、新建站點或目錄會新建應用程式,無論此應用程式的上機目錄或**是否有應用程式。

7、 但iis有個特性,就是建立新站點時的許可權並非按他預設的設定,而是按你上一次的設定而建立。比如上次如果給某個**開放everyone許可權,那麼這次 新建的**就會是everyone許可權的。反之則建立的**或目錄沒有everyone許可權。上面的3、4兩點就失效了。

8、不過應用程式設定並無這個特性,新建站點或目錄時都會自動建立應用程式。

而aspx**需要正常執行的配置為:

1、許可權安全組裡必須包含ereryone。而iis6裡的那個「預設**」下的aspnet_client目錄安全裡就有everyone許可權 組,所以才如上面第三點說的,有人把**放到預設**的目錄下就可以了。注意:「預設**」安全裡並無everyone組,所以我之前做的把**放在跟 aspnet_client並列的目錄是不行的,因為那樣跟隨的就是「預設**」的目錄安全設定,沒有開放everyone許可權。

2、必須建立應用程式,不管是**還是虛擬目錄。不過預設其實都是幫我們建立好的,

錯誤速查:

1、.html可正常訪問,訪問.asp出現:http/1.1 新建應用程式失敗;訪問aspx檔案出現:

無法顯示網頁

您正在查詢的頁當前不可用。 **可能遇到支援問題,或者您需要 調整您的瀏覽器設定。

….找不到伺服器或 dns 錯誤

internet explorer

則是整個站點都沒有建立應用程式(不管整個站點是不是everyone許可權)

2、.html可正常訪問,.asp可正常訪問;而任何.aspx都出現:

伺服器應用程式不可用

您試圖在此 web 伺服器上訪問的 web 應用程式當前不可用。 web 瀏覽器中的「重新整理」按鈕重試您的請求。

管理員注意事項: 詳述此特定請求失敗原因的錯誤資訊可在 web 伺服器的系統事件日誌中找到。請檢查此日誌項以查明導致該錯誤發生的原因。

則應該是整個**或整個目錄都沒有everyone許可權(肯定有建立應用程式,否則就是上面的那種情況了)

4、.html可正常訪問,.asp可正常訪問;而.aspx正常或出現:

「/」應用程式中的伺服器錯誤。

——————————————————————————–

配置錯誤

說明: 在處理向該請求提供服務所需的配置檔案時出錯。請檢查下面的特定錯誤詳細資訊並適當地修改配置檔案。

分析器錯誤資訊: 載入配置檔案時出錯: 由於訪問被拒絕,未能開始監視對「c:\inetpub\wwwroot\chenfangyi.com\web.config」的更改。

源錯誤:

[沒有相關的源行]

原始檔: c:\inetpub\wwwroot\chenfangyi.com\web.config 

行: 0

——————————————————————————–

版本資訊: microsoft .net framework 版本:2.0.50727.832; asp.net 版本:2.0.50727.832

這就是我一開始出現的問題。這樣則說明該站點(上級的上機目錄)有應用程式,有兩種可能:(1)、當前虛擬目錄既沒有建立 應用程式也沒有開放everyone目錄(比如開始時我把虛擬目錄架設在預設**下,就是這個情況)。(2)、雖然有建立應用程式,但許可權無法更改(比如 我開始時把網路上的芳鄰裡的目錄設為**或者某個目錄就老出現這個情況) 。

第一種情況很好解決,為此目錄開放everyone許可權並建立應用程式即可。而第二種情況暫時還無法解決。

5、html可正常訪問,.asp可正常訪問;而.aspx出現:

「/chenfangyi.com11」應用程式中的伺服器錯誤。

——————————————————————————–

配置錯誤

說明: 在處理向該請求提供服務所需的配置檔案時出錯。請檢查下面的特定錯誤詳細資訊並適當地修改配置檔案。

源錯誤:

行 9: 

行 10: 

行 11: 

行 12: 

行 13: 

原始檔: c:\inetpub\wwwroot\chenfangyi.com\web.config 

行: 11

顯示其他配置錯誤:

——————————————————————————–

版本資訊: microsoft .net framework 版本:2.0.50727.832; asp.net 版本:2.0.50727.832

或類似的「應用伺服器錯誤」,那說明是站點(上級的上機目錄)有應用程式,但當前虛擬目錄卻沒有建立應用程式。為此目錄建立應用程式即可解決。

6、.html可正常訪問,.asp可正常訪問;而.aspx正常或出現:

「/」應用程式中的伺服器錯誤。

——————————————————————————–

編譯錯誤

說明: 在編譯向該請求提供服務所需資源的過程中出現錯誤。請檢查下列特定錯誤詳細資訊並適當地修改源**。

編譯器錯誤資訊: aspnet: 請確保此**檔案中定義的類與「inherits」屬性匹配,並且該類擴充套件的基類(例如 page 或 usercontrol)是正確的。

源錯誤:

行 10: using system.web.ui.htmlcontrols;

行 11:

行 12: public partial class default : system.web.ui.page

行 13: {

行 14: 

protected void page_load(object sender, eventargs e)

原始檔: c:\inetpub\wwwroot\chenfangyi.com\default.aspx.cs 

行: 12

顯示詳細的編譯器輸出:

或類似的錯誤,則說明iis設定正常,只是普通的aspx頁面**錯誤。

IIS許可權設定

經常一設定許可權就迷茫 iis web 伺服器的許可權設定有兩個地方,乙個是 ntfs 檔案系統本身的許可權設定,另乙個是 iis 下 預設 右擊屬性 虛擬目錄 面板上。這兩個地方是密切相關的。下面我會以例項的方式來講解如何設定許可權。指令碼資源訪問 使用者可以對 目錄的指令碼檔案有操作的許可權,前...

IIS許可權設定

指令碼資源訪問 使用者可以對 目錄的指令碼檔案有操作的許可權,前提是開啟讀取或者寫入許可權,開啟讀取許可權就有讀取指令碼檔案 源 的許可權,開啟寫入許可權就有寫入指令碼檔案的許可權。如果開啟寫入許可權不開啟指令碼資源訪問許可權,則只有上傳普通檔案的許可權,沒有修改為指令碼檔案字尾的許可權。6 個選項...

IIS許可權設定

iis許可權設定 雖然 apache 的名聲可能比 iis 好,但用 iis 來做 web 伺服器的人一定也不少。說實話,iis 還是不錯的,尤其是 windows 2003 的 iis 6 馬上 longhorn server 的 iis 7 也就要來了,相信會更好 效能和穩定性都相當不錯。但是許...