curl指定端口
Ⅰ 如果服务器端的ftp或http服务的端口号不是默认的21或80,如何使用curl命令下载文件
httpftp协议在使用默认端口的情况下,浏览器和软件在没有设置情况下会自动尝试连接该服务的默认端口。如在服务器上修改了其服务的默认端口,你在尝试使用该服务的客户机上必须指定特定的端口号,匹配你服务器所设定的。
例如linux下使用apache创建了虚拟站点(服务器),并使用了88端口你在访问这个虚拟站点就必须指定端口号,如
"http://virtual.website.com:88/path"
#:80在网址后添加分号并指定端口号。其后可以指定网站的路径和页面,一般不指定。
linux环境下常用apache架设web服务器(至少我的是=ω=),修改httpd.conf中的默认监听端口Listen80#
如若是虚拟站点需修改
NameVirtualHost*:80
<VirtualHost*:80>
两项
至于ftp,由于不清楚你使用的是哪款软件驱动服务的,所以不做解释(无需必要,参考软件设置文档或告知软件名并提问)
PSvsftpd修改vsftpd.conf中的listen_port=21
Ⅱ docker api create 执行成功 但绑定端口无效: curl,xxx:49136 另如何nginx实现域名绑定宿主端口自动化
都API了,这类问题应该去问空间商了吧!
Ⅲ 为什么Linux中curl端口80会被拒绝
因为你的80端口根本没打开吧
用netstat命令检查一下
当然还可能是防火墙的原因
Ⅳ PHP 通过curl下载ftp文件,怎么设置端口号
ftp://172.19.71.63:8080/Flipped.2010.BluRay.720p.DTS.x264-CHD.sample.mkv
Ⅳ linux curl使用的是什么端口
curl命令是一个功能强大的网络工具,它能够通过http、ftp等方式下载文件,也能够上传文件。其实curl远不止前面所说的那些功能,大家可以通过man curl阅读手册页获取更多的信息。类似的工具还有wget。
curl命令使用了libcurl库来实现,libcurl库常用在C程序中用来处理HTTP请求,curlpp是libcurl的一个C++封装,这几个东西可以用在抓取网页、网络监控等方面的开发,而curl命令可以帮助来解决开发过程中遇到的问题。
常用参数
curl命令参数很多,这里只列出我曾经用过、特别是在shell脚本中用到过的那些。
-v/--verbose 小写的v参数,用于打印更多信息,包括发送的请求信息,这在调试脚本是特别有用。
-m/--max-time <seconds> 指定处理的最大时长
-H/--header <header> 指定请求头参数
-s/--slient 减少输出的信息,比如进度
--connect-timeout <seconds> 指定尝试连接的最大时长
-x/--proxy <proxyhost[:port]> 指定代理服务器地址和端口,端口默认为1080
-T/--upload-file <file> 指定上传文件路径
-o/--output <file> 指定输出文件名称
-d/--data/--data-ascii <data> 指定POST的内容
--retry <num> 指定重试次数
-e/--referer <URL> 指定引用地址
-I/--head 仅返回头部信息,使用HEAD请求
Ⅵ linux服务器上,其他机器通过curl+IP能够访问,但curl+域名访问超时
用域名访问的时候捏,首先服务器要去找到域名对应的IP,从访问来讲,最后还是用版IP访问的,权超时的话应该DNS解析这个域名的时候超时了,要不就是你的DNS有问题,你换一个DNS试试,要不就是你的这个域名不对,你试下直接解析
nslookup .com
上面命令可以直接将解析的Ip返回的,
nslookup .com 180.76.76.76
这条后面是指定用哪个DNS解析,如果不加就是用本机指定的DNs解析的
Ⅶ 如何使用CURL复用连接
HTTP1.0与HTTP1.1的一个很大的差别是HTTP1.1支持长连接。现实中有很多这个场景,就是请求了一个页面,然后这个页面的其他内容,例如CSS文件,JS文件都要从同一个服务(相同服务器,相同端口)上面获取。这些向相同服务器的请求如果能够复用连接,是很有利于提供网络性能。
总的来说,复用HTTP连接有两个好处:
1. 节省系统端口资源(每一次连接都要使用端口,端口的资源是有限的)
2. 节省创建socket连接的时间。
下面讲讲在PHP下面,如何使用CURL来复用连接:
curl是在一个handle里面复用连接的,所以这样就可以复用连接了:
$ch = curl_init();
$ret = curl_exec($ch);
......
$ret2 = curl_exec($ch);
....
curl_close($ch);
在初始化跟关闭$ch资源时即可复用连接。
我这里写了两个函数,可以支持GET跟POST的请求,大家感兴趣可以看看。
function curl_get($url, $timeout=5) {
global $g_handle;
if (empty($g_handle)) $ch = curl_init();
$options = array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_FRESH_CONNECT => false,
CURLOPT_FORBID_REUSE => false,
CURLOPT_TIMEOUT => $timeout
);
curl_setopt_array($g_handle, $options);
$ret = curl_exec($g_handle);
return $ret;
}
// 可以支持POST数据,$post是一个数组,$timeout是超时时间。
function curl_post($url, $post=array(), $timeout=10) {
global $g_handle;
if (empty($g_handle)) $g_handle = curl_init();
$options = array(
CURLOPT_URL => $url,
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_FRESH_CONNECT => false,
CURLOPT_FORBID_REUSE => false,
CURLOPT_TIMEOUT => $timeout,
CURLOPT_POSTFIELDS => http_build_query($post)
);
if (empty($post)) $options[CURLOPT_POST] = false;
curl_setopt_array($g_handle, $options);
$ret = curl_exec($g_handle);
return $ret;
}
Ⅷ linux curl命令:curl: (7) couldn't connect to host
如果是CentOS-6,并且保证其他没做错误
一、输入下面命令药到病除
1、service NetworkManager stop
2、chkconfig NetworkManager off
3、service network restart
二、不行,再看专看
curl -I http://www.test.com/
报错就是你属网络有问题,没有报错就是你配置有问题。