Вопрос

Я пытаюсь настроить лучший способ войти через PHP команду на удаленный сервер и запустите команду для преобразования файла FLV в MP3 (а затем, возможно, перемещение его на локальный сервер)?

Я всегда могу переместить файл позже, но мне нужно сделать это в этом порядке, так как удаленный сервер ходит FFMPEG.

Использование этого сделает это локально:

exec(ffmpeg -i vid.flv -acodec copy output.mp3);

Как я могу сделать это удаленно?

Спасибо!

Это было полезно?

Решение

Вам нужно сделать следующее в порядке

  • Передать FLV через PHP нативные FTP-команды
  • Создайте слой на сервере FFMPEG для запуска ваших команд
  • Прочитайте код ответа и выполните конкретное действие

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

Сценарий преобразования будет принимать имя файла, а затем посмотреть в локальный каталог для файла, когда он его найдет, он будет конвертировать.

Если вы хотите, чтобы локальный сервер узнал, когда преобразование завершенный Тогда вам также придется отправить удостоверение личности на сценарий преобразования, и вы будете хранить это идентификатор обе стороны, поэтому сервер может пингировать обратно в свой локальный скрипт (ПРЕДУПРЕЖДЕНИЕ!) с идентификатором, и вы можете получить его обратно с сервера.

Причина предупреждения заключается в том, что его трудно получить сервер для Ping, бросил к вашему localhost, если вы за маршрутизатор / брандмауэр, вам придется настроить переадресацию порта и т. Д. на маршрутизаторе и разрешить доступ к порту 80.

Надеюсь, это дает вам некоторую подсказку на том, как справиться с этой ситуацией.

Другие советы

Вы Cannnot выполняют удаленные команды через FTP.

Если у вас есть SSH-доступ к машине, вы можете использовать SSH2 расширение для PHP и выполнить его через SSH.

Посмотрите в библиотеку SSH2 (http://php.net/manual/en/book.ssh2.php.) Для того, как запустить команды удаленно, и библиотека скручиваемости (http://php.net/manual/en/book.curl.php.) Для того, как скачать удаленные файлы.

Напишите PHP-скрипт и загрузите его на сервер преобразования FLV. Сценарий должен:

  1. Загрузите файл FLV (по почте или другому способу скачивания) в vid.flv
  2. Запустите команду сервера «EXEC (FFMPEG -I VID.FLV -ACODEC COPY yource.mp3);"
  3. Сообщите вам о результатах вывода .mo3 готов

Вам много нужно изменить максимальное время выполнения сценария (SET_TIME_LIMIT);

Таким образом, ваш сценарий не потребуется отправлять команды через SSH.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top