如何把文件上传到另外一台服务器

来源:互联网 发布:如何判断协议数据单元 编辑:程序博客网 时间:2024/05/14 05:55
 原文:http://www.cnblogs.com/cnaspnet/archive/2008/09/23/716881.html

 

总结了网上几位大大的方法,终于调试通过,方法如下:

1,在文件服务器上,创建一个本地帐户,比如登录名:upload,密码:upload,注意在创建的时候选择“密码永不过期”,去掉勾选“用户下次登录时须更改密码”的选项;
2,在要共享的文件夹上点右键,选择“属性”-“安全”,增加upload帐户可以写入的权限;
3,在要共享的文件夹上点右键,选择“共享”,共享此文件夹,并在“权限”按钮点击后添加帐户upload可修改;

4.需要在应用程序服务器的站点下任意新建一个虚拟目录,然后“属性”--》“连接到另一台计算机”--》然后在路径里输入“\\文件服务器的IP\共享的文件夹名称”,确定即可
5,在另外一台 Web 服务器上,创建登录名和密码与上面完全相同的本地帐户。
6,在web.config里,启用模拟:      

web.config里添加的代码
<identity impersonate="true" userName="upload" password="upload" />

7(可选).web站点的Global.asax文件里加载一句话,让服务器站点启动的时候就和文件服务器建立信任连接
System.Diagnostics.Process.Start("cmd.exe", "net use \\\\文件服务器的IP\\共享的文件夹名称 \"123456\" /user:\"test\"");  

最后保存的时候还是按平时保存文件的方式就行。

protected void Button1_Click(object sender, EventArgs e)
{
  
string fileName= System.IO.Path.GetFileName(FileUpload1.PostedFile.FileName);
  FileUpload1.SaveAs(
@"\\192.168.3.1\free\"+ fileName);
}

注意:
1.以上步骤中的4,5必须按顺序操作,如果后来删除了虚拟目录,则需要也删除5中创建的用户,然后按照4,5的顺序再次创建即可(因为本人后来直接删除虚拟目录并重新创建,而没有删除5中的用户,出现了问题。)
2.在做完以上步骤需要继续完成下载或打开功能时,如果出现要求输入用户名和密码登录共享文件夹的情况,而设置文件服务器的本地策略无果的时候,在虚拟目录中重新创建一个默认站点之外的站点,指向这个共享文件夹即可(注意新建站点的端口是否冲突)。
0 1
原创粉丝点击