IIS7 中網站的權限應該是什麼?
好吧,我只想說我不知道我在這裡做什麼。對不起,如果我讓這變得比它需要的更複雜,
我有一個網站,我已經在 IIS6 上設置了一段時間,它工作得很好。我使用了完全相同的站點並嘗試在 Windows Server 2008 Enterprise 32 位上進行設置。
以下是我遵循的步驟:
- 從伺服器獲取包含網站的 zip 文件。
- 解壓到inetpub/website/version。
- 它給出了需要遷移配置文件的錯誤,因此我授予 IIS_IUSRS 對主文件夾的讀取權限並執行遷移命令。
現在網站載入但我有兩個問題:
- 我無法編輯網站文件夾中的任何文件。我打開它,編輯它,當我嘗試保存它時顯示“拒絕訪問”。但是,如果我將文件從文件夾移動到我的桌面,我可以在那裡對其進行編輯並將其移回而不會出現問題。我以管理員身份登錄,並且管理員組對網站中的每個文件都擁有完全權限。
- 當我嘗試使用該網站時,有一些設置頁面可以編輯一些配置文件。我在嘗試使用這些頁面時總是遇到權限錯誤(網站的其餘部分功能正常):
載入配置文件時出錯:訪問路徑“C:\inetpub\website\version\XXXXX.tmp”被拒絕。(C:\inetpub\website\version\web.config)
- 我檢查了權限,發現 /config 文件夾設置為只讀,所以我取消選中它。它似乎沒有改變任何東西。
我在 IIS 論壇上讀到這些權限問題是因為我將其直接解壓縮到 inetpub 文件夾,因此它沒有繼承正確的權限。因此,我嘗試將其解壓縮到“我的文件”,然後按照建議將其移動到 inetpub 中,但這似乎沒有任何作用。
目前權限設置如下:
網站(只讀,管理員組具有完全控制權,使用者組和 IIS_IUSRS 具有讀取和執行權限)
版本(同上)
- /config(同上,除了 IIS_IUSRS 也有修改和寫入)
- web.config(同上)
全球資訊網根
所以有人知道我還需要做什麼才能擺脫這個錯誤嗎?
這聽起來像是使用者訪問控制問題。
啟用 UAC 後,即使您以本地管理員身份登錄,您也不是管理員組的成員。當您“以管理員身份執行”時,您僅“屬於”該組。因此,如果您“以管理員身份”啟動記事本,您將能夠毫無問題地編輯文件。所以答案是關閉 UAC 或授予您的使用者帳戶對文件的顯式修改權限。是的,這真的很煩人。
這樣就解決了您編輯配置文件的問題,但聽起來您希望應用程序也可以編輯文件。這聽起來有點危險,但如果您控制誰可以訪問應用程序,這可能是可以接受的。
最好的方法是將 Web 應用程序放在自己的應用程序池中,而不是預設的應用程序池中。然後將應用程序池上的身份設置為特定的使用者帳戶,而不是預設的網路服務帳戶。然後授予該帳戶對特定文件和/或文件夾所需的權限。