0+ Материал без явных возрастных ограничений

Разъясняем людям, более приближенным, чем системные администраторы, годами проработавшие с unix-подобными системами как поставить nginx и настроить на нем стриминг видео таким образом, чтобы его можно было проматывать в видеоплеере на любой участок.


Смотрите еще:


Загрузка...

Итак, у нас есть Debian 5, но особых отличий в последующих командах нет для большинства unix. Доступ через SSH (программу можно скачать ниже - PuTTY), также для доступа к файлам я использую WinSCP (скачать можно ниже).

У меня было так: установленная система Debian 5 i386, на нем шли стразу: apache, nginx, lighttp все это было со стримингом h263 или flv файлов, о которых я тоже расскажу.
Также у меня есть плеер, который поддерживает h263, h264 streaming, что это такое? Это значит, что пользователь, нажимая кнопку Play, может переместиться на любой участок времени видеофайла без предварительной полной загрузки самого файла. Решил я помечтать о том, как это классно, но руки не доходили.
Один опытный системный администратор мне подсказал, что лучше сервера, чем nginx нет, он быстр, легок, занимает мало памяти. Но при всем при этом, по нему маловато документации. И привычные файлы htaccess для защиты Ваших директорий он попросту не воспринимает. Поэтому, его обычно ставят в связке с Apache + PHP + MySQL. Но у меня vds, на котором хранятся только видеофайлы и изображения. Мне там особых сложностей не надо.
После долгих скитаний по интернету, я понял, что мне не справиться самому. Смотрел видеоуроки по unix, но что-то конкретного там не было.
Для того, чтобы понять как установить nginx мне пришлось потратить много времени в попытках и в итоге у меня ничего не получалось. Написал на форуме nginx, что хочу сконфигурировать сервер, который у меня уже установлен, но ответы были не внятные, зато я нашел товарища, который мне не просто подсказал, а еще и сделал все. Я конечно ему безмерно благодарен.

Я в линуксе ничего не соображал до недавнего времени. Оказывается там все намного проще, чем в винде, если Вам надо поставить маленький дополнительный модуль, то необходимо сначала удалить старый nginx, затем пересобирать из исходников новый вариант своего сервера, иначе никак.
В общем-то долго думать не пришлось. Человек подсказал и версию и как все это дело установить. Кстати, ВКонтактик использует именно nginx 1.2.1 (на сегодня).

Приступим:

Для начала мне необходимо было удалить старый nginx. Казалось, что надо идти в какой-то каталог и только там выполнять команды. Но, скачайте PuTTY (ниже), войдите в свой vds, желательно под ROOT и своим паролем. Выполним для удаления nginx команду:

apt-get purge nginx

После чего все его файлы исчезли и теперь необходимо будет ставить версию с h263, h264 streaming'ом.

Для того, чтобы возрадоваться и получить полную установку, без каких-либо ошибок, используйте эти файлы:

Скачайте также программу WinSCP (ниже ссылка), если Вы сидите под виндой (я надеюсь), то также само войдите в свой vds под root и паролем. Зайдите в каталог /tmp/ и скопируйте содержимое архива туда, именно папки nginx1.5.8 и nginx_mod_h264_streaming-2.2.7

После того, как данные каталоги будут на месте, используйте PuTTY:

если у Вас не установлен сборщик и компилятор (как это бывает на свежих серверах, то установит его)

apt-get install make gcc

Далее идем:

cd /tmp/nginx1.5.8

Вы окажитесь в каталоге, в котором лежит сам сервер. Для того, чтобы подключить модуль стриминга h264 Вам необходимо будет добавить условие. Также нужно будет добавить еще одно условие для сборки сервера вместе с h263 или flv streaming'ом.
В общем-то сам код команды, который Вы выполните в вышеуказанном каталоге ( /tmp/nginx-1.2.1 ):

./configure --add-module=/tmp/nginx_mod_h264_streaming-2.2.7 --sbin-path=/usr/local/sbin2 --with-debug --with-http_flv_module

Разберем по сегментам:

./configure - выполняем дополнительную настройку
--add-module=/tmp/nginx_mod_h264_streaming-2.2.7 - добавляем, собственно, модуль стриминга h264
--sbin-path=/usr/local/sbin2 - указываем путь КУДА ставить сам сервер. его можно изменить на /etc/nginx
--with-debug - не важно, но я так поинмаю, что это отладка или добавление настроек
--with-http_flv_module - с h263 или flv стримингом

Внимание! Если у Вас свежий сервер, и возникает ошибка:

-bash: ./configure: Permission denied

, то поставьте сборщик (команда apt-get install make gcc)

Внимание! Если возникает ошибка связанная с PCRE library, то установите её:

apt-get install libpcre3 libpcre3-dev

Если возникает ошибка:

./configure: error: the HTTP gzip module requires the zlib library.
You can either disable the module by using --without-http_gzip_module
option, or install the zlib library into the system, or build the zlib library
statically from the source with nginx by using --with-zlib=<path> option.

То используйте команду для установки БЕЗ --without-http_gzip_module:

./configure --add-module=/tmp/nginx_mod_h264_streaming-2.2.7 --sbin-path=/usr/local/sbin2 --with-debug --with-http_flv_module --without-http_gzip_module

Внимание! Если возникает ошибка:

make[1]: *** [objs/addon/src/ngx_http_h264_streaming_module.o] Error 1
make[1]: Leaving directory `/tmp/nginx-1.2.1'
make: *** [build] Error 2

То надо найти и убрать строку в файле ngx_http_streaming_module.c (если Вы ставите не мой дистрибутив):

if (r->zero_in_uri)
{
return NGX_DECLINED;
}

то есть. Откройте его у себя (если ставите не с моих исходников) и впишите эту строку вконец кода, сохраните, сделайте резервную копию оригинального файла с сервера, после чего перезалейте его на сервер.
Если Вы использовали мои файлы, то там уже дописана эта строка. Значит, у Вас получилось поставить все правильно и теперь все работает.

Если ошибка: -bash: ./configure: Permission denied
то проверьте права на ВСЕ файлы chown 755 должны быть!

Если Вы не можете запустить сервер, то нужно поместить файл nginx в папку /etc/init.d, который расположен в архиве!

Важно! Файл nginx имеет директиву:

DAEMON=/usr/local/sbin/nginx

ИЛИ же ей нужно присвоить

DAEMON=/usr/local/nginx/nginx

разные версии nginx реагируют на эту строку по-разному.

Будьте добры, поставьте на /etc/init.d/nginx права 755

После того, как Вы получите много строчек кода при выполнении команды

./configure --add-module=/tmp/nginx_mod_h264_streaming-2.2.7 --sbin-path=/usr/local/sbin2 --with-debug --with-http_flv_module

, необходимо ввести следующую команду:

make && make install

После чего сервер будет НЕ запущен, а только установлен!

Для запуска сервера еще необходимо в директорию:

/usr/local/nginx/conf

скопировать файл из архива usemind.org_nginx+h264streaming.zip\usr\local\nginx\conf\nginx.conf

далее необходимо скопировать файл usemind.org_nginx+h264streaming.zip\etc\init.d\nginx в директорию:

/etc/init.d

nginx.conf - беда не приходит одна

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

Выкладываю Вам свой файл с параметрами конфигурации, основные из которых мы рассмотрим (сам файл скачаете ниже). После установки, он должен находится к каталоге /usr/local/nginx/conf
Скачайте его себе на комп. и редактируйте обычным текстовым редактором.

Главными директивами в нем являются данные с 34 строки и ниже:

server {
listen 80;
server_name f.usemind.org www.f.usemind.org;
root /www/f.usemind.org;
#charset koi8-r;
location ~ \.mp4$ {
mp4;
}

location ~ \.flv$ {
flv;
}

SERVER - основной параметр конфигурации. Прослушиваете 80 порт, указываете имя сервера, после  server_name пишите доменное имя Вашего сайта или IP адрес, ROOT - путь к папке, в которой хранятся файлы, которые необходимо открыть в общий доступ. В нашем случае - это видеоданные. То, что написано после слова LOCATION - ~ \.mp4$ { ...  - это как раз таки и есть расширение файлов, которые необходимо слушать для стриминга.


PuTTY - небольшая программа, позволяющая удаленно управлять серверами, выполняя команды через неё. Утилита имеет широкий спектр настроек, имеет возможность подключаться через SSH, Telnet, Raw, Rlogin, Serial. Умеет запоминать настройки и все команды. Лицо программы настраивается пользователем. Скачать можете чуть ниже.

nginx.conf + h264 streaming.Настройка и установка сервера для видео.PuTTY,WinSCPnginx.conf + h264 streaming.Настройка и установка сервера для видео.PuTTY,WinSCP


WinSCP - программа, позволяющая получить доступ к каталогам и файлам удаленного компьютера. Подключение может происходить по протоколам: SFTP, SCP, FTP. Используется для быстрого и удобного доступа к файлам серверов, удаления, замены, вырезания и копирования различных файлов. Имеет приятное, легко настраиваемое лицо, возможность поиска файла по маске на удаленном компьютере. Скачать можете чуть ниже.


Поделитесь в социльных сетях:

Информация:

Категория:
Web
Просмотров:
1130

Изображения:

Показать изображения

Файлы:

1. Скачать «nginx+h264streaming»
zip14 MB
2. Скачать «nginx conf»
zip4 KB
3. Скачать «putty»
exe472 KB
4. Скачать «winscp438»
zip3 MB
Загрузка...


Случайный материал: Еще

Макс Шлее - Qt 4.8
Подробнее
0+

Используй язык программирования C++ по-максимуму.


Последние 5 материалов:

Раскрыть все
Fl Studio 12 с нуля и до эксперта
0+
Fl Studio 12 с нуля и до эксперта
Подробнее

Fl Studio 12 с нуля и до эксперта – видео курс по созданию и редактированию музыки в программе FL Studio. Вы узнаете о всех возможностях программы, а также полноценно использовать инструмент секвенсора. Информация преподносится с использованием примеров и в удобном для понимания виде.

FL Studio
0+
FL Studio
Подробнее

Image-Line FL Studio Producer Edition – профессиональная программа для создания и редактирования музыки для студий звукозаписи. Её используют, как новички, так и профессионалы.

Cubase SX
0+
Cubase SX
Подробнее

Cubase SX – программа для создания музыки. С её помощью Вы сможете создавать полноценные профессиональные мелодии, композиции, пени, записывать чистый звук с микрофона, редактировать записанный с микрофона голос, убирать шумы, добавлять разные эффекты к голосу.

Изучаем Cubase SX
0+
Изучаем Cubase SX
Подробнее

Cubase SX – это программа для создания музыки. Вы сможете с помощью неё с нуля создавать полноценные песни, мелодии. А данный видео курс поможет правильно и в полном объеме использовать все необходимые и доступные в данной программе возможности.

SpyHunter
0+
SpyHunter
Подробнее

SpyHunter – программа, которая поможет избавиться от навязчивой рекламы на рабочем столе и в браузерах (интернет-обозревателях).


Следите за обновлениями VK:

Добавить комментарий

Комментариев пока нет