【问题标题】:Can not open database error from IIS无法从 IIS 打开数据库错误
【发布时间】:2012-12-02 02:29:25
【问题描述】:

您好,我第一次尝试在 IIS 上运行我的应用程序 fopr。 在 Visual Studio 上开发时发现一切正常,但是当我将应用程序添加到 IIS 时出现此错误:

    Cannot open user default database. Login failed.
    Login failed for user 'IIS APPPOOL\forum'.

    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

    Exception Details: System.Data.SqlClient.SqlException: Cannot open user default database.

当我从 Visual Studio 运行网站时,我应该怎么做?

编辑

我做了更多的挖掘,我设法发现我需要将我的应用程序池标识设置为 NetworkService 我这样做了,但现在又遇到了另一个错误:

无法打开物理文件“D:\Projects IDE\Visual Studio\MyWork\Websites\Forum\App_Data\ASPNETDB.MDF”。操作系统错误 5:“5(拒绝访问。)”。 尝试为文件 D:\Projects IDE\Visual Studio\MyWork\Websites\Forum\App_Data\ASPNETDB.MDF 附加自动命名数据库失败。存在同名数据库,或指定文件无法打开,或位于 UNC 共享上。

【问题讨论】:

  • 你用来连接数据库的连接字符串是什么?如果尝试通过在 Project | 中选择 IIS 来运行应用程序会怎样?属性 |网络?

标签: c# asp.net iis webforms


【解决方案1】:

请检查两个地方 1 访问 NetworkService 标识的文件夹(IIS 应用程序池的默认值)或此文件夹(IIS APPPOOL\forum) 2 连接字符串凭据。如果有“集成安全”。在那里提供特定的用户和密码。

【讨论】:

    【解决方案2】:

    我收到此非显式错误是因为我在负责身份验证的服务上将应用程序池设置为 .NET 2.0,而不是 .NET 4.0。通常,当框架不正确时,会显示有关无法识别的框架 .dll 的不同类型的错误,但在这种情况下不会。如果发生这种情况,请检查以下内容:

    1. after IIS APPPOOL 是当前进程在其下运行的应用程序池的名称。在您的情况下,有一个名为 forum 的 AppPool。
    2. 检查应用程序池是否使用正在运行的应用程序所需的更正管道和 .NET Framework。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-18
      • 2021-10-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多