XinL

导航

开发中的技术问题 二

在Windows Server 2003中开发web程序中遇到的问题:
1 “没有相关的源行”的错误
    错误:
//-----------------------------------------------------

编译错误
 说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当的修改源代码
编译器错误信息: cs0016:未能写入输出文件
"c:"WINDOWS"Microsoft.NET"Framework"v2.0.50727"Temporary ASP.NET Files\"root"...."*.dll--“拒绝访问”
源错误:
  [没有相关的源行]
//------------------------------------------------------
     原因:应用程序运行时产生的临时文件需要存放到c:\windows\temp 文件夹下 而运行基于microsoft  .net framework 框架下的应用程序需要对temp 具有读写的权限 ,所以程序运行产生的临时文件不能存储或读取 ,或者路径不存在的情况下都会产生编译错误。
    解决方法:
1  设置c:windows\temp 目录访问权限 temp--> 属性-->安全-- > 添加network service -->并赋予其权限为 读 和 写--> 确定(注意:操作系统为windows server2003 framework  版本在 1.1及以上)
2 设置发布网站的程序目录中bin文件夹的权限 同样添加 network service 并设置权限为读取、运行  
3 执行以上两步操作设置后问题解决。

参考来源:http://jhxk.javaeye.com/blog/420501

2 向服务器保存文件时出现无法访问路径的错误
   解决方法:在文件夹的安全属性中增加Network service用户,并设置读写权限


附加知识:
    Network Service:可参见摆渡百科的定义。其中一段为“Network Service 帐户在创建时不仅仅考虑了在 IIS 6 中的应用。它还具有进程标识 W3WP.exe 的绝大部分(并不是全部)权限。如同 ASPNET 用户为了运行 ASP.net 应用程序,需要具有 IIS 5 服务器上某些位置的访问权限,进程标识 W3WP.exe 也需要具有类似位置的访问权限,而且还需要一些默认情况下没有指派给内置组的权限。”
    其实就是为asp.net的运行帐户设置权限

PS。概念有点乱,自己理不清楚了

posted on 2009-08-18 15:27  XinL  阅读(158)  评论(0编辑  收藏  举报