Не знаете, сможете ли вы сделать это на PHP так, как вы описали.
Допустим, у нас есть этот HTML:
<video width="320" height="240" controls>
<source src="playmymovie.php?url=http://domain/video-path/video.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
Так что теперь мы должны сделать PHP-страницу, которая обрабатывает это (см Using php to output an mp4 video):
<?php
$vid_url = isset($_GET['url'])?$_GET['url']:"";
if(empty($vid_url)){
// trigger 404
header("HTTP/1.0 404 Not Found");
} else {
// Get Video
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $vid_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$out = curl_exec($ch);
curl_close($ch);
// Set header for mp4
header('Content-type: video/mp4');
header('Content-type: video/mpeg');
header('Content-disposition: inline');
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".filesize($out));
// Pass video data
echo $out;
}
exit();
?>
Если бы это было, я бы проверить сначала URL, убедитесь, что вы получили статус 200, прежде чем пытаться передать его обратно. Вы также можете активировать правильный статус, чтобы браузер знал, что происходит, и может предупредить пользователя (или вас).
Попробуйте следующее: http://codesamplez.com/programming/php-html5-video-streaming-tutorial –
Почему вы хотите проксировать видео на своем сервере? – Michas
У меня небольшая сеть. Я не хочу, чтобы компьютеры подключались напрямую к Интернету, и я хочу разрешить только некоторые видео с youtube. Поэтому я хочу получить видео из Интернета и передать его другому компьютеров и сохранить это видео на сервер HDD, чтобы быстрее его транслировать в следующий раз .. Я могу это сделать, я имею в виду, что я могу получить видео из Интернета и передать его на другой компьютер и сохранить его на сервере hdd .. каждая вещь работает отлично, но клиент не может переместить видео в обратную или передовую. Я знаю, что могу использовать прокси-сервер, например, squid, но я хочу сделать это через php .. – MrCoder