php使用CURL偽造IP和來源實例詳解_PHP教程
推薦:php+mysql實現無限分類實例詳解這篇文章主要介紹了php+mysql實現無限分類的方法,實例分析了mysql數據庫設計、數據庫操作及無限極分類的具體實現步驟,非常具有實用價值,需要的朋友可以參考下 本文實例講述了php+mysql實現無限分類的方法。分享給大家供大家參考。具體分析如下: 1、數據庫通過設置父類
這篇文章主要介紹了php使用CURL偽造IP和來源的方法,以實例形式詳細分析了CURL偽造IP和來源的原理與實現技巧,并補充說明了PHP中的CURL函數庫常用函數,需要的朋友可以參考下
本文實例講述了php使用CURL偽造IP和來源的方法。分享給大家供大家參考。具體分析如下:
偽造IP來源對于php來說是很簡單的一件事情,我們只要利用了php的curl即可實現偽造IP來源的功能,IP地址你可以隨便寫.
index.php實例代碼如下:
代碼如下: $ch = curl_init();curl_setopt($ch, CURLOPT_URL, "http://localhost/curl.php");
curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-FORWARDED-FOR:8.8.8.8', 'CLIENT-IP:8.8.8.8'));//IP
curl_setopt($ch, CURLOPT_REFERER, "http://www.jb51.net/ "); //來路
curl_setopt($ch, CURLOPT_HEADER, 1);
$out = curl_exec($ch);
curl_close($ch);
curl.php代碼如下:
代碼如下: function getClientIp() {
if (!emptyempty($_SERVER["HTTP_CLIENT_IP"]))
$ip = $_SERVER["HTTP_CLIENT_IP"];
else if (!emptyempty($_SERVER["HTTP_X_FORWARDED_FOR"]))
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
else if (!emptyempty($_SERVER["REMOTE_ADDR"]))
$ip = $_SERVER["REMOTE_ADDR"];
else
$ip = "err";
return $ip;
}
echo "IP: " . getClientIp() . "";
echo "referer: " . $_SERVER["HTTP_REFERER"];
用index.php 請求 curl.php,輸出結果:
IP:8.8.8.8 referer:http://www.jb51.net
偽造成功,這是不是給采集的朋友提供了很好的換IP的方案,當然防被刷的朋友也要注意了.
補充:
PHP中的CURL函數庫(Client URL Library Function)如下:
curl_close — 關閉一個curl會話
curl_copy_handle — 拷貝一個curl連接資源的所有內容和參數
curl_errno — 返回一個包含當前會話錯誤信息的數字編號
curl_error — 返回一個包含當前會話錯誤信息的字符串
curl_exec — 執行一個curl會話
curl_getinfo — 獲取一個curl連接資源句柄的信息
curl_init — 初始化一個curl會話
curl_multi_add_handle — 向curl批處理會話中添加單獨的curl句柄資源
curl_multi_close — 關閉一個批處理句柄資源
curl_multi_exec — 解析一個curl批處理句柄
curl_multi_getcontent — 返回獲取的輸出的文本流
curl_multi_info_read — 獲取當前解析的curl的相關傳輸信息
curl_multi_init — 初始化一個curl批處理句柄資源
curl_multi_remove_handle — 移除curl批處理句柄資源中的某個句柄資源
curl_multi_select — Get all the sockets associated with the cURL extension, which can then be "selected"
curl_setopt_array — 以數組的形式為一個curl設置會話參數
curl_setopt — 為一個curl設置會話參數
curl_version — 獲取curl相關的版本信息
curl_init()函數的作用初始化一個curl會話,curl_init()函數唯一的一個參數是可選的,表示一個url地址.
curl_exec()函數的作用是執行一個curl會話,唯一的參數是curl_init()函數返回的句柄.
curl_close()函數的作用是關閉一個curl會話,唯一的參數是curl_init()函數返回的句柄.
希望本文所述對大家的php程序設計有所幫助。
分享:php截取html字符串及自動補全html標簽的方法這篇文章主要介紹了php截取html字符串及自動補全html標簽的方法,是php對html操作非常實用的技巧,具有一定參考借鑒價值,需要的朋友可以參考下 本文實例講述了php截取html字符串及自動補全html標簽的方法。分享給大家供大家參考。具體分析如下: 這里總結一下關于利用php
- 相關鏈接:
- 教程說明:
PHP教程-php使用CURL偽造IP和來源實例詳解
。