Никакой включающий экземпляр типа не доступен в области

Проблема в том. Я провел тщательное расследование в поисках решений по этому поводу, и я знаю, что есть темы, и я тоже следил за ними, и ничего не помогло. При этом я перечислю в точности все, что сделал до сих пор. Я использую PHP 5.2.14 с Zend Debugging в последней версии Eclipse на моем компьютере с Windows XP. У меня 1 ГБ оперативной памяти. У меня XAMPP работает с установленными Apache, MySQL и FileZilla.

В XAMPP я сделал следующее (Apache был отключен во время этих изменений): Я провел тщательное расследование в поисках решений по этому поводу, и я знаю, что есть темы, и я тоже следил за ними, и ничего не помогло. При этом я перечислю в точности все, что сделал до сих пор. Я использую PHP 5.2.14 с Zend Debugging в последней версии Eclipse на моем компьютере с Windows XP. У меня 1 ГБ оперативной памяти. У меня XAMPP работает с установленными Apache, MySQL и FileZilla.

В XAMPP я сделал следующее (Apache был отключен во время этих изменений): Я провел тщательное расследование в поисках решений по этому поводу, и я знаю, что есть темы, и я тоже следил за ними, и ничего не помогло. При этом я перечислю в точности все, что сделал до сих пор. Я использую PHP 5.2.14 с Zend Debugging в последней версии Eclipse на моем компьютере с Windows XP. У меня 1 ГБ оперативной памяти. У меня XAMPP работает с установленными Apache, MySQL и FileZilla.

В XAMPP я сделал следующее (Apache был отключен во время этих изменений): У меня XAMPP работает с установленными Apache, MySQL и FileZilla.

В XAMPP я сделал следующее (Apache был отключен во время этих изменений): У меня XAMPP работает с установленными Apache, MySQL и FileZilla.

В XAMPP я сделал следующее (Apache был отключен во время этих изменений): Нажав на Admin в панели управления XAMPP, перешел на https: // localhost / xampp / . Оттуда я принял сертификаты из этой строки на странице приветствия:

Для поддержки OpenSSL используйте тестовый сертификат с https: // 127.0.0.1 или https: // localhost.

В том же разделе я проверил phpinfo () . В разделе "Среда" СЕРВЕР ["HTTPS"] - это на . В разделе «Среда Apache» HTTPS равно на . В разделе «Переменные PHP» _SERVER ["HTTPS"] равно на . В разделе «Phar» поддержка OpenSSL отключена (установите ext / openssl). Я не знаю, как включить Phar.

Теперь что касается самих файлов в C: \ xampp, Зашел в папку PHP. Как в производственных, так и в разрабатываемых файлах php.ini (лучше перестраховаться) у меня есть allow_url_fopen = On , allow_url_include = On , и я удалил точку с запятой, так что расширение = php_openssl.dll больше не закомментирован. Я даже подтвердил, что .dll находится в папке ext папки PHP. И libeay32.dll, и ssleay32.dll находятся в папках PHP и Apache. В папке Apache нет ни продуктивных, ни разрабатываемых файлов php.ini.

Я зашел на http://www.slproweb.com/products/Win32OpenSSL.html и установил Win32 OpenSSL 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);

Когда я запускаю его как PHP-скрипт в Eclipse, все выводится отлично, как я хочу, вместе со следующими результатами:

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"
}

Несмотря на все эти изменения, я (после того, как я запустил Apache), я все еще получаю те же ошибки при первом обращении к моему PHP-скрипту в Eclipse и Firefox через http: //localhost/tutorial/retrieve_website.php :

] Предупреждение: file_get_contents () [function.file-get-contents]: не удалось найти оболочку «https» - вы забыли включить ее при настройке PHP? в C: \ xampp \ htdocs \ tutorial \ retrieve_website.php в строке 29

Предупреждение: file_get_contents (https: // www.googleapis.com/customsearch/v1?key=removed API ID & cx = удален поисковый идентификатор & q = The + Devil + пошел + down + to + Georgia & alt = atom & num = 5) [function.file-get-contents]: не удалось открыть поток: нет такого файла или каталога в C: \ xampp \ htdocs \ tutorial \ retrieve_website.php в строке 29

Предупреждение: DOMDocument :: loadXML ( ) [domdocument.loadxml]: пустая строка, предоставленная как входная в C: \ xampp \ htdocs \ tutorial \ retrieve_website.php в строке 33

openssl: нет http-оболочки: да https-оболочка: нет оберток: array (10) {[ 0] => строка (3) "php" [1] => строка (4) "файл" [2] => строка (4) "glob" [3] => строка (4) "данные" [4] => строка (4) "http" [5] => строка (3) "ftp" [6] => строка (3) "zip" [7] => строка (13) "compress.zlib" [8] => строка (14) "compress.bzip2" [9] => строка (4) "phar"}

Что я упустил или не сделал? Насколько мне известно, я я сделал все, что я изучал относительно HTTPS и OpenSSL

136
задан Sebastian Zartner 3 September 2015 в 11:52
поделиться