• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ASP.NET > ASP.NET对路径"xxxxx"的访问被拒绝的解决方法小结

ASP.NET对路径"xxxxx"的访问被拒绝的解决方法小结

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了我对asp.net的理解,asp.net,asp net培训,asp和asp.net的区别,零基础学asp.net等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
在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,问题解决。
    具体过程:对该文件夹按右键--属性--安全--添加--高级--立即查找--在“搜索结果”下选“NETWORK SERVICE”--确定--确定--确定

解决方案二

在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",选"完全控制",即可。 </div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • ASP.NET对SQLServer的通用数据库访问类
  • ASP.NET对txt文件相关操作(读取、写入、保存)
  • ASP.NET对路径"xxxxx"的访问被拒绝的解决方法小结

相关文章

  • 2017-05-11详解.net循环、逻辑语句块(基础知识)
  • 2018-08-20浅谈Asp.net Mvc之Action如何传多个参数的方法
  • 2017-05-11CheckBox控件默认选中,提交时永远获得选中状态的实现代码
  • 2017-05-11asp.net for循环语句第1/2页
  • 2017-05-11在ASP.NET使用JavaScript显示信息提示窗口实现原理及代码
  • 2018-08-20.net core整合log4net的解决方案
  • 2017-05-11c#中过滤html的正则表达式
  • 2017-05-11ASP.NET 缓存分析和实践浅析提高运行效率
  • 2017-05-11ASP.NET验证码(3种)
  • 2017-05-11asp.net使用母版页中使用ajax脚本取数据

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • ASP.NET中Label控件用法详解
    • .Net WebApi消息拦截器之MessageHandler的示例
    • C#中使用SendMessage
    • asp.net checkbox 动态绑定id GridView删除提示
    • 如何在.NET Core应用中使用NHibernate详解
    • .NET 线程基础的使用介绍
    • MVC页面之间参数传递解析
    • vb.net借助剪贴板将图片导入excel内
    • DataTable多列合并问题轻松搞定
    • 在ASP.NET 2.0中操作数据之四:使用ObjectDataSource展现数据

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有