zoukankan      html  css  js  c++  java
  • php curl伪造referer

     

    CURL方式:
     
     
     1 $ch = curl_init();  
     2    
     3 curl_setopt ($ch, CURLOPT_URL, "http://www.yyyy.com");  
     4    
     5 curl_setopt ($ch, CURLOPT_REFERER, "http://www.xxxx.com/");  
     6    
     7 curl_exec ($ch);  
     8    
     9 curl_close ($ch);  
    10 
    11  
     
     
    SOCKET方式:
     
     
      
     1 $server = 'www.yyyy.com';  
     2    
     3 $host = 'www.yyyy.com';  
     4    
     5 $target = 'index.php';  
     6    
     7 $referer = 'http://www.xxxx.com/'; // Referer  
     8    
     9 $port = 80;  
    10    
    11 $fp = fsockopen($server, $port, $errno, $errstr, 30);  
    12    
    13 if (!$fp){  
    14    
    15   echo "$errstr ($errno)
    ";  
    16    
    17 }else{  
    18    
    19 $out = "GET $target HTTP/1.1
    ";  
    20    
    21 $out .= "Host: $host
    ";  
    22    
    23 $out .= "Referer: $referer
    ";  
    24    
    25 $out .= "Connection: Close
    
    ";  
    26    
    27 fwrite($fp, $out);  
    28    
    29 while (!feof($fp)){  
    30    
    31 echo fgets($fp, 128);  
    32    
    33 }  
    34    
    35 fclose($fp);  
    36    
    37 }  
    file_get_contents方法:
     
     
    1 $opt=array('http'=>array('header'=>"Referer: $refer"));   
    2    
    3 $context=stream_context_create($opt);   
    4    
    5 $file_contents = file_get_contents($url,false, $context);  

    通过上面的代码,我们就把referer地址伪装为http://www.xxxx.com,你可以写一段代码:
    $_SERVER['HTTP_REFERER'];
    查看到这个referer地址,就是这么简单,所以referer也不是什么可靠的数据了
  • 相关阅读:
    Tensorflow实战系列之三:
    Tensorflow实战系列之二:
    scala映射和元组
    scala函数
    scala基础
    Hadoop Eclipse 插件制作以及安装
    理解HBase
    理解HDFS
    Hadoop入门学习路线
    日志框架Log4j
  • 原文地址:https://www.cnblogs.com/wujunbin/p/7567458.html
Copyright © 2011-2022 走看看