ASP.NET将文件写到另一服务器(图文教程)及注意事
有时,我们需要将客户端的文件上传到WEB服务器端,并进一步将文件存储到第三方文件服务器。这样的需求在实际应用中屡见不鲜,而实现这一过程,对于学习asp的你来说,或许是一个很好的实践机会。
实现这一功能的具体步骤如下:
在文件服务器B上创建一个共享文件夹,并为该文件夹设置一个用户,例如命名为DocShareUser。为这个用户分配共享文件夹的读写权限,确保文件上传和存储的顺利进行。
接着,在WEB服务器A上也需要创建一个同名的用户DocShareUser,确保用户名和密码与文件服务器B上的用户一致。
然后,在网站中添加一个虚拟目录。这个虚拟目录的物理路径需要指向服务器A的共享目录,路径需符合UNC规则,例如“\\ServerB\DocShare”。设置虚拟目录时,将传递身份验证用户设置为默认即可。
关于信任关系权限的问题,是文件上传的重要环节。为了向B服务器上传文件,需要建立信任关系。这个问题可以通过两种方式解决。
第一种方式是在Web.Config文件中增加运行模拟帐号,例如
第二种方式是在Global.asax中加载,这种方式会在网站一运行时就自动建立信任关系。具体实现可以通过System.Diagnostics.Process.Start(".exe", "use \\\\B服务器的IP\\共享文件夹 \"B服务器上的密码\" /user:\"B服务器上的用户名\""),这里的用户需要拥有写入共享文件夹的权限。(推荐使用这种方式,因为它不会影响网站的认证变化)
如果你选择了在Web.Config中增加模拟帐号的方式,还需要给ASP.NET的临时目录分配所建用户DocShareUser的读写控制权限。这个临时目录的路径视你安装的Framework版本而定,一般在C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files中。
在代码中,你可以通过Server.MapPath("虚拟目录")的方式获取上传地址,然后写入文件流即可完成文件上传。需要注意的是,IIS对上传文件有默认的4M限制,你可以通过修改WEB.config来扩大这个限制,例如添加
希望这篇文章能够帮助你更好地理解和学习asp文件上传和存储到第三方服务器的方法。这个过程不仅是一个技术挑战,也是一个实践应用的机会,相信通过实践,你会有更深入的理解和掌握。
编程语言
- ASP.NET将文件写到另一服务器(图文教程)及注意事
- 正则表达式工具 Match Tracer
- 用原生JS对AJAX做简单封装的实例代码
- jQuery链式操作实例分析
- 三种Webpack打包方式(小结)
- 微信小程序(二十一)switch组件详细介绍
- Ajax中的循环方案
- PHP中Laravel 关联查询返回错误id的解决方法
- php、mysql查询当天,查询本周,查询本月的数据实例
- 使用JS中的Replace()方法遇到的问题小结
- Thinkphp整合阿里云OSS图片上传实例代码
- jQuery ajax 当async为false时解决同步操作失败的问题
- 概述VUE2.0不可忽视的很多变化
- 详解VSCode配置启动Vue项目
- 显示非站点目录及映射网络磁盘路径的图片
- SQLServer2005触发器提示其他会话正在使用事务的上