Обратный прокси-сервер Apache - сначала запустите скрипт - PullRequest
1 голос
/ 25 декабря 2010

Я экспериментирую с доставкой видеоконтента с использованием VLC и обратного прокси-сервера Apache.Поскольку VLC может поддерживать потоковую передачу по протоколу http, я уверен, что он будет работать с обратным прокси-сервером Apache (я еще не пробовал, но не понимаю, почему он не будет работать).

Раньшепозволяя Apache прокси-серверу HTTP-поток видео, я хотел бы сначала запустить скрипт.Есть ли вариант в Apache, чтобы сделать это?

Если нет, то может ли кто-нибудь придумать способ, которым PHP сначала совершит какое-то волшебство, а затем каким-то образом перенаправит на видеопоток http, не заставляя кричать клиента VLC или Windows Media Player?Делая это таким образом, обратный прокси-сервер Apache будет просто указывать только на скрипт PHP.

В любом случае, идея сценария это запустить потоковый сервер VLC.

Спасибо

1 Ответ

2 голосов
/ 25 декабря 2010

если вы действительно хотите сделать это в apache, вы всегда можете написать свой собственный модуль:)

или вы можете использовать mod_rewrite с опцией prg (переписать карту) .где у вас есть правило перезаписи, обрабатываемое внешней программой.вы можете делать все, что хотите (регистрация и т. д.).не забудьте установить файл rewritelock , иначе вы столкнетесь со странным поведением.

вы также можете сделать «все» в php и затем использовать модуль apache mod_xsendfile где вы просто передаете в php заголовок, содержащий расположение файла в файловой системе.

он не будет раскрыт клиенту, но будет перехвачен модулем apache и обслужен apache.Ваш php-процесс будет регулярно завершаться.

эти варианты являются лучшими из коробки, которые я могу придумать.

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

или вы можете выполнить некоторую постобработку файла журнала, если это решит вашу проблему.

...