LINUX.ORG.RU

fopen и ucoz хостинг


0

1

Доброго времени суток!

Пытаюсь получить страницу с http://ncel.ru/export.yml через fopen в ответ приходит Forbidden. Дело в заголовках, пытаюсь установить следующим образом =>

$params = array('http' => array(
                        'header'  => 'Content-type: application/x-www-form-urlencoded\r\n' . 'User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:15.0) Gecko/20100101 Firefox/15.0.1\r\n'
                    ));
$ctx = stream_context_create($params);
$fp = fopen($flink, "rt", false, $ctx);

Не помогает, может кто сталкивался и знает что еще послать? p.s. принципиально использовать fopen

Ответ на: комментарий от Jaberwock

неверно меня поняли, я пытаюсь скачать файл с хостинга ucoz

SlackUser ()

Никакого контент-тайпа в запросе нет.

Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Accept-Encoding gzip, deflate

Accept-Language ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3

Jaberwock ★★★ ()

Очепятки поправь.

Замени кавычки на двойные и все заработает

Jaberwock ★★★ ()
Ответ на: комментарий от Jaberwock
'header'  => 'Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Encoding gzip, deflate\r\nAccept-Language ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3\r\nUser-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 ( .NET CLR 3.5.30729)'

не помогает

SlackUser ()
Ответ на: комментарий от NeverLoved
'header'  => "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"."\r\n"."Accept-Encoding: gzip, deflate"."\r\n"."Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3"."\r\n"."User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 ( .NET CLR 3.5.30729)"."\r\n"

не заработало

SlackUser ()
Ответ на: комментарий от Jaberwock

для других сайтов fopen работает, да и локально я у себя пробою для чистоты эксперемента получить файл результат тот же Forbidden

SlackUser ()
Ответ на: комментарий от SlackUser
 php -a
Interactive shell

php > $params = array('http' => array('header'  => «Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8».«\r\n».«Accept-Encoding: gzip, deflate».«\r\n».«Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3».«\r\n».«User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 ( .NET CLR 3.5.30729)».«\r\n»));
php > $ctx = stream_context_create($params);
php > $flink='http://ncel.ru/export.yml';
php > $fp = fopen($flink, «rt», false, $ctx);
php > echo fread($fp,1024);
<?xml version=«1.0» encoding=«windows-1251»?>
<!DOCTYPE yml_catalog SYSTEM «shops.dtd»>
<yml_catalog date=«2013-10-15 14:34»>
	<shop>
		<name>��������-�������</name>
		<company>Powered by uCoz, siteID:61036153</company>
		<url>http://ncel.ru</url>
		<currencies>
			<currency id=«RUR» rate=«1»/>
		</currencies>
		<categories>
			<category id=«2»>�����������������</category>
			<category id=«49» parentId=«2»>VGA (640x480)</category>
			<category id=«50» parentId=«2»>HD (1280x720)</category>
			<category id=«51» parentId=«2»>Full HD (1920x1080)</category>
			<category id=«53» parentId=«2»>2 ������</category>
			<category id=«54» parentId=«2»>3-4 ������</category>
			<category id=«55» parentId=«2»>������� �����</category>
			<category id=«52» parentId=«2»>�������� ������</category>
			<category id=«85» parentId=«2»>��� ���������</category>
			<category id=«56» parentId=«2»>GPS-������</category>

Jaberwock ★★★ ()
Ответ на: комментарий от Jaberwock

мистика, все один в один не работает и настройки проверил, все по дефолту в php

SlackUser ()
Ответ на: комментарий от devl547

согласен) но это никак не помогает мне решить проблему, сейчас протетисл на другой машине отправку тот же код, возвращает нормальный xml, а у меня forbidden, какие еще могут быть настройки php? есть идеи?

SlackUser ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.