Я пытаюсь передать поток flv из моего картриджа с открывающимся доступом, используя модуль nginx + rtmp.Openshift + NGINX RTMP
На моей локальной машине, с присоединенной конфигурации, все работает нормально (я использую ffplay для тестирования, например ffplay RTMP: // локальный: 8080/тест/streamkey)
Когда я пытаюсь с такой же конфигурацией на OpenShift, я получаю следующее сообщение об ошибке:
HandShake: Type mismatch: client sent 3, server answered 60 f=0/0
RTMP_Connect1, handshake failed.
Однако, если включить переадресацию портов и протестировать сервер потока с помощью ffplay RTMP: //127.0.0.1: 8080/тест/streamkey, все работает отлично. вот мои портовые пересылки:
rhc port-forward myappname
Checking available ports ... done
Forwarding ports ...
To connect to a service running on OpenShift, use the Local address
Service Local OpenShift
------- -------------- ---- -----------------
nginx 127.0.0.1:8080 => 127.10.103.1:8080
Мой патрон - картридж «diy-0.1». nginx 1.7.6 (также проверен 1.4.4) + rtmp-модуль.
Я подозреваю, что есть некоторые проблемы с некоторым прокси-сервером (apache?), Который использует openshift для обработки передач, возможно, он не разрешает заголовки rtmp (?)?
NB: Конфигурация nginx http-only работает нормально.
Может ли кто-нибудь помочь? Я застрял, я думаю, что это первый случай, когда я спрашиваю что-то о stackoverflow :-)
Конфигурация nginx (NB: путь «play» и IP: PORT принимаются с использованием переменных среды смены).:
rtmp {
server {
listen 127.10.103.1:8080;
chunk_size 8192;
application test {
play /var/lib/openshift/54da37644382ece45c000139/app-root/runtime/repo/public;
}
}
}
Спасибо, это то, что я искал! У меня все еще была надежда, но, к счастью, у меня есть план B! –