Q_BASIC
Хранитель порядка
- Регистрация
- 30 Ноя 2013
- Сообщения
- 516
- Реакции
- 1.240
- Автор темы
- #1
Приветствую,
Всё балуясь с сокетами, получаю такой ответ от вк:
У меня одного такое или ответ не так я получаю? А может всё во сне?
Как же так?
Не надо мне рассказывать, что запрос не верный. Это я и так знаю. Это не повод 2 ответа мне присылать
Всё балуясь с сокетами, получаю такой ответ от вк:
Код:
HTTP/1.1 302 Moved Temporarily
Server: Apache
Date: Tue, 05 Apr 2016 17:35:39 GMT
Content-Type: text/html
Content-Length: 157
Connection: keep-alive
Location: https://vk.com/err404.php?path=https://cs509602.vk.me/3/u174641510/videos/7cdaa7ed06.240.mp4&extra=bHJmD-6AL7PdqOMYt286RK5xwTunen7WZ_Rt4bERrM948W8yjV1FHiS1CZzSRNB7e4PFkSbElMfrliicwhlPNk2j4emEPkVEimYX5ZsEW0TqoemzHp7NbdOzuW2eOLKiYGr_ds1kCrdtbJg&from=91.106.207.102&hash=7a9f9338bc
<html>
<head><title>302 Found</title></head>
<body bgcolor="white">
<center><h1>302 Found</h1></center>
<hr><center> Apache </center>
</body>
</html>
HTTP/1.1 400 Bad Request
Server: Apache
Date: Tue, 05 Apr 2016 17:35:39 GMT
Content-Type: text/html
Content-Length: 169
Connection: close
<html>
<head><title>400 Bad Request</title></head>
<body bgcolor="white">
<center><h1>400 Bad Request</h1></center>
<hr><center> Apache </center>
</body>
</html>
У меня одного такое или ответ не так я получаю? А может всё во сне?
Моя функция:
from: Для просмотра ссылки Войдиили Зарегистрируйся
to: файл, куда хотите сохранить вывод
Код:
function download($from, $to)
{
$boundary = "---------------------".substr(md5(rand(0,32000)),0,10);
$parsed = parse_url($from);
$scheme = $parsed['scheme'] === 'https' ? 'ssl://' : '';
$port = $scheme === 'ssl://' ? 443 : 80;
$q = empty($parsed['query']) ? '' : '?'.$parsed['query'];
$headers = 'GET '.$parsed['path'].$q.' HTTP/1.0'.CRLF;
$headers .= 'Host: '.$parsed['host'].CRLF;
$headers .= 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8'.CRLF;
$headers .= 'Accept-Encoding: gzip,deflate,sdch'.CRLF;
$headers .= 'Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4,uk;q=0.2'.CRLF;
$headers .= 'Cache-Control: no-cache'.CRLF;
$headers .= 'User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Dragon/36.1.1.22 Chrome/36.0.1985.97 Safari/537.36'.CRLF;
$headers .= 'Pragma: no-cache'.CRLF;
$headers .= 'Connection: keep-alive'.DCRLF;
$headers .= $boundary.CRLF;
if(!$stream = fsockopen($scheme.$parsed['host'], $port)){
sleep(0.5);
if(!$stream = fsockopen($scheme.$parsed['host'], $port)) return false;
}
fputs($stream, $headers);
$file = fopen($to, "w+");
$is_content = false;
while(!feof($stream)){
$bytes = fgets($stream, 1024);
if($bytes === "\r\n") $is_content = true;
fputs($file, $bytes);
}
fclose($file);
fclose($stream);
return true;
}
from: Для просмотра ссылки Войди
to: файл, куда хотите сохранить вывод
Как же так?
Не надо мне рассказывать, что запрос не верный. Это я и так знаю. Это не повод 2 ответа мне присылать