powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Выполнить удаленный урл и вернуться на "место".
17 сообщений из 17, страница 1 из 1
Выполнить удаленный урл и вернуться на "место".
    #38076923
_Промешан_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если на текущем сервере нельзя запользовать json_decode и file_get_content (в особенности его), то как можно выполнить некий урл, который делает нечто на удаленном сервере и после выполнения (или сразу) вернуться на место, откуда был запущен скрипт

PHP.
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38076944
Фотография r u
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Промешан_,

если нельзя использовать file_get_content то наверное запрещены и все другие функции подобные.
перебирайте их все. curl, fopen...
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38077334
phpz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
r u_Промешан_,

если нельзя использовать file_get_content то наверное запрещены и все другие функции подобные.
перебирайте их все. curl, fopen...

Можно еще shell-подобные команды попробовать, хотя их запрещают первым делом, но не всегда xD
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38077342
phpz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
phpz,

+ поиграться с сокетами
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38077924
_Промешан_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
fopen работает. curl-а нету.
фопен то тут никак не поможет?
А еще варианты?

А то только и получается что ЯСом с дурацким setTimeout и window.location = <?=$Referer?>.
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38077925
_Промешан_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Какие шелл команды пробовать и каким образом из php-скрипта запулять?
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38077989
Програмёр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Промешан_фопен то тут никак не поможет?

почему не поможет. Конечно курлом легче и круче, но у меня все парсеры сначала на сокетах писались, только потом я их на курл пересаживал. Если всё делать правильно, то чистые сокеты почти ничем не уступают курлам...
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38077997
_Промешан_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Програмёр_Промешан_фопен то тут никак не поможет?

почему не поможет. Конечно курлом легче и круче, но у меня все парсеры сначала на сокетах писались, только потом я их на курл пересаживал. Если всё делать правильно, то чистые сокеты почти ничем не уступают курлам...подскажете? Я не в зуб ногой про сокеты. Точнее как то пробовал дааавно разобраться да и то не в веб-версии, нотак и не разобрался.
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38078257
_Промешан_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашел сие: http://forum.php.su/topic.php?forum=1&topic=2031&postid=1239527457#1239527457

Только пишет мне сервер: Fatal error: Call to undefined function socket_create()
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38078272
Програмёр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Промешан_Програмёрпропущено...

почему не поможет. Конечно курлом легче и круче, но у меня все парсеры сначала на сокетах писались, только потом я их на курл пересаживал. Если всё делать правильно, то чистые сокеты почти ничем не уступают курлам...подскажете? Я не в зуб ногой про сокеты. Точнее как то пробовал дааавно разобраться да и то не в веб-версии, нотак и не разобрался.
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
            //вместо [что-то там] вставь свои значения
            $packet="GET [полный url куда стучимся] HTTP/1.0\r\n"
            ."Host: [хост на который стучимся]\r\n"
            ."Accept: text/html\r\n"
            ."Referer: [страница с которой пришли]\r\n"
            ."User-Agent: [строка идентификации любого браузера, у меня просто script было]\r\n"
            ."Pragma: no-cache\r\n"
            ."Cache-Control: no-cache\r\n"
            ."Content-Type: application/x-www-form-urlencoded\r\n"
            ."Connection: close\r\n\r\n";
            $res='';
            $f=fsockopen($host, 80); //открыли соединение по 80-му порту
            if($f){
                fputs($f,$packet); //отправили http запрос
                while ($temp = fgets($f) !==false){ //пока получаем данные
                    $res.=$temp;                          //записываем в переменную
                }
                fclose($f) //закрыли
            }else{die('не смог соединиться');} //если не смогли открыть
            echo $res; //результат - html страница (с http заголовками)


Если ничего не забыл, то всё должно работать.
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38078276
Програмёр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Промешан_Нашел сие: http://forum.php.su/topic.php?forum=1&topic=2031&postid=1239527457#1239527457

Только пишет мне сервер: Fatal error: Call to undefined function socket_create()

да, помню тоже такое писало... просто через fsockopen можно только tcp соединение создать, как я помню, а через socket_create - любое. Поэтому на хостингах в целях безопасности последние запрещаются. ))
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38078307
_Промешан_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Програмёр_Промешан_Нашел сие: http://forum.php.su/topic.php?forum=1&topic=2031&postid=1239527457#1239527457

Только пишет мне сервер: Fatal error: Call to undefined function socket_create()

да, помню тоже такое писало... просто через fsockopen можно только tcp соединение создать, как я помню, а через socket_create - любое. Поэтому на хостингах в целях безопасности последние запрещаются. ))Гм. Сработало.
yandsearch?text=1&lr=213 вернул 1111111NULL


А таймаут в заголовке никакой не надо указывать? Точнее как это сделать?
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38078367
_Промешан_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Интересно, a echo var_dump($e), где $e - результат выполнения запроса для yandsearch..., равный 1111111NULL - адекватный?
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38078419
Програмёр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Промешан_Интересно, a echo var_dump($e), где $e - результат выполнения запроса для yandsearch..., равный 1111111NULL - адекватный? наверное я просто $temp = fgets($f) забыл в скобочки взять... попробуй.
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38078759
_Промешан_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Програмёр_Промешан_Интересно, a echo var_dump($e), где $e - результат выполнения запроса для yandsearch..., равный 1111111NULL - адекватный? наверное я просто $temp = fgets($f) забыл в скобочки взять... попробуй.
Я тоже заметил, но виду не подал )))


Объясни плиз, имеет какой смысл ставить на поток тайм-аут? Например для ожидания ответа или сокеты сами за это заботятся?
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38078765
_Промешан_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, а вот тут возник вопрос, а как отправлять запрос на HTTPS?
Даже при проставке порта 443 пишет:

Код: plaintext
1.
2.
Server: nginx/1.2.4 Date: Thu, 13 Dec 2012 22:33:40 GMT Content-Type: text/html Content-Length: 270 Connection: close
400 Bad Request
The plain HTTP request was sent to HTTPS port
...
Рейтинг: 0 / 0
Выполнить удаленный урл и вернуться на "место".
    #38078776
_Промешан_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Реализовал!

для 443 порта к хосту во fsockopen надо добавлять префикс 'ssl://'.

И я сделал HTTP 1.1

А нормальных грабберов контента не обнаружил, только постаринке через substr и stripos($a,'\r\n\r\n');
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Выполнить удаленный урл и вернуться на "место".
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]