ASP.NET对路径"xxxxx"的访问被拒绝的解决方法小结
发布时间:2023-07-07 20:08:41
在windows 2003下,在运行web应用程序的时候出现一下错误:
服务器无法处理请求,-->对路径“C:/temp/mytest.txt”的访问拒绝
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.UnauthorizedAccessException: 对路径“D:/temp1/MyTest.txt”的访问被拒绝。
解决方案一
在需要进行读写操作的目录下添加Network Service这个帐号,由于在iis 6.0中,默认的应用程序池中的标示用的是Network Service,所以在进程中是使用Network Service这个帐号运行来运行w3wp.exe进程,而当我们在运行VS 2003的时候需要对某一个目录下进行读写操作,看了一下该文件夹,发现没有Network Service,添加上该账号,同时选上FULL CONTROL,问题解决。
具体过程:对该文件夹按右键--属性--安全--添加--高级--立即查找--在“搜索结果”下选“NETWORKSERVICE”--确定--确定--确定
解决方案二
在IIS6.0中的默认应用程序池-->属性-->标示中把Net Service改成Local System该问题也可以解决。
什么是应用程序池呢?这是微软的一个全新概念:应用程序池是将一个或多个应用程序链接到一个或多个工作进程集合的配置。因为应用程序池中的应用程序与其他应用程序被工作进程边界分隔,所以某个应用程序池中的应用程序不会受到其他应用程序池中应用程序所产生的问题的影响。
Windows 2003同时支持两种工作模式,默认为ISS 6.0工作进程隔离模式。工作进程隔离模式防止一个应用程序或站点停止了而影响另一个应用程序或站点,大大增强了IIS的可靠性。那么如何设置两种工作模式呢?
启动IIS管理器,右击网站,选择“属性”,打开属性对话框(图1)。在IIS 6.0工作进程隔离模式下,所有的应用程序代码都在隔离环境中运行,它们是如何进行隔离的呢?Windows 2003新增了应用程序池,工作进程隔离模式允许客户创建多个应用程序池,每个应用程序池都可以有不同的配置。因为这些应用程序池直接从内核(而非WWW服务)接收它们的请求,所以性能和可靠性得到了增强。要隔离运行在同一台计算机上但属于不同网站的Web应用程序,需要为每个网站创建单独的应用程序池。
创建应用程序池
在IIS管理器中,打开本地计算机,右键单击“应用程序池”,选择新建“应用程序池” (必须在工作进程隔离模式下才能建立应用程序池) 。“应用程序池名称”框中,输入新的应用程序池名称。如果在“应用程序池 ID”框中出现的 ID (如:AppPool #1)不是您想要的,可进行重命名。如果您单击了“将现有应用程序池作为模板”,请在“应用程序池名称”框中右键单击想要用来作为模板的应用程序池。最后单击[确定]。
指派应用程序池
在 IIS 管理器中,右键单击您要为其指派应用程序池的应用程序,然后单击“属性”。 单击“主目录”选项卡,确认您正在指派的目录或虚拟目录的“应用程序名”是否已被填写。如果“应用程序名”框尚未被填写,请单击“创建”,然后输入名称。
在“应用程序池”列表框中,选择您想要为其指派的应用程序池的名称。最后单击[确定]。
在网上查询了很多信息,有下列几种解决方案:
1.可能是安装出了问题,重新安装 执行命令,aspnet_regiis -i,记得要生启啊
2.提升everyone的权限到可修改
3.提升aspnet权限:控制面板-管理工具-计算机管理-本地用户和组 找到ASPNET 隶属于里面加上Administrators
4.将iis虚拟目录删掉后重新建
5.在web.config文件中加入<identity impersonate="true"/>
6. 若要授予 ASP.NET 对文件的写访问权,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”添加适当的用户或组。突出显示 ASP.NET 帐户,选中所需访问权限对应的框。
everyone加写入权限
7.用xml文件保存系统选项设置,用asp.net写入,调试运行(ctrl+F5)正常。站点配置后运行报错:“对路径xxx.xml的访问被拒绝”。资源管理器->工具->文件夹选项->查看 不选"使用简单文件共享",右击xml文件,选"属性"点"安全"添加"aspnet",选"完全控制",即可。
猜你喜欢
- 首先你要明白24bit的bmp图片的基本信息:1像素占3个字节,头部占54个字节。好了,现在开始做验证码了,这里以4位验证码(大小为20(高
- 为了防止某些别有用心的人从外部访问数据库,盗取数据库中的用户姓名、密码、信用卡号等其他重要信息,在我们创建数据库驱动的解决方案时,我们首先需
- 说明和代码如下:<%@ language = vbscript%><% 
- 在开发WEB应用程序中,我们经常需要对文件系统中的驱动器、文件夹和文件进行处理,比如收集驱动器的相关信息;创建、添加、移动或删除文件夹和文件
- 错误代码错误消息说 明ASP0100Out of memory内存不足(不能分配要求的内存)ASP0101Unexpected
- 惊现!表面下的隐藏信息——浅谈信息可视化1910年,病卧床上的魏格那(德国气象学家,以“大陆漂移学说”闻名),无意地注视着墙上的世界地图……
- 1.MySQL中并发和隔离控制机制Meta-data元数据锁:在table cache缓存里实现的,为DDL(Data Definition
- 最近在做一个领券功能的时候,发现在一定并发下会出现重复领券的问题。使用度娘一顿搜索操作之后,发现可以使用分布式锁来解决这个问题。什么是分布式
- <% dim result,result1 str="ad_asp之家_nzlkjlkfjoj
- 如何做一个可以让人家申请使用的计数器? 好了,我们来做一个与页面分离的计数器,是文本型的啦。这也很简单,
- 目前计算机中用得最广泛的字符集及其编码,是由美国国家标准局(ANSI)制定的ASCII码(American Stand ard C
- 1 逻辑数据库和表的设计数据库的逻辑设计、包括表与表之间的关系是优化关系型数据库性能的核心。一个好的逻辑数据库设计可以为优化数据库和应用程序
- 环境:A机器和B机器都是LINUX系统,但由于B机器已经空间不足,所以停掉不停操作数据库的服务后 ,准备在A机器进行导出操作。导出语句 ex
- 背景:在做项目时,经常会遇到这样的表结构在主表的中有一列保存的是用逗号隔开ID。如,当一个员工从属多个部门时、当一个项目从属多个城市时、当一
- 关于采集-防采集的我想大家都很清楚。这个就不多说,采集最终还是从页面源代码入手,所以只要没有规律想采集就难!由于一天自己在策划某个网站的时候
- 以下为谷歌国际少年绘画大赛,小学1-3年级作品。看孩子们的logo创意,自愧呀! 彩色世界我们热爱温暖的阳光,“O”代表我们心中的太阳。我们
- 在Perfection kills上看到他去年写的一篇文章,关于HTML优化的,讲的很详细,姑且记录之,尽管里面有些东西并不能在目前的环境里
- 有过网页制作经验的朋友一定知道:一般来讲,把表格的边框定义为1px时,即border=1,而实际上是2
- 1.获取所有数据库名: SELECT Name FROM Master..SysDatabases ORDER BY Name 2.获取所有
- 先来说eval的用法,内容比较简单,熟悉的可以跳过。eval函数接收一个参数s,如果s不是字符串,则直接返回s。否则执行s语句。如果s语句执