当前位置:编程学习 > C#/ASP.NET >>

web service程序发布到iis后无法读文件了!!!!!!!!!!!!!!!!!!

我的web service程序的一个接口中有: FileStream aFile = new FileStream(@"E:\xxx.xml", FileMode.Open);
就是要访问该文件,
在vs中调试可以,
发布到iis后该句就无法执行了。
这是权限的问题吗?
请问这个问题如何解决啊? --------------------编程问答-------------------- 有权限操作这个文件夹吗? --------------------编程问答-------------------- 那要怎么设置,我要访问服务器上的某个文件怎么办 --------------------编程问答-------------------- 把文件所在的文件夹属性-安全里,添加everyone,给读写权限。 --------------------编程问答-------------------- 原因:
     应该是权限的问题。
解决办法:
     找到你做在的文件夹的目录,添加用户权限,其中管理员用户和你internet访问的来宾用户;
     你发布的程序自身的路径internet来宾用户是有权限的,其它的是无权限访问的。 --------------------编程问答-------------------- --------------------编程问答-------------------- 给这个目录添加ASPNET和IIS_WPG这两个用户相应的读写权限。 --------------------编程问答-------------------- Network Service用户权限给了吗 --------------------编程问答-------------------- 权限问题。给everyone权限有点危险。

asp.net在windows 2003的IIS6下是以NETWORK SERVICE用户运行的。
给NETWORK SERVICE对于你要读写的目录Security权限(文件夹属性-安全里)

--------------------编程问答-------------------- 权限问题。给everyone权限有点危险。

asp.net在windows 2003的IIS6下是以NETWORK SERVICE用户运行的。
给NETWORK SERVICE对于你要读写的目录Security权限(文件夹属性-安全里)
--------------------编程问答-------------------- 这是路径的问题,在iis下是通过网页的方式获取文件的。 --------------------编程问答-------------------- 这是路径的及权限问题
当然如果在网站目录的子目录也不存在权限问题 --------------------编程问答-------------------- 这是目录路径及权限问题
当然如果然文件放在网站目录的任何子目录下,是最好的,这样既不用考虑的目录路径获取方式(即比较简单就可以获取到),也不用考虑权限(这是继承的原因) --------------------编程问答-------------------- 这是由路径引起的权限问题,
如果你将文件 FileStream aFile = new FileStream(@"E:\xxx.xml", FileMode.Open中xxx.xml
文件放在网站的子目录下,路径获取简单,同时也不用考虑权限问题(权限是继承的)
--------------------编程问答-------------------- 首先你的获取文件路径方法就不对,应该采用string path = Server.MapPath("相对路径")的方式才好 --------------------编程问答-------------------- 应该是用户权限设置问题。 --------------------编程问答-------------------- network service给个创建和修改文件权限可能
还有IUSER --------------------编程问答-------------------- 正解
引用 3 楼  的回复:
把文件所在的文件夹属性-安全里,添加everyone,给读写权限。
--------------------编程问答-------------------- 在IIS管理器里,找到你发布的目录:
右键→属性→目录选项卡,将“脚本资源访问”,“读取”,“写入”都给勾上,然后吧执行权限设为“脚本和可执行文件”→确定
右键→权限→添加→高级→立刻查找→分别选择ASPNET和NETWORK SERVICE这两个账户(据说IUSER也要,我没有用)→为他们增加完全控制权限。 --------------------编程问答-------------------- 给NETWORK SERVICE对于你要读写的目录Security权限(文件夹属性-安全里)
建议你的XML文件放在网站子目录中,并用相对路径的方式访问XML文件...
补充:.NET技术 ,  Web Services
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,