तो क्लाइंट कर्ल होने पर मैं कोडिनेटर का उपयोग कैसे कर सकता हूं, और उसके बाद कुछ अलग कर सकता हूं?कर्ल उपयोगकर्ता एजेंट
उत्तर
आप नकली कर्ल का उपयोग करते समय उपयोगकर्ता-एजेंट कर सकते हैं, इसलिए जब आप जानते हैं कि यह कर्ल अनुरोध है तो यह उपयोगकर्ता-एजेंट के आधार पर व्यर्थ है।
उदाहरण के लिए: मैंने हाल ही में एक ऐप लिखा है जो Google से यूआरएल का पेजरैंक प्राप्त करता है। अब Google इसे पसंद नहीं करता है, इसलिए यह केवल एक निश्चित उपयोगकर्ता एजेंट को अपने पेजरैंक सर्वर तक पहुंचने की अनुमति देता है। उपाय? कर्ल और Google का उपयोग कर उपयोगकर्ता-एजेंट को स्पूफ कोई भी बुद्धिमान नहीं होगा।
कहानी का नैतिक: curl उपयोगकर्ता एजेंट केवल विश्वसनीय नहीं हैं।
तुम अब भी ऐसा करना चाहते हैं, तो आप सिर्फ सामान्य
$userAgent=$_SERVER['HTTP_USER_AGENT'];
संपादित एक त्वरित परीक्षण इस साबित कर दिया की तरह पारित कर दिया उपयोगकर्ता एजेंट प्राप्त करने के लिए सक्षम होना चाहिए:
dumpx.php:
<?php
$url="http://localhost/dump.php";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
if($_GET['u']==y) {
curl_setopt($ch, CURLOPT_USERAGENT, "booyah!");
}
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
//curl_setopt($ch, CURLOPT_CUSTOMREQUEST,'GET');
curl_setopt ($ch, CURLOPT_HEADER, 0);
$exec=curl_exec ($ch);
?>
dump.php:
<?php
var_dump($_SERVER);
?>
केस 1: http://localhost/dumpx.php?u=y
'HTTP_USER_AGENT' => string 'booyah!' (length=7)
केस 2: http://localhost/dumpx.php?u=n
नहीं $ _SERVER [ 'HTTP_USER_AGENT']
यह साबित होता है कर्ल के लिए कोई डिफ़ॉल्ट उपयोगकर्ता एजेंट है कि वहाँ: यह अनुरोध हेडर में इसे पास नहीं करेगा
मुझे कोड मिल रहा था ":" अवैध_हेडर "," संदेश ":" अमान्य अनुरोध शीर्षलेख "," विवरण ":" हेडर 'उपयोगकर्ता-एजेंट' खराब है, गुम है, या एक अवैध मान है। " PHP और आपके समाधान का उपयोग कर कर्ल अनुरोध एक आकर्षण की तरह काम करता है। आपको केवल 'उपयोगकर्ता-एजेंट:'। $ _ सर्वर ['HTTP_USER_AGENT'] निर्दिष्ट करने की आवश्यकता है। धन्यवाद! –
आप स्पूफ कर सकते हैं या curl का उपयोग करते समय कस्टम उपयोगकर्ता एजेंट शीर्षलेख सेट कर सकते हैं, इसलिए यह विश्वसनीय नहीं होगा।
अन्यथा, आप यह कर सकते हैं:
if(strtolower($this->input->server('HTTP_USER_AGENT', true)) == 'curl')
{
// Is using cURL
}
यह तभी cURL अनुरोध उपयोगकर्ता एजेंट शीर्ष लेख में curl
निहित घटित होता।
जहां तक मुझे पता है, कर्ल अनुरोध करते समय कोई डिफ़ॉल्ट उपयोगकर्ता एजेंट सेट नहीं है।
'जहां तक मुझे पता है कि कोई डिफ़ॉल्ट नहीं है' ... - curl एक उपयोगकर्ता-एजेंट जैसे डिफ़ॉल्ट उपयोगकर्ता-एजेंट भेजता है: कर्ल/7.47.0' अगर आप मैन्युअल रूप से निर्दिष्ट नहीं करते हैं। – samiles
curl का अर्थ है - क्लाइंट यूआरएल लाइब्रेरी और इसका पूरा बिंदु उन अनुरोधों को करने में सक्षम होना है जो ग्राहक के समान होते हैं।
एकमात्र चीज जो आप कर सकते हैं वह जानकारी का पता लगाती है जो अनुरोध का हिस्सा है, जैसे आईपी पता, HTTP अनुरोध शीर्षलेख, कुकीज़/सत्र आईडी कुकी, यूआरएल (पथ/पृष्ठ), और कोई भी पोस्ट/डेटा प्राप्त करें । यदि अनुरोध करने के लिए कर्ल का उपयोग करने वाला व्यक्ति इसे अपेक्षित आईपी पते से कर रहा है और किसी भी अपेक्षित हेडर/कुकी/टोकन/यूआरएल/पोस्ट/मूल्य प्राप्त करने की आपूर्ति कर रहा है, तो आप ब्राउज़र बनाने से कर्ल अनुरोध को अलग नहीं कर पाएंगे अनुरोध।
यदि आप बॉट का पता लगाना चाहते हैं तो आप उपयोगकर्ता एजेंट पर भरोसा नहीं कर सकते हैं।सर्वोत्तम अभ्यास हैं:
- जांचें, कि आपका आगंतुक जेएस चलाता है (सभी मानव उपयोगकर्ता भी नहीं करते हैं)।
- जांचें, कि आपका आगंतुक वेबपृष्ठ (सीएसएस, छवियों, आदि) से जुड़ी अतिरिक्त फाइलें लोड करता है
- विज़िटर टाइमआउट जांचें। मनुष्य सामान्य रूप से प्रति सेकंड 10 पेज लोड नहीं करते हैं।
- 1. उपयोगकर्ता एजेंट
- 2. उपयोगकर्ता-एजेंट
- 3. एंड्रॉइड, वेबव्यू उपयोगकर्ता एजेंट बनाम ब्राउज़र उपयोगकर्ता एजेंट
- 4. जावा उपयोगकर्ता एजेंट
- 5. एंड्रॉइड मोबाइल उपयोगकर्ता एजेंट?
- 6. वेबव्यू उपयोगकर्ता एजेंट
- 7. रूबी मैकेनाइजेशन: उपयोगकर्ता एजेंट?
- 8. एंड्रॉइड उपयोगकर्ता एजेंट
- 9. मोबाइल regexp उपयोगकर्ता एजेंट
- 10. उपयोगकर्ता एजेंट स्टाइलशीट
- 11. पार्सिंग HTTP उपयोगकर्ता-एजेंट स्ट्रिंग
- 12. Urlretrieve और उपयोगकर्ता एजेंट? - पायथन
- 13. जावा उपयोगकर्ता एजेंट स्ट्रिंग पार्सर
- 14. JQuery अजाक्स अनुरोध: उपयोगकर्ता-एजेंट
- 15. क्या कोई ऑनलाइन उपयोगकर्ता एजेंट डेटाबेस है?
- 16. HTTP अनुरोधों में उपयोगकर्ता-एजेंट, रूबी
- 17. एक आईफोन ऐप में उपयोगकर्ता एजेंट
- 18. क्रोम उपयोगकर्ता एजेंट स्टाइलशीट अपनी साइट शैली
- 19. सेटिंग "एक जानकारीपूर्ण उपयोगकर्ता-एजेंट स्ट्रिंग" getURL
- 20. HttpClient के लिए कस्टम उपयोगकर्ता एजेंट?
- 21. आईपैड मिनी उपयोगकर्ता एजेंट क्या है?
- 22. क्यूटी QWebView क्लास कस्टम उपयोगकर्ता-एजेंट
- 23. आईओएस पर उपयोगकर्ता एजेंट कैसे प्राप्त करें?
- 24. GeckoFX में उपयोगकर्ता एजेंट कैसे सेट करें?
- 25. सैमसंग एस 3 उपयोगकर्ता एजेंट क्या है?
- 26. कैपिबरा पोल्टरगेस्ट - उपयोगकर्ता एजेंट को ओवरराइड करें
- 27. वसंत MVC: देखने उपयोगकर्ता-एजेंट पर
- 28. WebBrowser नियंत्रण के उपयोगकर्ता एजेंट को बदलना
- 29. Google ऐप इंजन में उपयोगकर्ता-एजेंट python
- 30. कर्ल उपयोगकर्ता प्रमाणीकरण में विस्मयादिबोधक चिह्न/पासवर्ड
आप कर्ल का उपयोग करते समय * स्पूफ * या कस्टम उपयोगकर्ता एजेंट शीर्षलेख सेट कर सकते हैं, इसलिए यह विश्वसनीय नहीं होगा। – MacMac
मैं पूछ रहा हूं कि कर्ल से डिफ़ॉल्ट उपयोगकर्ता एजेंट क्या है, या उस मामले के लिए, php-cURL – macintosh264