当前位置:首页 » 文件传输 » curl库ftp协议
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

curl库ftp协议

发布时间: 2023-01-26 09:42:49

㈠ 如何使用ftp用curl命令上传文件

使用ftp用curl命令上传文件方法:
第一种:

server端有现成的ftpserver:

上传的option是 -T
比如我们向ftp传一个文件: curl -T localfile -u name:passwd ftp://upload_site:port/path/
curl -T hadoop_oom.log -u user:1234567 ftp://1.1.1.1/

第二种:
nginx上传: (需要加上--with-http_dav_mole模块 )
./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_mole --with-http_ssl_mole --with-http_dav_mole
make && make install

要创建上传的临时目录
mkdir -p /dev/shm/client_body_temp
nginx http段加入:
client_body_temp_path /dev/shm/client_body_temp 1 2;
client_max_body_size 1024m; #这个根据实际的情况,如有大文件upload需要加大,不然nginx抛413 error

然后:
server
{
listen 80;
server_name 1.1.1.1;
index index.html index.htm index.php;
root html;
autoindex on;
dav_methods PUT; #这个是重点默认不允许PUT

测试:
curl -T hadoop_oom.log http://1.1.1.1/

安全注意事项:
一般需要单独location一个目录单独做upload用。或者这个nginx只做upload上传单一用途。
然后就是nginx allow了,一般机房都是内网打通的,只允许idc内网才能PUT。不然就能任意PUT到你的upload机器了。

㈡ curl和libcurl的区别简介

curl简介
curl是利用URL语法在命令行方式下工作的开源文件传输工具。
它支持很多协议:DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP,
LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet and TFTP。
curl同样支持SSL证书,HTTP POST, HTTP
PUT,FTP上传,基于表单的HTTP上传,代理(proxies)、cookies、用户名/密码认证(Basic, Digest,
NTLM等)、下载文件断点续传,上载文件断点续传(file transfer resume),http代理服务器管道(proxy
tunneling)以及其他特性。
curl是瑞典curl组织开发的,curl的官网是http://curl.haxx.se/,可以从官网获取它的源代码和相关说明。
libcurl简介
libcurl为一个免费开源的,客户端url传输库,支持DICT, FILE, FTP, FTPS, Gopher, HTTP,
HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP,
SMTP, SMTPS, Telnet and TFTP等协议。
同curl一样,libcurl也支持SSL证书,HTTP POST, HTTP
PUT,FTP上传,基于表单的HTTP上传,代理(proxies)、cookies、用户名/密码认证(Basic, Digest,
NTLM等)、下载文件断点续传,上载文件断点续传(file transfer resume),http代理服务器管道(proxy
tunneling)等。
libcurl是高度可移植的,可以工作在不同的平台上,支持Windows,Unix,Linux等。
libcurl是免费的,线程安全的,IPV6兼容的,同事它还有很多其他非常丰富的特性。libcurl已经被很多知名的大企业以及应用程序所采用。
可以在这里获取libcurl的源码及相关文档。
curl与libcurl对比
相同点
curl和libcurl都可以利用多种多样的协议来传输文件,包括HTTP, HTTPS, FTP, FTPS, GOPHER, LDAP, DICT, TELNET and FILE等。
不同点
curl是命令行工具,可以通过shell或脚本来运行curl。curl底层所使用的库是libcurl。
libcurl是一个库,通常与别的程序绑定在一起使用,如命令行工具curl就是封装了libcurl库。所以我们也可以在你自己的程序或项目中使用libcurl以获得类似CURL的强大功能。接下来将要介绍的PHP扩展就是对curl的一个封装。

㈢ CURL (FTP 方面)

1.FTP Directory listing

2.下载

3.上传

4.下载

5.删除文件

6.删除目录

7.创建文件夹

8.重命名文件

9.重命名目录

㈣ curl命令详解是什么

在Linux中curl是一个利用URL标准在cmd下工作中的文件传送工具,能够算是一款很强悍的httpcmd工具。它支持文档的发送和下载,是综合性传送工具,但按传统式,习惯性称Curl为下载工具。

1、curl指令是一个网络工具,其关键功能是根据http、ftp等方法下载文档,也可以文件上传,作为一个功能齐全的网络工具,curl指令与此同时支持HTTPS等诸多协议书,还支持POSTcookies验证从特定偏位处下载一部分文档,客户代理商字符串数组、速度限制、图片大小、时间轴等特点。

2、CURL是一个利用URL英语的语法在cmd下工作中的文件传送工具,1997年初次发售。它支持上传文件和下载,因此是综合性传送工具,但按传统式,习惯性称CURL为下载工具。

3、CURL还涵盖了用以软件开发的libcurl。cURL支持的通讯协议有FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Telnet、DICT、FILE、LDAP、LDAPS、IMAP、POP3、SMTP和RTSP。

㈤ curl和wget的区别和用法介绍

区别:1.curl是libcurl这个库支持的,wget是一个纯粹的命令行命令。
2.curl支持更多的协议。
3.curl 默认支持HTTP1.1(也支持1.0),而wget仅仅支持HTTP1.0规范。
4.curl在指定要下载的链接时能够支持URL的序列或集合,而wget则不能这样;
5.wget支持递归下载,而curl则没有这个功能。

Linux curl是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称url为下载工具。

用法:CURL 是使用URL语法的传送文件工具,支持FTP、FTPS、HTTP HTPPS SCP SFTP TFTP TELNET DICT FILE和LDAP。curl 支持SSL证书、HTTP POST、HTTP PUT 、FTP 上传,kerberos、基于HTT格式的上传、代理、cookie、用户+口令证明、文件传送恢复、http代理通道和大量其他有用的技巧。

wget是一个从网络上自动下载文件的自由工具,支持通过HTTP、HTTPS、FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理。wget名称的由来是“World Wide Web”与“get”的结合。

㈥ curl和wget的区别和用法介绍

1.curl是libcurl这个库支持的,wget是一个纯粹的命令行命令。
2.curl支持更多的协议。curl supports FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS, FILE, POP3, IMAP, SMTP and RTSP at the time of this writing. Wget supports HTTP, HTTPS and FTP.
3.curl 默认支持HTTP1.1(也支持1.0),而wget仅仅支持HTTP1.0规范。引用wget的man page中的一段话吧,Please be aware that Wget needs to know the size of the POST data in advance. It’s not quite clear how to work around this limitation inherent in HTTP/1.0. Although HTTP/1.1 introces chunked transfer that doesn’t require knowing the request length in advance, a client can’t use chunked unless it knows it’s talking to an HTTP/1.1 server. And it can’t know that until it receives a response, which in turn requires the request to have been completed – a chicken-and-egg problem.
4.curl在指定要下载的链接时能够支持URL的序列或集合,而wget则不能这样;
5.wget支持递归下载,而curl则没有这个功能。(这是wget的一个主要好处,wget也是有优势的,呵呵)

㈦ luacrul类库-ftp问题分析/解决

问题:使用smart_pub.kkf2中的 function t.upload(sftpTab) 函数ftp上传报错;

改函数使用了 LuaCURL库函数,网上先了解一下:

查了其他网站资料,对LUA的类库解释的很少,官网英文且解释的不全面,不容易理解,
所以参考php的libcurl库说明,语言不同,类似可以参考;
分析报错信息,初步理解为文件目录不存在,或者创建失败;定位:

查看系统关键源码设置:
源码【顺便在源码上加了注释,便于理解其他参数】

新增设置

测试问题解决:

还好之前使用过curl工具模拟webservice、rest客户端报文测试,相对通用理解一些,curllib库还有很多功能可能总结学习;

参考 http://luaforge.net/projects/luacurl/
http://underpop.free.fr/l/lua/luacurl/
https://www.cnblogs.com/endv/p/8433889.html

㈧ curl-s和curl区别

curl-s和curl区别如下:
curl命令是个功能强大的网络工具,可用来请求Web服务器,支持FTP、FTPS、HTTP、HTTPS、SMTP、Telnet、TFTP等协议,底层使用的是libcurl库。可用于文件上传、下载,还可以用来模拟客户端请求,抓取网页、网络监控等。
curl-s是沉默,静默模式,意思为不输出进度表或错误信息。

㈨ curl什么意思

curl的意思是:卷曲;蜷缩;鬈曲。

PHP、cURL函数:

PHP支持的由Daniel Stenberg创建的libcurl库允许你与各种的服务器使用各种类型的协议进行连接和通讯。libcurl支持http、https、ftp、gopher、telnet、dict、file和ldap协议。

libcurl同时也支持HTTPS认证、HTTP POST、HTTP PUT、 FTP 上传(这个也能通过PHP的FTP扩展完成)、HTTP 基于表单的上传、代理、cookies和用户名+密码的认证。