天天看点

IIS发布ASP.NET应用常见错误及解决办法

常见错误

配置文件错误

具体错误类型为

HTTP 错误 500.19 - Internal Server Error

,错误描述为

由于权限不足而无法读取配置文件

该错误的可能原因是:

  1. 如同描述所说的,由于权限不足,无法读取配置文件。这时候只要向文件添加适当的权限即可。
  2. 配置文件

    web.config

    不存在或者格式不正确。如果不是第一种原因,那么就有可能是这个原因,需要查看配置文件内容,看看是否存在问题。如果需要生成一个新的配置文件,可以先删除旧配置,然后在IIS中随便新建一点配置,再删除它们。这样IIS就会生成一个空白配置文件。
  3. IIS没有安装相关功能,导致无法读取特定的配置文件。当我向IIS发布ASP.NET Core程序的时候,同样出现了这个错误。后来我安装了相应的工具,网站就可以正常访问了。

权限错误

如果错误信息类似下面这样,说明IIS没有访问文件夹的权限。向文件夹增加

IUSR

权限即可。

“/”应用程序中的服务器错误。

访问被拒绝。

说明: 访问服务此请求所需的资源时出错。您可能没有查看所请求的资源的权限。 

错误消息 401.3: 您无权使用您提供的凭据查看此目录或页(由于访问控制列表而导致访问被拒绝)。请让 Web 服务器的管理员授予您访问“XXX”的权限。
           

解决办法

添加IIS_IUSRS权限

如果出现访问权限类型的错误,需要向Web文件夹授予相关权限,以便IIS能够读取并修改文件夹和配置文件的内容。

首先在IIS中点击需要设置权限的网站,然后在右侧菜单栏中点击

编辑权限

,或者直接在对应的文件夹上点击右键并选择属性。不管是用哪种方法,都应该能打开文件夹属性对话框。

IIS发布ASP.NET应用常见错误及解决办法

文件夹属性

点击安全选项卡,然后点击

编辑

按钮,打开权限对话框。

IIS发布ASP.NET应用常见错误及解决办法

权限对话框

点击

添加

按钮,然后输入

IIS_IUSRS

并搜索。找到这个用户组之后点击确定。

IIS发布ASP.NET应用常见错误及解决办法

用户搜索

由于IIS需要适当的权限修改文件夹中的配置文件,所以在权限对话框中为

IIS_IUSRS

设置允许

完全控制

。然后一路确定即可。

添加IUSR权限

解决方法类似上面,只不过这次添加的用户为

IUSR

安装

如果向IIS发布ASP.NET Core应用程序,可能出现无法读取配置文件的错误。这时候尝试安装

.NET Core Windows Server Hosting

工具。然后重启IIS,检查问题是否修复。

继续阅读