Closed tryit229 closed 7 years ago
通常這種很 general 的錯誤訊息,很有可能是亂報一通的,真正源頭的原因可能不是權限,而是別的因素造成。
先確定一下,多一層 HelloJanet 目錄,是你期望的結果嗎? 如果不是,把這層目錄拿掉看看是否 OK? 因為 ASP.NET 很多目錄都是要從 application root 開始算,如 ~/Bin, ~/App_Data 等等,如果漏掉你講的 create application 的話,那連 Bin 都會抓錯,大概也不只是權限問題了。
先試試排除多一層目錄的問題吧。通常會用 container 的方式,就不會掛那麼多 webapp 到 IIS 上了,會每個 webapp 獨立一個 container. 如果你要調整 URL 的目錄結構,會在前端的 reverse proxy 那端做對應。container 本身就是要切割得越單純越好。
如果真的要 create application, 那查看看 appcmd.exe 這個指令: https://technet.microsoft.com/en-us/library/cc772200(v=ws.10).aspx
確認後果然是多一層目錄的關係 移除多的一層目錄後就正常了
Hi Andrew 我在設好Container之後,會看到這樣的訊息在頁面上 You do not have permission to view this directory or page. 這讓我想到了,每次架好IIS服務時需要將它轉換為應用程式。 不知道是不是因為這個原因。 操作如下 docker run --name web011601 -d -p 80:80 microsoft/aspnet docker exec -it web011601 cmd ipconfig 檢查c:\inetpub\wwwroot是不是空的 docker cp c:\HelloJanet\ web011601:c:\inetpub\wwwroot 最後嘗試使用 icacls C:\inetpub\wwwroot\HelloJanet\App_Data /grant "IIS APPPOOL\DefaultAppPool":(OI)(CI)M /T 更改權限,但還是遇到相同的情況。