ASP.NET 2.0项目发布错误的解决方法

2010-08-28 10:50:35来源:西部e网作者:

使用环境:
    .NET Framework 2.0 + Microsoft Windows Server 2003 SP1 + IIS6.0

使用过程:

    发布网站到一个文件夹(名称为WebSite)下,在IIS6.0中设置一个虚拟目录(名称为WebSite),然后将其“本地路径”属性指向到发布的那个文件夹。

    在 ASP.NET 2.0 的项目中编译、运行都是成功的,但是按上述情况设置后,访问网站出现以下两个错误。在网上查了一下资料,得到的解决方法。现将它们收集整理出来。

遇见的错误一:

配置错误
说明: 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。 分析器错误信息: 在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的节是错误的。如果在 IIS 中没有将虚拟目录配置为应用程序,则可能导致此错误。


解决方法:[1]
需要将在IIS6.0 将那个虚拟目录设置成为应用程序。
步骤如下:
(1)打开IIS 6.0
(2)选择“默认Web站点”。
(3)选择那个虚拟目录并用右键打开其属性页
(4) 选择“虚拟目录”选择项卡
(5)在该选项卡中的“应用程序设置”属性旁边单击第一项的“创建”,“应用程序名”属性
的值由灰色变成了白色,并自动填写了它的属性值。
以上步骤就把该虚拟目录设置成为应用程序。


遇见的错误二:

编译错误
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。

编译器错误信息: CS0016: 未能写入输出文件“c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\website\2204cb73\26c77319\App_GlobalResources.mcbv6w-k.dll”--“拒绝访问。 ”

源错误:

[没有相关的源行]

源文件:    行: 0


显示详细的编译器输出:
.......(省略)

Microsoft (R) Visual C# 2005 编译器 版本 8.00.50727.42
用于 Microsoft (R) Windows (R) 2005 Framework 版本 2.0.50727
版权所有 (C) Microsoft Corporation 2001-2005。保留所有权利。

error CS0016: 未能写入输出文件“c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\website\2204cb73\26c77319\App_GlobalResources.mcbv6w-k.dll”--“拒绝访问。 ”
--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:2.0.50727.42; ASP.NET 版本:2.0.50727.42

解决方法:[2]
给系统盘的 windows/temp 目录设置权限。
解决步骤:
(1)打开系统盘下windows/temp 目录。
(2)右键单击该目录,并选择属性。
(3)选择“安全”选择项卡,给用户Network service(如果是win2000则是asp.net用户)勾上部分权限。具体为:
1.读取和运行 2.列出文件夹目录 3. 读取。(如果还是报该错误,就再赋其他几项权限。: ) )

参考资料:
[1] http://nt.discuz.net/showtopic.aspx?topicid=2735&page=end
[2] http://www.cnblogs.com/lingyun_k/archive/2006/06/02/415494.html
原文地址:http://blog.csdn.net/scucj/archive/2006/12/26/1462932.aspx

关键词:ASP.NET