আমি নিম্নলিখিত পিএইচপি কোড ব্যবহার করে একটি টোর লুকানো পরিষেবার সাথে সংযোগ দেওয়ার চেষ্টা করছি:
$url = 'http://jhiwjjlqpyawmpjx.onion/'
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_PROXY, "http://127.0.0.1:9050/");
curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
$output = curl_exec($ch);
$curl_error = curl_error($ch);
curl_close($ch);
print_r($output);
print_r($curl_error);
আমি যখন এটি চালাব, আমি নিম্নলিখিত ত্রুটিটি পেয়েছি:
হোস্টের নামটি সমাধান করতে পারেনি
তবে আমি যখন উবুন্টুতে আমার কমান্ড লাইন থেকে নিম্নলিখিত কমান্ডটি চালাচ্ছি:
curl -v --socks5-hostname localhost:9050 http://jhiwjjlqpyawmpjx.onion
আশানুরূপ সাড়া পেয়েছি
পিএইচপি সিআরএল ডকুমেন্টেশন এতে বলে:
--socks5-hostname
Use the specified SOCKS5 proxy (and let the proxy resolve the host name).
আমি বিশ্বাস করি যে কমান্ড লাইন থেকে এটি কাজ করার কারণ হ'ল টর (প্রক্সি) .onion হোস্টনামটি সমাধান করছে, যা এটি স্বীকৃত। উপরের পিএইচপি কোড চালানোর সময়, আমার অনুমান যে সিআরএল বা পিএইচপি .onion হোস্টনেমটি সমাধান করার চেষ্টা করছে এবং এটি সনাক্ত করে না। প্রক্সিটি হোস্টনামটি সমাধান করতে দিতে আমি সিআরএল / পিএইচপি বলার উপায় অনুসন্ধান করেছি, তবে আমি কোনও উপায় খুঁজে পাচ্ছি না।
খুব অনুরূপ স্ট্যাক ওভারফ্লো প্রশ্ন রয়েছে, পিএইচপি ব্যবহার করার সময় মোজা 5 প্রক্সি ব্যবহার করে সিআরএল অনুরোধ ব্যর্থ হয়, তবে এটি কমান্ড লাইনের মাধ্যমে কাজ করে ।
forward-socks5 / localhost:9150 .