`
wtm_mac
  • 浏览: 87557 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

php请求域名的url时绑定ip

阅读更多
当我们要测试的接口服务器比较多的时候,更改hosts指向很麻烦,通过socket我们可以在程序中绑定接口域的ip,增加测试的灵活性,代码如下

<?php
/**
 * 访问域名url时绑定ip地址
 *
 * @author tonywang(wtmmac(@)gmail.com)
 * @param string $url 目标url
 * @param string $ip_address 绑定IP地址
 * @param bool $return_header 是否返回头信息
 *
 * @return string 返回GET到的信息
 */
function url_get_contents($url, $ip_address = null, $return_header = false) {
    
    $url = parse_url($url);
 
    if (!isset($url['port'])) {
        if ($url['scheme'] == 'http'){
            $url['port'] = 80; 
        } else if ($url['scheme'] == 'https'){
            $url['port'] = 443;
        }
    }
    
    $url['query'] = isset($url['query'])?$url['query']:'';
    $url['protocol'] = $url['scheme'].'://';
    $eol="\r\n";
 
    $headers = 'GET '.$url['protocol'].$url['host'].$url['path'].' HTTP/1.0'.$eol. 
               'Host: '.$url['host'].$eol. 
               'Content-Length: '.strlen($url['query']).$eol.
               $eol.$url['query'];
    $fp = fsockopen($ip_address ? $ip_address : $url['host'], $url['port'], $errno, $errstr, 5); 
    
    if ($fp) {
        fputs($fp, $headers);
        $result = $headers;
        while(!feof($fp)){ 
            $result .= fgets($fp, 128);
        }
        fclose($fp);

        if (!$return_header) {
            $result = preg_replace("/^.*\r\n\r\n/s",'',$result);
        }

        return $result;
    }
}

echo url_get_contents('http://www.ibaofeng.com', '127.0.0.1');
分享到:
评论

相关推荐

    伪静态和url重写 实现二级域名

    5. 测试各个二级域名的访问情况,确保伪静态和URL重写规则生效,并能正确处理动态请求。 总结来说,伪静态和URL重写是提高网站用户体验和SEO的重要手段,结合二级域名的泛解析,可以在不增加服务器管理负担的情况下...

    空想软件PHP二级域名系统

    这个系统可能包含了配置、创建、绑定、解析二级域名以及权限控制等功能,帮助用户轻松地管理和维护他们的网络空间。 在PHP开发中,二级域名系统的实现涉及到以下几个关键知识点: 1. **域名解析**:二级域名的设置...

    百度知道泛解析无限二级域名

    httpd.parse.errors可能记录了配置文件解析过程中的错误,而httpd.ini是Apache的配置文件,用于设定服务器的行为,如绑定IP、端口、虚拟主机等。 3. global.php:这可能是一个全局配置文件,包含整个网站的共用变量...

    连连银通支付WEB-DEMO开发包

    注: 申请表在目录中 《连连银通商户域名IP应用标识配置申请表V2.1.1》 //域名IP应用标识申请表 4、demo 接入指南 4.1、php log.txt 可查看商户情况的日志,会打印商户请求的待签名串。 llpay.config.php ...

    史上最全韩顺平传智播客PHP就业班视频,10月份全集

    解答学生问题--一个ip绑定多个域名 8-19 2.php运行过程时序图 php书写规范 8-19 3.php基本语法介绍 php数据类型介绍 8-19 4.整型细节说明 8-19 5.布尔细节 浮点数细节 字符串细节 算术运算符① 8-19 6.算术运算符② ...

    史上最全韩顺平传智播客PHP就业班视频,9月份全集

    解答学生问题--一个ip绑定多个域名 8-19 2.php运行过程时序图 php书写规范 8-19 3.php基本语法介绍 php数据类型介绍 8-19 4.整型细节说明 8-19 5.布尔细节 浮点数细节 字符串细节 算术运算符① 8-19 6.算术运算符② ...

    (全)传智播客PHP就业班视频完整课程

    解答学生问题--一个ip绑定多个域名 8-19 2.php运行过程时序图 php书写规范 8-19 3.php基本语法介绍 php数据类型介绍 8-19 4.整型细节说明 8-19 5.布尔细节 浮点数细节 字符串细节 算术运算符① 8-19 6.算术运算符② ...

    史上最全传智播客PHP就业班视频课,8月份视频

    解答学生问题--一个ip绑定多个域名 8-19 2.php运行过程时序图 php书写规范 8-19 3.php基本语法介绍 php数据类型介绍 8-19 4.整型细节说明 8-19 5.布尔细节 浮点数细节 字符串细节 算术运算符① 8-19 6.算术运算符② ...

    韩顺平PHP JS JQUERY 所有视频下载种子 货真价实

    解答学生问题--一个ip绑定多个域名 8-19 2.php运行过程时序图 php书写规范 8-19 3.php基本语法介绍 php数据类型介绍 8-19 4.整型细节说明 8-19 5.布尔细节 浮点数细节 字符串细节 算术运算符① 8-19 6.算术运算符② ...

    IIS配置详解

    主机头允许一个IP地址绑定多个域名,而端口号则用于区分同一IP下的不同服务。 3. **应用程序池**: 应用程序池是IIS中的一个重要概念,每个网站或应用程序可以关联到一个或多个应用程序池。它负责管理进程,隔离应用...

    Apache HTTP Server Version 2.2 中文帮助详解文档

    配置文件`httpd.conf`用于定制服务器的行为,如端口绑定、文档根目录设定等。 2. **模块管理**:Apache以其模块化架构著名,允许用户根据需要加载或卸载功能模块。例如,mod_rewrite用于URL重写,mod_security用于...

    一个bolg源码系统

    4. **域名绑定**:若需要公开访问,需将域名绑定到服务器IP。 六、扩展性与维护 1. **插件系统**:简单博客系统可能预留了扩展接口,便于添加新的功能或集成第三方服务。 2. **API支持**:为了与其他应用交互,可能...

    吐血推荐!liteserve2.4绿色www服务器

    用户可以通过修改服务器配置文件,如httpd.conf,来定制域名绑定、端口设置、目录权限等。 【SMTP服务器】 SMTP(Simple Mail Transfer Protocol)服务器则用于发送电子邮件。liteserve2.4集成的SMTP服务器让用户能...

    Linux与Apache(httpd.conf )配置与管理图文教程 chm

    3. **基本配置**:主要设置包括ServerRoot(Apache的主目录)、ServerName(服务器的域名或IP地址)、Listen(监听的端口)以及DocumentRoot(网站内容的根目录)。 4. **访问控制**:使用`Order`, `Allow`, `Deny`...

    Web开发技术基础.ppt

    - **HTTP/IP/域名**:HTTP是Web通信的主要协议,IP地址是网络设备的标识,域名则是便于记忆的IP地址替代品。 - **URL**:统一资源定位符,用于标识网络上的特定资源。 - **B/S架构**:浏览器/服务器架构,用户...

    虚拟IIS虚拟IIS

    虚拟IIS允许在一个物理服务器上创建多个独立的、互不干扰的Web站点,每个站点可以有不同的域名、IP地址或者端口号,从而实现资源的有效管理和隔离。 一、虚拟IIS的基本概念 1. 虚拟主机:在一台物理服务器上通过...

    windows server 2003 iis6.0

    3. **虚拟主机**:通过绑定不同的域名或IP地址,可以在一台服务器上创建多个独立的网站,实现资源的高效利用。 4. **日志和审核**:记录服务器活动,帮助分析网站流量,排查问题,同时提供安全审计,确保符合合规性...

    Web系统与技术 课程教材

    1.1.2 TCP/IP协议... 1 1.1.3 域名... 2 1.1.4 URL. 3 1.1.5 MIME. 3 1.1.6 HTTP协议... 4 1.2 Web浏览器... 5 1.3 Web服务器... 5 1.3.1 Web服务器... 5 1.3.2 Apache服务器... 5 1.3.3 IIS服务器... 6 ...

Global site tag (gtag.js) - Google Analytics