HTTP错误500.19 - 内部服务器错误0x80070003无法读取配置文件

时间:2016-04-27 03:54:34

标签: asp.net web-config

当我发布我的应用程序并将其从开发服务器移动到生产服务器时,我收到了上述错误。以下是错误详情。

  

详细错误信息

     

模块IIS Web核心

     

通知BeginRequest

     

处理程序尚未确定

     

错误代码0x80070003

     

配置错误无法读取配置文件

     

配置文件\?\ C:\ inetpub \ wwwroot \ WorkmenCompTest \ web.config

     

请求的网址http://localhost:80/wictest

     

物理路径C:\ inetpub \ wwwroot \ WorkmenCompTest

     

登录方法尚未确定

     

登录用户尚未确定

此网站之前曾使用过,但最近由于此错误,已发布的版本停止运行。据我所知,唯一的变化是通过nuget安装iTextSharp和iTextSharp xmlworker。

我尝试过但没有成功:

  1. 将站点文件夹的修改权限授予Everyone
  2. 检查web.config文件,并使用旧版本的web.config文件(从网站工作时开始)。
  3. 卸载iTextSharp和iTextSharp XMLWorker
  4. 该项目仍然可以在Visual Studio中运行。

4 个答案:

答案 0 :(得分:17)

这已经解决了。该错误是由文件夹名称与虚拟目录的路径不匹配引起的。哇,我感到愚蠢。

答案 1 :(得分:1)

这是因为IIS中的物理路径不同。要更改应用程序内容的物理路径

您可以使用用户界面(UI),在命令行窗口中运行Appcmd.exe命令,直接编辑配置文件或编写WMI脚本来执行此过程。 用户界面 使用UI

Open IIS Manager. For information about opening IIS Manager, see Open IIS Manager (IIS 7).

In the Connections pane, expand the Sites node and click to select the site in which your application runs.

In the Actions pane, click View Applications.

On the Applications feature page, select an application from the list and then click Basic Settings in the Actions pane.

In the Physical path box, change the path of the application content.

Click OK.

答案 2 :(得分:0)

DefaultAppPool应用程序池在网络服务帐户下运行。此帐户是计算机的本地帐户,此帐户在另一台计算机上不存在。确保将DefaultAppPool应用程序池配置为使用域用户的帐户。然后,您可以在WorkmenComp文件服务器上使用相同的帐户。或者,您可以在WorkmenComp文件服务器上创建工作组帐户。

答案 3 :(得分:0)

检查应用根目录下 - applicationhost.config 文件夹下的 .vs\lpsWeb-UI\config 文件。

在配置文件的站点部分下检查物理路径指向什么。

如果你修改那些你应该能够解决问题。