好日子大家之间的直接连接..创建客户端PC和远程服务器的FRP
我devoloping中,我要实现文件上传一个Asp.Net Web应用程序,但有一点复杂:
为了更好地解释,应用程序服务器上的“A”。该文件需要上传到一个完全不同的服务器“B” ..
一旦客户端“C”上传文件通过该网站运行接口,该文件必须实际上传到服务器B.
技术上我已经达到了这个:
- 客户的动产,他希望从他的电脑上传,然后单击该文件的网页的回发期间“上传”
- ”,upoloads文件的服务器,但不保存
- 我从FileUploas控件拾取fileStream,并通过ftp将它发送到服务器“B”;
,但是通过这样做,实际上是文件传输两次(C - > A - > B),使文件的用户体验,上传时间比正常..
我的问题是:可以通过站点界面(在服务器“A”上运行)在“C”和“B”之间打开“直接”连接,以执行单个传输?很明显,我应该可以在下载过程中做同样的事情。
另一种方法(至少在上传过程中)应该是通过在服务器“A”上保存临时文件来“隐藏”双重传输,然后将其重新传输到“B”开始一个单独的任务,以便用户能够在“首次”上载后在网站上执行新的操作。
任何建议是极大的赞赏(甚至是完全不同的解决方案,我会再评估“兼容性”与我的项目)
谢谢你在前进,
阿尔贝托
注:我选择去FTP,因为客户端必须能够选择他想放置“B”服务器的位置(他可以使用“我们的”ftp,或者如果他有,发送文件),我认为FTP是最“兼容”和“快速设置”解决方案,可以独立于服务器“B”平台进行ftp管理。
嗨尤金,谢谢你的回答..我很抱歉不清楚..事实是,我在技术上不知道应该怎样连接C到B,但我认为更好opton是使用ftp。在我的设置中,客户端是一个简单的浏览器,必须使用在服务器“A”中运行的asp.net应用程序,而“B”必须以“透明”的方式用作文件服务器..我会看看PASV命令和命令通道(我甚至不知道它们的存在,但我会尽力弥补!!!)。 谢谢! – Alberto 2011-04-21 12:32:23
一个澄清,不要花我的时间在“无用”的任务(知识总是有用的):是否有可能复制你在我的案例中描述的系统: - 服务器A是我的ASP.net应用程序,我有完全控制 - C必须是一个普通的浏览器 - B必须是一个通用FTP服务器中的文件夹,除了知道服务器名称,用户名和密码(如果需要)之外,理论上我无法控制 – Alberto 2011-04-21 12:44:29
@Alberto如果C只是一个浏览器,那么我唯一能想到的就是让B运行一个Web服务器并指导用户上传(通过在新标签页/窗口中打开一个新页面)。在这种情况下,我的设计非常好;)方案不起作用。 – 2011-04-21 13:44:44