• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ASP.NET访问共享文件夹的详细步骤

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

假设找找看的ASP.NET程序在A服务器,索引文件在B服务器的ZzkIndex共享文件夹中,访问地址是\\192.168.18.18\ZzkIndex\。要实现就是在A服务器的ASP.NET程序中能读写共享文件夹\\192.168.18.18\ZzkIndex\中的文件。

具体操作步骤:

(注:A服务器为ASP.NET程序所在服务器,B服务器为共享文件夹所在服务器)

①在两台服务器上建立相同用户名、相同密码的Windows帐户(A与B服务器都要建),比如假设这里用户名是ZzkIndexer,密码是zzk.cnblogs.com。

②取消两台服务器上的ZzkIndexer帐户的远程控制(Remote Control)权限(让这个帐户拥有尽可能少的权限),如下图:

③将B服务器上的ZzkIndexer帐户移出所有用户组(包含Users),如下图:

不属于任何用户组?是的,不要怀疑,已经过实践检验。

④在B服务器上创建共享文件夹ZzkIndex并给ZzkIndexer帐户授予写权限,有两个权限需要设置,一个是文件系统权限,一个是共享权限。

文件系统权限设置如下图:

共享权限设置如下:

⑤在A服务器的IIS中创建虚拟目录指向B服务器的共享文件夹,如下图:

点击“确定”后,如果出现访问拒绝(Access to the path '\\192.168.18.18\ZzkIndex' is denied.)的错误,不用管它。

⑥在A服务器的ASP.NET程序的web.config文件中,添加帐户模拟设置:

<system.web>
  <identity impersonate="true" userName="ZzkIndexer" password="zzk.cnblogs.com"/>
</system.web>

⑦在A服务器上,设置“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files”的文件系统权限,授予ZzkIndexer帐户修改权限(注:v4.0.30319为当前.NET Framework版本号)。 否则,运行时会出现错误:The current identity (ZzkIndexer) does not have write access to 'C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files'.

⑧万事具备,只欠测试!用一个简单的test.aspx页面测试一下,代码如下:

<%@ Page Language="C#" AutoEventWireup="true" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
  System.IO.File.Create(Server.MapPath("/ZzkIndex/cnblogs.txt"));
}
</script>

访问test.aspx之后,看B服务器的ZzkIndex共享文件中的内容:

小结

“解决问题+写博客”花费的时间可能是“解决问题+不写博客”的两倍,但写出来之后,你再也不用担心再次遇到这个问题,再也不会出现这样的郁闷。以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持极客世界。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
.NET微信公众号 用户分组管理发布时间:2022-02-05
下一篇:
详述ASP.Net中页面之间传参方法发布时间:2022-02-05
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap