Поддержка PHP в Apache2.
Заметка по мотивам форума www.forumnov.ru
Для включения поддержки PHP в Apache2 необходимо установить несколько пакетов. Для этого в консоли выполните команду:
apt-get install libapache2-mod-php5 libapache2-mod-ruby php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-json php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl
Запустить необходимые модули:
a2enmod ssl
a2enmod rewrite
a2enmod suexec
a2enmod include
Отредактировать dir.conf:
nano -w /etc/apache2/mods-available/dir.conf
примерно так:
<IfModule mod_dir.c>
#DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl index.xhtml
</IfModule>
И перезапустить краснокожего:
/etc/init.d/apache2 force-reload
Ставим phpmyadmin.
phpmyadmin - веб-инструмент для управлениями MySQL-ными базами данных. Очень удобный инструмент для разработчиков.
Установим командой:sudo apt-get install phpmyadminВо время установки от нас запросят об используемом веб-сервере - выбираем "apache2".
Вход в phpmyadmin:http://localhost/phpmyadmin
Трансляция видео из портов Motion через 80 порт.
Способ "гнать" видео через 80 порт.
В /etc/apache2/mods-enable делаем симлинки на
/etc/apache2/mods-available/proxy.conf,
/etc/apache2/mods-available/proxy.load и
/etc/apache2/mods-available/proxy_http.load.
В proxy.conf пишем следующее:
Код:<IfModule mod_proxy.c>
ProxyRequests Off
<Proxy *>
AddDefaultCharset off
Order deny,allow
Allow from all
</Proxy>
ProxyVia On
ProxyPass /motion/live/1 http://localhost:8081
ProxyPass /motion/live/2 http://localhost:8082
ProxyPass /motion/live/3 http://localhost:8083
ProxyPass /motion/live/4 http://localhost:8084
# ProxyPass /motion/config http://localhost:8080
</IfModule>
Перезапускаем apache2.
Теперь получить видео с камеры 1 можно так:Код:<img src="/motion/live/1" width="320" height="240">
Второй способ - MjpegProxyGrab.
Установить пакет mjpeg-proxygrab-1.2
В apache2.conf добавить следующее:
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
Теперь получить видео с камеры 1 можно так:Код:<img src="/cgi-bin/nph-mjprox?1" width="320" height="240">
Третий способ.
Взято отсюда: http://www.lavrsen.dk/foswiki/bin/view/Motion/MjpegFrameGrabPHP
Создаем файл mjprox.php c таким содержимым:Код:<?php
set_time_limit(0);
$fp = fsockopen ("127.0.0.1", 8081, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br>\n";
} else {
fputs ($fp, "GET / HTTP/1.0\r\n\r\n");
while ($str = trim(fgets($fp, 4096)))
header($str);
fpassthru($fp);
fclose($fp);
}
?>Пример для первой камеры (порт 8081).
Для вывода видео на страничке добавляем такой тег:Код:
<img src="mjprox.php" width="320" height="240">