簡體   English   中英

MVC 身份驗證在 IIS 中不起作用(在 IIS Express 中起作用)

[英]MVC Authentication not working in IIS (works in IIS Express)

我已經創建了一個帶有個人身份驗證的 MVC 項目,並且正在使用默認模板。 當我從 Visual Studio (IIS express) 中啟動應用程序時,我能夠查看所有公共頁面、注冊帳戶並登錄。 一切都很好。

但是,當我發布項目並將其托管在完整的 IIS 服務器(在 Windows Server 2016 上)時,我可以查看所有公共頁面,但注冊或嘗試登錄會產生以下一般錯誤:

在此處輸入圖片說明

我正在為該項目使用 LocalDb,我注意到部署的應用程序上的 Windows 身份是“NT AUTHORITY\\SYSTEM”,而 IIS Express 應用程序是 USER-DESKTOP\\User。 這個錯誤是由權限問題引起的,如果是,你如何解決這個問題?

另外,對已部署的項目使用 localDB 是不是很糟糕? 將只有兩個用戶使用該應用程序,並且他們都受信任。

將 localDB 用於已部署的項目完全不是一個好主意,
它僅用於開發人員測試。

當您在 vs 中開始調試時,localDB 已啟動。

如果你使用 SQL Express 會更好
https://go.microsoft.com/fwlink/?linkid=866658

嘗試按照以下步驟將站點應用程序池標識設置為本地系統:

1)打開iis管理器

2) 轉到應用程序池並選擇您的應用程序池名稱。

3)點擊高級設置。

4)有一個“流程模型”選項,在該選項下有一個“身份”選項。 默認情況下,這是應用程序池標識。 將其更改為本地系統,您就完成了。

在此處輸入圖片說明

將“加載用戶配置文件”設置為 True。

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM