1. ftp文件夹错误 详细信息 FTP终止会话
请正确配置你的防火墙/杀毒软件/FTP服务器和你的用户帐户权限. 基于你的问题得出以下分析结论:
一、在ICF(Internet连接防火墙)中没有添加FTP的访问 许可.
二、个人防火墙不允许FTP连接出站
三、本地用户帐户不具备访问FTP的权限
四、IIS服务器配置错误
五、FTP或HTTP服务被终止
解决方案: 一、在本地连接高级属性中设置防火墙的例外,添加21和80 端口,允许FTP和HTTP的出站连接 二、修改个人防火墙,添加21和80端口允许出站连接 三、修改FTP和HTTP访问权限和NTFS权限允许本地用户 帐户访问 四、正确配置FTP访问策略,主目录路径,访问权限,是 否匿名访问以及IP策略 五、IIS服务被终止,请重新启动IIS服务或计算机再试
参考网络知道 不能解决请HI我
2. 关于FTPClient文件夹重命名的问题
环境描述:
1.服务端:采用serv-u11.3版本的服务器管理工具作为ftp服务端
2.客户端:采用FTPClient 1.4.1组件作为客户端访问ftp服务器
我们在用FTPClient组件上传文件时,当上传的文件名为中文时,有以下几种情况:
一、当没有禁用serv-u服务端工具的上传下载编码时,即:
没有将域限制和设置里默认的opts-utf8禁止,在:域限制和设置---FTP设置选项卡---全局属性---高级选项---第三个多选框。
1.客户端代码中如果编码为:UTF-8,那么完全没有问题,中文命名的文件可以正常上传;参考以下代码:
/**
* FTP上传单个文件测试
*/
public static void testUpload() {
FTPClient ftpClient = new FTPClient();
FileInputStream fis = null;
try {
ftpClient.connect("此处填写服务器IP");
ftpClient.login("用户名", "密码");
File srcFile = new File("F:\\路由器配置.txt");
fis = new FileInputStream(srcFile);
//设置上传目录
ftpClient.changeWorkingDirectory("/admin/pic");
ftpClient.setBufferSize(1024);
ftpClient.setControlEncoding("UTF-8");//这里设置编码
//设置文件类型(二进制)
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
boolean temp = ftpClient.storeFile(new String("路由器配置.txt".getBytes("UTF-8"),"iso-8859-1"), fis);//编码转换
System.out.println("temp-------"+temp);
} catch (IOException e) {
e.printStackTrace();
throw new RuntimeException("FTP客户端出错!", e);
} finally {
IOUtils.closeQuietly(fis);
try {
ftpClient.disconnect();
} catch (IOException e) {
e.printStackTrace();
throw new RuntimeException("关闭FTP连接发生异常!", e);
}
}
}
2.客户端代码中如果编码为:GB2312,可以上传,但是上传的文件名为乱码,代码同上,改变红颜色的字的编码为GB2312即可;
二、一、当不选serv-u服务端工具的上传下载的默认编码时,即:
在:域限制和设置---FTP设置选项卡---全局属性---高级选项---第三个多选框不要勾选时;
1.客户端代码中如果编码为:UTF-8,文件不能上传,代码中,temp变量为false;
2.客户端代码中如果编码为:GB2312,文件正常上传,并且不为乱码,代码中,temp变量为true;
综合上述:将ftp服务器默认编码禁用,并且客户端代码中以GB2312 编码上传并转化较为合理,解决中文文件名的问题;另外,还有多种情况没有举例,大家可以测试一下,以便了解更为透彻。
3. ftp文件夹错误 详细信息:终止FTP会话
请正确配置你的防火墙/杀毒软件/FTP服务器和你的用户帐户权限. 基于你的问题得出以下分析结论: 一、在ICF(Internet连接防火墙)中没有添加FTP的访问 许可. 二、个人防火墙不允许FTP连接出站 三、本地用户帐户不具备访问FTP的权限 四、IIS服务器配置错误 五、FTP或HTTP服务被终止 解决方案: 一、在本地连接高级属性中设置防火墙的例外,添加21和80 端口,允许FTP和HTTP的出站连接 二、修改个人防火墙,添加21和80端口允许出站连接 三、修改FTP和HTTP访问权限和NTFS权限允许本地用户 帐户访问 四、正确配置FTP访问策略,主目录路径,访问权限,是 否匿名访问以及IP策略 五、IIS服务被终止,请重新启动IIS服务或计算机再试
4. 关于JAVA FTP 客户端程序异常
501 PORT not allowed after EPSV ALL~~~说明还是网络的问题,我对网络不熟~~~比如用ftp工具的时候,有些ftp站点必须采用被动模式才能连接。下面的你看看吧,或许有用,找网管看看应该使用哪种方式访问
***************************************************
3. EPSV命令
EPSV请求服务器在一个数据端口上侦听等待连接,它可以带参数。对它的响应是TCP端口号。响应的格式与EPRT参数的很象。这对实现上有很大的方便。而且响应还留下了网络协议和/或网络地址的空位,可以供以后使用。使用扩展地址进行被动模式的响应码必须是229,对它的解释如下:
2yz 主动完成
x2z 连接
xy9 进行扩展的被动模式
响应的格式如下:
<指示服务器已经进入初扩展的被动模式>
(<d><d><d><TCP端口><d>)
包括在括号内的字符串必须是EPRT打开数据连接的端口。具体如上所未,这里就不多说了。数据连接使用的协议必须和控制连接使用的协议和地址一致,下面是响应的一个例子:
Entering Extended Passive Mode (|||6446|)
标准错误代码500和501对EPSV已经足够了。在EPSV命令没有使用参数时,服务器会基于控制连接所使用的协议选择数据连接使用的网络协议。但是在有代理的情况下,这种机制可能不合适。因此客户也需要能够要求一个指定协议。如果服务器返回说明它在指定端口不支持此协议,客户必须发送ABOR(放弃)命令使服务器关闭连接,然后客户再使用EPSV命令要求使用特定的网络协议,具体格式如下:
EPSV<空格><网络协议>
如果请求的网络协议是服务器支持的,那就必须使用此协议;如果不支持,则返回522。最后,EPSV命令可以使用参数"ALL"通过网络地址翻译器,EPRT命令不再使用。下面是例子:
EPSV<空格>ALL
接收到此命令后,服务器要拒绝除了EPSV以外所有建立连接的命令。在下一节我们将详细说明此命令的功能。
**********************************************************************
5. ftp 错误 java.io.FileNotFoundException: STOU /goodtum/14.png
io异常FIlenotFoundException,文件没找到异常
意思是
STOU /goodtum/14.png
这个路径下的图片没有找到。意思说是这个文件夹下没有14.png这张图片。
6. FTP服务器连接异常怎么办
1\用户密码不正确
2\端口不正确
3\服务器没有正常工作,或关闭了ftp服务,可以先ping一下看是否正常
7. 如何解决FtpWebRequest基础连接已经关闭;接收时发生错误
方法:去掉FTP服务器中的中文欢迎词或改成英文欢迎词就不会发生错误,这是微软的一个BUG。
代码:
public void Upload(string filename)
{
//IP
string FtpIP = System.Web.Configuration.WebConfigurationManager.AppSettings["ftpIP"];
//用户名
string FtpUserName = System.Web.Configuration.WebConfigurationManager.AppSettings["ftpUsrName"];
//用户密码
string FtpPassord = System.Web.Configuration.WebConfigurationManager.AppSettings["ftpUsrPsw"];
FileInfo fileInf = new FileInfo(filename);
string uri = "ftp://" + FtpIP + "/SYS/" + fileInf.Name;
FtpWebRequest reqFTP;
// 根据uri创建FtpWebRequest对象
reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(uri));
// ftp用户名和密码
reqFTP.Credentials = new NetworkCredential(FtpUserName, FtpPassord);
// 默认为true,连接不会被关闭
// 在一个命令之后被执行
reqFTP.KeepAlive = false;
// 指定执行什么命令
reqFTP.Method = WebRequestMethods.Ftp.UploadFile;
// 指定数据传输类型
reqFTP.UseBinary = true;
// 上传文件时通知服务器文件的大小
reqFTP.ContentLength = fileInf.Length;
// 缓冲大小设置为2kb
int buffLength = 2048;
byte[] buff = new byte[buffLength];
int contentLen;
// 打开一个文件流 (System.IO.FileStream) 去读上传的文件
FileStream fs = fileInf.OpenRead();
try
{
// 把上传的文件写入流
//Stream strm = reqFTP.GetRequestStream();
Stream strm = reqFTP.GetRequestStream();
// 每次读文件流的2kb
contentLen = fs.Read(buff, 0, buffLength);
// 流内容没有结束
while (contentLen != 0)
{
// 把内容从file stream 写入 upload stream
strm.Write(buff, 0, contentLen);
contentLen = fs.Read(buff, 0, buffLength);
}
// 关闭两个流
strm.Close();
fs.Close();
}
catch (Exception ex)
{
throw ex;
}
}
8. 如何开启和关闭FTP功能
1,打开Windows10系统,在电脑上找到“控制面板”,点击打开。
9. ftp传输不了文件 显示严重文件传输错误
原因:设置错误造成。解决方法:重新设置服务器来解决此问题。
如下参考:
1.首先打开个人FTP软件,弹出如下界面。个人可选择直接在窗口中输入相关信息或通过网站管理器保存个人用户信息。使用站点管理器保存个人信息,如下图。
10. 为什么我的设置的FTP服务器自动关闭高手解答!
FrontPage 98网站FTP到NT服务器
在《个人电脑也能用上ASP》一文里我们讲的是单机环境上如何用PWS 4.0 创建个人网站,如果是配合的FrontPage 98,则在发布(Publish)时是传送到本机上Inetpub目录的wwwroot子目录中的,网站名称默认是_of_webname(这里的Webname是在您在第一次运行FrontPage创建网站时输入的目录名)。因此,对于单机来说,Publish没有什么特别要求或难点。但对于一个中、小型的公司来讲,如果需要每个用户将自己负责的部门或小组的网页上传到服务器上,则需要一些烦琐的手续了。我们经过多次实验,成功地实现利用FrontPage 98的FTP功能将Windows 98 工作站上的网页Publish到装有IIS的服务器上。总结如下(本文以Windows NT Server 4.0 自身提供的 IIS 2.0 为例):
大致步骤如下:
一、准备FTP服务及登录用户
二、设置FTP服务
三、传送
一、准备工作 1、如果尚未安装IIS(Microsoft Internet Information Server 2.0),则应先安装,安装路径为NT光盘I386目录下的InetSrv子目录,安装程序为Inetsetup.EXE。注意:如果不需要Gopher服务,可取消其复选框;如果系统已安装SQL等ODBC驱动程序,则也应将取消,否则会因版本冲突而在启动时出错;另外,在安装过程中,还会有一个是否允许Guest用户访问FTP服务的对话框,选择否对后结续过程并无大的影响。安装成功,会在启动菜单的程序出现Microsoft Internet Server(公用)组,其中的Internet 服务管理器将在下面的讲解中处于重要地位。 2、如果尚未为工作站用户配置帐号,则应到开始/程序/管理工具(公用)/域用户管理器中去添加,对FTP用户来说,只要是域用户(即Domain Users)即可。 3、本文中示例说明: 服务器计算机名称:Web_Server IIS 目录路径:D:\Inetpub 用户 FTP 目录路径:D:\Inetpub\wwwroot\lanhome FTP 用户名:Heatch Windows 98 工作站计算机名称:Heatch PWS 4.0 目录路径:C:\Inetpub FrontPage 98 网站目录路径:C:\Inetpub\wwwroot\lanhome
二、配置FTP服务 1、选取开始/程序/Microsoft Internet Server(公用)/Internet 服务管理器,出现一个Microsoft Internet Service Manager窗口,其中列出了当前正在进行的 Internet 服务。 2、双击FTP服务,进入Web_Server 的 FTP 服务属性窗口。 (1)首先是服务页框 TCP 端口确认当前运行的 FTP 服务的端口。采用默认端口 21。 连接超时值 以秒为单位设置服务器在等待一定的时间后断开与非活动用户的连接。其范围可在100到32,767 秒之间,作用是如果 FTP 协议不能关闭连接时,在此时间后系统会自动关闭所有连接。默认值为900秒。 允许匿名连接和仅允许匿名连接 此两项最为重要。前者设置所有匿名连接权限所使用的 Windows NT 用户帐号。只要安装了 IIS 中的 FTP 服务系统就会自动在 Windows NT 的"域用户管理器"和"Internet 服务管理器"中创建一个 IUSR_Web_Server 帐号(这里的 Web_Server 是计算机名称),要注意的是在安装后必须指定密码并将两个地方的密码设为一致。默认情况下,IIS为所有匿名登录创建并使用 IUSR_Web_Server 帐号。但是,你不能用这个用户名和密码在Windows 98工作站上来登录并访问 FTP 服务,因为它只用于 Windows NT ,而且该用户还应该有本地登录权力。一般说来,匿名 FTP 用户可以使用anonymous作为用户名,以电子邮件地址为密码来登录(这跟AceFTP程序中采用的默认用户ID一样)。 仅允许匿名登录的作用是防止使用有管理权限的帐号进行访问,选取此项后,即使是Administrator帐号也不能登录,FTP只能通过登录服务器进行本地访问来管理。 因此,对于内部网来说,可以取消仅允许匿名连接框。 (2)目录页框 选取添加按钮,出现目录属性窗口;单击浏览按钮,在选定目录窗口确定 FTP 服务要使用的目录路径,在本例中为D:\Inetpub\wwwroot\lanhome(注意,这里的lanhome是在wwwroot目录中新的子目录);选取访问方式的可写,单击确定返回;在目录属性窗口,选取虚拟目录单选按钮,在别名一栏输入lanhome(这样做的目的有两个,一是在 FTP 时仅指明lanhome即可而不必管其是位于哪个磁盘哪个目录;二则可以防止恶意者循原目录入侵);对于目录列表样式一项,由于大多数浏览器接受 UNIX 格式,所以为了最大的兼容性应选择 UNIX格式。 其它的采用默认值即可。
三、传送 这里假定我们已经将网页做好,需要上传到服务器以测试效果或供他人浏览。 (1)首先,在FrontPage Explorer的File菜单里选择Publish FrontPage Web或Publish图标; (2)在Publish FrontPage Web窗口,系统在将要传送的Web地址一栏里取的默认值是http://heatch/_of_lanhome(与我们文章开头提到的本地单机上一样),重新输入http://Web_Server,并单击确定; (3)在Microsoft Web Publish Wizad窗口,分别在FTP服务器名称和目录路径分别输入:Web_Server和 lanhome 。单击下一步; (4)接下来输入登录到该服务器的帐号和密码:heatch。单击完成; (5)系统以你提供的帐号和密码(此项一定不能空)在网络上搜索你提供的FTP服务器并试图登录;若一切正常,系统将开始将对两地的目录进行列表和转换(如果在 Windows 98 工作站上你是用的 PWS 4.0 提供的 FrontPage Server Extensions 而不是 FrontPage 98 本身的PWS,则如果你在网页使用了 FrontPage Active elements——如搜索表单、讨论表单等活动元件,系统会将使用了此类元件的网页列表出来,并警告说 IIS 中这些元件将无法使用); (6)如果登录成功,系统就开始传送,并给出一个动态的过程,显示共有多少个文件需要上传,正在传送的文件名,尚有多少个未上传以及还需要多少时间。 (7)现在,我们在工作站上启动IE,在地址栏输入http://web_server/lanhome,怎么样,是不是这样也建成了一个WEB服务器?!