首页 > 其他分享 >批量扫描文件里的链接是否404(包含curl与get_header实现方式)

批量扫描文件里的链接是否404(包含curl与get_header实现方式)

时间:2023-01-06 13:56:40浏览次数:41  
标签:status get url echo header 404 file

<?php
//function chkurl($url){
//    $handle  =  curl_init($url);
//    curl_setopt($handle,CURLOPT_RETURNTRANSFER,TRUE);
//    curl_setopt($handle,CURLOPT_CONNECTTIMEOUT,5); //设置超时时间
//    curl_exec($handle);
//    //检查是否404
//    $httpCode = curl_getinfo($handle,CURLINFO_HTTP_CODE);
//    var_dump($httpCode);
//    if($httpCode == 404){
//        return "不存在";
//    }else{
//        return "存在";
//    }
//    curl_close($handle);
//}

//function http_status($url) {
//    $ch = curl_init();
//    curl_setopt($ch, CURLOPT_URL, $url);
//    curl_setopt($ch, CURLOPT_HEADER, 1);
//    curl_setopt($ch, CURLOPT_NOBODY, 1);
//    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//    curl_setopt($ch, CURLOPT_TIMEOUT, 5);
//    curl_exec($ch);
//    $status = (int)curl_getinfo($ch, CURLINFO_HTTP_CODE);
//    curl_close($ch);
//    return ($status == 404) ? '404' : '正常';
//}
//
//$status = http_status('链接');
//var_dump($status);

//测试
//$url = "https://www.baidu.com";
////$notice = chkurl($url);
////echo $notice;
////var_dump(get_headers($url));
//$status = get_headers($url);
//if (strpos($status[0], '404'))
//{
//    echo "404";
//    echo "<br/>";
////    echo "654654";
//}else{
//    echo $status[0].$url.'   正常访问';
//}


$file = fopen("txt文件目录","r");
while(!feof($file))
{
    $url = fgets($file);
    $status = get_headers(trim($url));
    if (strpos($status[0], '404'))
    {
        echo $status[0]."404";
        echo "<br/>";
    }else{
        echo $url.'正常访问';
        echo "<br/>";
    }
}

fclose($file);
?>

标签:status,get,url,echo,header,404,file
From: https://www.cnblogs.com/face-every/p/17030205.html

相关文章

  • gget: 一款强大的基因组参考数据库的高效查询工具
    开源Python和命令行程序gget可以高效、轻松地以编程方式访问存储在各种大型公共基因组参考数据库中的信息。gget与可获取用户生成的测序数据的现有工具一起使用,以取......
  • knife4j 不能设置请求Header
    问题描述:knif4j不能设置请求头信息解决方案:开启动态请求参数,刷新即可。......
  • tp5部署到nginx后所有分页404的解决办法
    #BeginHTTPServerserver{listen80;server_nameapi.yunliu.cowww.yunliu.coyunliu.co;access_loglogs/localhost_access.log;......
  • Tomcat弱口令爆破+war部署getshell
    影响版本Tomcat全版本环境搭建使用vulfocus中的tomcat-pass-getshell环境。漏洞复现访问manager后台提交用户名和密码后抓包,设置Authorization:BasicYWRtaW46YWRt......
  • 自学Linux,你需要get哪些点?
    近些年来,Linux操作系统越来越受欢迎,它的开源、免费是亮点也是优点,并且稳定性和安全性也得到认可,还有Linux有很多版本供大家选择,可以定制化。据我所知,现在很多公司的开发项......
  • upload.html:143 GET http://localhost:8080/user_image/85F250A6-E07D-4FCB-8092-D4A
    publicclassLoginInterceptorConfigureimplementsWebMvcConfigurer{@OverridepublicvoidaddResourceHandlers(ResourceHandlerRegistryregistry){......
  • Android JNI GetMethodID中sig参数说明
    GetMethodID中sig参数是对函数的签名,也可以说标识,具体的格式为:(函数参数)返回值。方法签名中用大写的字母对应了java的基本数据类型:Z->booleanB->byteC->charS-......
  • php发送get、post请求的几种方法
    ​方法1:用file_get_contents以get方式获取内容 <?php$url='http://www.domain.com/';$html=file_get_contents($url);echo$html;?>  方法2:用fopen......
  • golang web开发获取get、post、cookie参数
    在成熟的语言java、python、php要获取这些参数应该来讲都非常简单,过较新的语言golang用获取这些个参数还是费了不少劲,特此记录一下。golang版本:1.3.1在贴代码之前如果能......
  • GET和POST
    Get和Post请求有什么区别?Get和Post是什么?get和post其实都是http的请求方法。除了这2个请求方法之外,http还有head、put、delete、trace、connect、options这6个请求......