সমস্যা হচ্ছে প্রশ্নে। আমি এ সম্পর্কিত সমাধানগুলির জন্য একটি গভীর তদন্ত করেছি এবং আমি জানি যে এর বিষয়গুলিও রয়েছে এবং আমি সেগুলিও অনুসরণ করেছি এবং কিছুই কার্যকর হয়নি। বলা হচ্ছে যে আমি এখন পর্যন্ত যা করেছি ঠিক তার সবই তালিকাবদ্ধ করব। আমি আমার উইন্ডোজ এক্সপি কম্পিউটারের সর্বশেষগ্রহণের সংস্করণে জেন্ড ডিবিগিংয়ের সাথে পিএইচপি 5.2.14 চালাচ্ছি। আমার কাছে 1 জিবি র্যাম রয়েছে। আমি অ্যাপাচি, মাইএসকিউএল এবং ফাইলজিলা ইনস্টল করে এক্সএএমপিপি চালিয়েছি।
এক্সএএমপিপি-তে আমি নিম্নলিখিতগুলি করেছি (অ্যাপাচি এই পরিবর্তনের সময় বন্ধ ছিল): এক্সএএমপিপি কন্ট্রোল প্যানেল থেকে প্রশাসকে ক্লিক করুন এবং সেখানে গিয়েছিলেন https:// localhost/xampp/
। সেখান থেকে আমি স্বাগত পৃষ্ঠায় এই লাইন থেকে শংসাপত্রগুলি গ্রহণ করেছি:
ওপেনএসএসএল সমর্থনের জন্য দয়া করে https: // 127.0.0.1 বা https: // লোকালহোস্ট সহ পরীক্ষার শংসাপত্রটি ব্যবহার করুন।
একই বিভাগে আমি চেক phpinfo()
। 'পরিবেশ' এর অধীনে, SERVER["HTTPS"]
হয় on
। 'অ্যাপাচি এনভায়রনমেন্ট' এর অধীনে HTTPS
রয়েছে On
। পিএইচপি ভেরিয়েবলের অধীনে _SERVER["HTTPS"]
রয়েছে On
। 'Phar' অধীনে, OpenSSL support
হয় disabled
(ইনস্টল EXT / OpenSSL)। আমি জানি না কীভাবে পারটিকে সক্ষম করতে হয়।
এখন ফাইলগুলি সি: am এক্সএ্যাম্পে নিজেই সম্পর্কিত, আমি পিএইচপি ফোল্ডারে গেলাম। উভয় উৎপাদন ও উন্নয়ন php.ini ফাইল (ভাল দুঃখিত তুলনায় নিরাপদ) অধীনে, আমি আছে allow_url_fopen=On
, allow_url_include=On
এবং আমি সেমিকোলন মুছে, যাতেextension=php_openssl.dll
আর আউট মন্তব্য করা হয়। এমনকি আমি নিশ্চিত করেছি যে .dll পিএইচপি ফোল্ডারের এক্সট্রা ফোল্ডারে রয়েছে। উভয়ই Libay32.dll এবং ssleay32.dll পিএইচপি এবং অ্যাপাচি ফোল্ডারে রয়েছে। অ্যাপাচি ফোল্ডারে কোনও উত্পাদনশীল বা বিকাশ php.ini ফাইল নেই।
আমি http://www.slproweb.com/products/Win32OpenSSL.html গিয়েছিলাম এবং নিরাপদ পরিমাপের জন্য Win32 ওপেনএসএসএল v1.0.0d ইনস্টল করেছি ।
এখন আমার retrieve_website.php এ প্রশ্নে কোডের লাইনটি দেখে মনে হচ্ছে:
$urlquery = "https://www.googleapis.com/customsearch/v1?key=".$appid."&cx=".$google_searchid."&q=".$query."&alt=atom&num=".$results;
$xmlresults = file_get_contents($urlquery);
আমার কাছে আরও দুটি ওয়েবসাইট রয়েছে যা আমি জিজ্ঞাসা করি তবে সেগুলি HTTP- র মাধ্যমে দেওয়া হয় এবং সেগুলি ভাল কাজ করে। স্ক্রিপ্টের শেষে আমার কাছে এই কোডের লাইনটি প্রবেশ করা হয়েছে:
echo 'openssl: ', extension_loaded ('openssl') ? 'yes':'no', "\n";
echo 'http wrapper: ', in_array('http', $w) ? 'yes':'no', "\n";
echo 'https wrapper: ', in_array('https', $w) ? 'yes':'no', "\n";
echo 'wrappers: ', var_dump($w);
যখন আমি এটিকে ক্লিপসে পিএইচপি স্ক্রিপ্ট হিসাবে চালিত করি তখন সমস্ত ফলাফল আউটপুটগুলি এই ফলাফলগুলির সাথে আমার যেমনভাবে চায় ঠিকঠাক করে দেয়:
openssl: yes
http wrapper: yes
https wrapper: yes
wrappers: array(10) {
[0]=>
string(5) "https"
[1]=>
string(4) "ftps"
[2]=>
string(3) "php"
[3]=>
string(4) "file"
[4]=>
string(4) "data"
[5]=>
string(4) "http"
[6]=>
string(3) "ftp"
[7]=>
string(13) "compress.zlib"
[8]=>
string(14) "compress.bzip2"
[9]=>
string(3) "zip"
}
এই সমস্ত পরিবর্তনগুলি সত্ত্বেও (আমি অ্যাপাচি শুরু করার পরে), এখনও আমি প্রথমবারের মতো আমার পিএইচপি স্ক্রিপ্টটি HTTP: //localhost/tutorial/retrieve_website.php- এর মাধ্যমে এক্সিলিপস এবং ফায়ারফক্সে অ্যাক্সেস করতে পেরেছি :
সতর্কতা: ফাইল_জেট_কন্টেন্টস () [ফাংশন.ফাইল-গেট-সামগ্রী]: মোড়ক "https" সন্ধান করতে অক্ষম - আপনি যখন পিএইচপি কনফিগার করেছেন তখন আপনি কি এটি সক্ষম করতে ভুলে গেছেন? সি তে: \ xampp \ htdocs \ টিউটোরিয়াল \ retrieve_website.php লাইনের 29 লাইনে
সতর্কতা: ফাইল_জেট_কন্টেন্টস (https: // www.googleapis.com/customsearch/v1?key= সরানো আইডি এবং সিএক্স = সরানো আইডি & কি = দ্য ডেভিল + জর্জিয়া ও ওল্ট = পরমাণু এবং নাম = 5 এ + নিচে + গিয়ে + [ফাংশন.ফাইলে-গেট-সামগ্রী]: স্ট্রিমটি খুলতে ব্যর্থ: সি: am xampp \ htdocs \ টিউটোরিয়াল \ retrieve_website.php লাইন 29 এ
সতর্কতা: ডোমডোকামেন্ট :: লোডএক্সএমএল () [domdocament.loadxML]: খালি স্ট্রিং সি: \ xampp \ htdocs \ টিউটোরিয়াল line retrieve_website.php লাইন 33 এ ইনপুট হিসাবে সরবরাহ করা হয়েছে
ওপেনএসএল: কোনও এইচপি র্যাপার: হ্যাঁ https মোড়ক নেই: কোনও মোড়ক নেই: অ্যারে (10) {[0] => স্ট্রিং (3) "পিএইচপি" [1] => স্ট্রিং (4) "ফাইল" [2] => স্ট্রিং (4) ) "গ্লোব" [3] => স্ট্রিং (4) "ডেটা" [4] => স্ট্রিং (4) "HTTP" [5] => স্ট্রিং (3) "ftp" [6] => স্ট্রিং (3) " জিপ "[7] => স্ট্রিং (13)" কমপ্রেস.জলিব "[8] => স্ট্রিং (14)" কমপ্রেস.বিজিপ 2 "[9] => স্ট্রিং (4)" ফার "}
এটি আমি কীভাবে অগ্রাহ্য করেছি বা করতে ব্যর্থ হয়েছি? আমার নিজের জ্ঞান অনুসারে, আমি এইচটিটিপিএস এবং ওপেনএসএসএল সম্পর্কিত যা কিছু গবেষণা করেছি সেগুলি করেছি
/apache/bin/php.ini
, আমি এটি এক্সএএমপিপি পোর্টেবল লাইট 1.8.1 এ খুঁজে পাচ্ছি না? তবেphp/php.ini
বিদ্যমান, তবে এখানে এসএসএল সক্ষম করা কোনও