文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

php:如何在curl方式下url请求域名使用指定ip地址来访问某个服务器

2023-08-31 07:02

关注

        最近遇到一个问题,就是如何在curl请求某个域名的时候,可以指定某个ip访问,因为很多时候咱们的域名对应的是集群,会有很多服务器ip,并不一定是刚好访问到你想要的服务器,那么该如何解决呢?

例如:正常情况下,假设我们这样发送请求,如何指定访问114.253.192.75这个ip服务器的内容

$url = "https://www.diekaisanyue.com/";$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_TIMEOUT, 5);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); //https请求,不验证证书和hostscurl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);$content = curl_exec($ch);echo $content;

解决方法:

配置/etc/host文件,加入114.253.192.75 www.diekaisanyue.com的指向,虽然可以实现效果,但是不利于维护,换一个同事操作估计还不清楚已经配置host。

修改在114.253.192.75服务器上部署的www.diekaisanyue.com vhost文件,单独开一个端口,例如端口8888,则我们可以直接使用114.253.192.75:8888进行访问,但是也不很方便,如果下次换一台服务器又需要开个端口配置一遍。

将请求url中域名改用ip方式,然后加上Host请求头信息,进行请求,这种方法好处就是什么都不用修改,也不用配置,可以直接指定你想要的ip服务器进行访问,通过header里面的host信息,进行配对服务。

$url = 'https://114.253.192.75/index.php';$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_TIMEOUT, 5);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_HTTPHEADER, array("Host: www.diekaisanyue.com"));curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);$content = curl_exec($ch);echo $content;

php5.5以上版本,支持使用 CURLOPT_RESOLVE 来设置主机对应的ip地址,但是经过测试好像不起作用

$url = 'https://www.diekaisanyue.com/index.php';$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_TIMEOUT, 5);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_RESOLVE, ["www.diekaisanyue.com:443:114.253.192.75"]);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);$content = curl_exec($ch);echo $content;

来源地址:https://blog.csdn.net/panjiapengfly/article/details/126914864

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-服务器
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯