curl 域名解析,如何查看自己的外网域名
阅读(79)发布于 2023-09-25
curl获取网页被拒绝求助 如果开启了IPv6,curl默认会优先解析IPv6,在对应域名没有IPv6的情况下,会等待IPv6dns解析失败timeout之后才按以前的正常流程去找IPv4 原因: 在程序中我对curl获取内容都作了较为严格的超时限制,所以就会造成无法获取内容的问题。php的curl设置方法如下: 复制代码代码如下:
linux服务器上,其他机器通过curl+IP能够访问,但curl+域名访问超时
用域名访问的时候捏,首先服务器要去找到域名对应的IP,从访问来讲,最后还是用IP访问的,超时的话应该DNS解析这个域名的时候超时了,要不就是你的DNS有问题,你换一个DNS试试,要不就是你的这个域名不对,你试下直接解析
nslookupbaidu.com
上面命令可以直接将解析的Ip返回的,
nslookupbaidu.com180.76.76.76
这条后面是指定用哪个DNS解析,如果不加就是用本机指定的DNs解析的
curl 命令无法访问域名怎么办
还要到空间的控制面板中将域名和空间绑定。域名和主机两方面都要设置,一个设置解析,一个设置绑定。
curl获取网页被拒绝求助
如果开启了IPv6,curl默认会优先解析IPv6,在对应域名没有IPv6的情况下,会等待IPv6dns解析失败timeout之后才按以前的正常流程去找IPv4
原因:
在程序中我对curl获取内容都作了较为严格的超时限制,所以就会造成无法获取内容的问题。
解决方法:设置默认访问为ipv4。
php的curl设置方法如下:
复制代码代码如下:
<?php
/**
*IPV6下curl超时问题
*/
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
//设置curl默认访问为IPv4
if(defined('CURLOPT_IPRESOLVE')&&defined('CURL_IPRESOLVE_V4')){
curl_setopt($ch,CURLOPT_IPRESOLVE,CURL_IPRESOLVE_V4);
}
//设置curl请求连接时的最长秒数,如果设置为0,则无限
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
//设置curl总执行动作的最长秒数,如果设置为0,则无限
curl_setopt($ch,CURLOPT_TIMEOUT,$timeout*3);
$file_contents=curl_exec($ch);
curl_close($ch);
注:curl_setopt($ch,CURLOPT_IPRESOLVE,CURL_IPRESOLVE_V4)只有在php版本5.3及以上版本,curl版本7.10.8及以上版本时,以上设置才生效。
如何查看自己的外网域名
由于再做域名解析的时候,一般需要设置指向到一个公网地址。所以只知道网卡内网IP是不行的。
百度搜索查询法
通过百度打开输入ip查询可以查看当前电脑出口的上网IP(如果IP是动态的,这个IP可能随时都会变化)
IP网站查询法
除此之外,专业查询出口IP的网站有很多。类似ip138和ip.cn等。不过建议ip138查询的比较准确。
路由器上查询外网IP
刚刚说到的查询公网IP的方法,对于网页上查询可能也会出现错误呢。那么其实最简单的是我们登陆上网的网关设备,路由器上查看连接状态。WAN口显示的IP或拨号IP就是上网的外网IP啦
Linux系统查询上网公网IP
以上都是通过上网图形界面查看上网IP的。其实很多服务器用的是linuxunix系统是图形界面。看不到公网ip呢,怎么查看呢
输入curlifconfig.me命令即可查看.
以上就是关于curl 域名解析的解答,如果对你有帮助,不妨关注本站,本站将为你整理更多内容。