Използване на php за свързване с URL адрес във виртуална кутия за гости, неуспешно отваряне на поток

Използвам Virtuablbox. На моя хост изпълнявам PHP приложение, което трябва да се свърже с друго приложение на уеб сървъра на моя гост.

Използвам ip, когато се опитвам да се свържа.

Мога да се свържа с абсолютно същия URL от браузъра и той работи.

От PHP мога да се свързвам успешно с URL адреси в интернет.

Имам нужда от помощ с идеи (или решения) какъв може да е проблемът. Насоките за търсене на решение също са добре. Много ми е трудно да намеря решение.

Точно съобщение за грешка:

[Съб, 30 юли, 19:35:10 2011 г.] [грешка] [клиент ::1] PHP предупреждение: fopen(): php_network_getaddresses: getaddrinfo неуспешно: предоставено е име на възел или име на сървър или не е известно в /Library/WebServer/Documents/SMICTestProject/ test.php на ред 10

[Съб, 30 юли, 19:35:10 2011] [грешка] [клиент ::1] Предупреждение за PHP: fopen(http://\xef\xbb\xbf192.168.1.105/otrs/test.pl): неуспешно отваряне поток: php_network_getaddresses: getaddrinfo неуспешно: име на възел или име на сървър е предоставено или не е известно в /Library/WebServer/Documents/SMICTestProject/test.php на ред 10

Това е моят PHP файл, работещ на хоста:

<?php

$handle = fopen("http://192.168.1.105/otrs/test.pl", "r");
if(!$handle){

    echo "Failed";
}else{

    echo "Succeeded";
}


?>

Файлът, към който се опитвам да се свържа, е PERL файл.

Гостът използва OpenSUSE/Apache.

Моят хост е Mac OsX и използвам apache и за PHP.

"allow_url_fopen = Включено" в php.ini.

Благодаря ви предварително!


person Nicsoft    schedule 30.07.2011    source източник


Отговори (3)


Вашият хост VirtualBox конфигуриран ли е да работи в Bridged режим? NAT режимът по подразбиране във VirtualBox ще предотврати всякакви външни (хост) заявки да достигнат до госта.

От кой точно браузър успяхте да се свържете с искания ресурс - този в госта или в хост ОС?

person brezanac    schedule 30.07.2011
comment
Конфигуриран е да работи в мостов режим. Успях да се свържа с помощта на Firefox както от гост, така и от хост. - person Nicsoft; 30.07.2011
comment
Малко съм озадачен коя част всъщност прави искането. Поправете ме, ако греша, но се опитвате да осъществите достъп до PHP скрипт, който се намира на операционната система за гости (SUSE), който от друга страна се опитва да достигне до уеб сървър на 192.168.1.105? Това същият IP адрес ли е като адреса на машината, която изпълнява PHP скрипта? - person brezanac; 30.07.2011
comment
Съжалявам, бях малко неясен. На моя хост изпълнявам приложение, което трябва да има достъп до някакво съдържание на госта чрез http. PHP-файлът, който включих в публикацията си, се изпълнява на хоста. - person Nicsoft; 30.07.2011

Изглежда, че нямате зададен "allow_url_fopen" във вашия PHP.INI файл.

Вижте това за повече информация: http://www.php.net/manual/en/filesystem.configuration.php#ini.allow-url-fopen

person k0d3g3ar    schedule 30.07.2011
comment
Благодаря! Всъщност е включено: allow_url_fopen = Включено - person Nicsoft; 30.07.2011

Проблемът е решен. Нямам представа какъв беше проблемът, но рестартирането на всичко го оправи. Аз съм в друга мрежа, но предполагам, че това няма значение.

person Nicsoft    schedule 03.08.2011