Видеонаблюдение через интернет в веб-браузере

Делаем веб-интерфейс AVReg корневым.

Инструкции для Apache 2.2/2.4, см. версию

apt-cache policy apache2

Задача

По умолчанию, сразу после установки веб-интерфейс AVReg доступен по адресу (URL):

http://server/avreg/

Задача: запросы пользователей без префикса «/avreg» в URL-path, т.е.

http://server/

перенаправлять на веб-сайт AVReg.

Решение

Способ №1 - перенаправление.

Для реализации воспользуемся директивой RedirectMatch модуля mod_alias. Первым делом, проверяем использует ли Apache модуль mod_alias (и заодно подключаем если не использует):

sudo a2enmod alias

Apache 2.4

Далее открываем в текстовом редакторе конфигурационный файл Apache2

sudoedit /etc/apache2/sites-available/000-default.conf

и добавляем строки помеченные знаком:

diff -U3 /etc/apache2/sites-available/000-default.conf.orig /etc/apache2/sites-available/000-default.conf

--- /etc/apache2/sites-available/000-default.conf.orig      2016-09-28 10:26:20.876000000 +0300
+++ /etc/apache2/sites-available/000-default.conf    2016-09-28 10:38:55.184000000 +0300
@@ -10,7 +10,6 @@
 
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html
+     RedirectMatch ^/$ /avreg/
 
        # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
        # error, crit, alert, emerg.

Apache 2.2

Далее открываем в текстовом редакторе конфигурационный файл Apache2

sudoedit /etc/apache2/sites-available/default

и добавляем строки помеченные знаком:

diff -U5 /etc/apache2/sites-available/default.orig /etc/apache2/sites-available/default

--- /etc/apache2/sites-available/default.orig
+++ /etc/apache2/sites-available/default
@@ -9,10 +9,12 @@
        <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
+             # XXX redirect from "/" to "/avreg" by mod_alias' RedirectMath
+             RedirectMatch ^/$ /avreg/
        </Directory>
 
        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None

После изменения файлов нужно сообщить об этом веб-серверу Apache (см. ниже).

Способ №2 - меняем DocumentRoot.

Этот способ сложнее в настройке, но позволяет вовсе избавиться от префикса «/avreg».

Нужно изменить 3 файла:

  1. /etc/apache2/sites-available/default (Apache 2.2) или /etc/apache2/sites-available/000-default.conf (Apache 2.4) - изменить значение параметра DocumentRoot;
  2. /etc/avreg/site-apache2-user.conf - изменить алиас /avreg/media;
  3. /etc/avreg/avreg.conf - для приложения avreg-site (веб-интерфейс AVReg) очистить значение параметра prefix.

Ниже представлены различия (в формате diff -U), наглядно поясняющие какие строки удалять (помечены знаком минус) а какие строки добавлять (помечены знаком плюс).

Apache 2.4

Открыть в текстовом редакторе:

sudoedit /etc/apache2/sites-available/000-default.conf

Заменить строку:

diff -U2 /etc/apache2/sites-available/000-default.conf.orig /etc/apache2/sites-available/000-default.conf

--- /etc/apache2/sites-available/000-default.conf.orig      2016-09-28 10:26:20.876000000 +0300
+++ /etc/apache2/sites-available/000-default.conf    2016-09-28 10:55:49.864000000 +0300
@@ -10,5 +10,5 @@
 
        ServerAdmin webmaster@localhost
-     DocumentRoot /var/www/html
+     DocumentRoot /usr/share/avreg-site
 
        # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,

Apache 2.2

Открыть в текстовом редакторе:

sudoedit /etc/apache2/sites-available/default

Заменить строку:

diff -U3 /etc/apache2/sites-available/default.orig /etc/apache2/sites-available/default

--- /etc/apache2/sites-available/default.orig
+++ /etc/apache2/sites-available/default
@@ -1,8 +1,8 @@
 <VirtualHost *:80>
        ServerAdmin webmaster@localhost
 
-     DocumentRoot /var/www
+     DocumentRoot /var/www/avreg
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>

AVReg 6.2

Открыть в текстовом редакторе:

sudoedit /etc/avreg/site-apache2-user.conf

Заменить строку:

diff -u1 /etc/avreg/site-apache2-user.conf.orig /etc/avreg/site-apache2-user.conf

--- /etc/avreg/site-apache2-user.conf.orig
+++ /etc/avreg/site-apache2-user.conf
@@ -4,2 +4,3 @@
-Alias '/avreg/media' '/var/spool/avreg'
+Alias '/media'       '/var/spool/avreg'

Далее, откройте в текстовом редакторе:

sudoedit /etc/avreg/avreg.conf

найдите в нём группу настроек веб-интерфейса «avreg-site {…}» и добавьте параметр «prefix» с пустым значением.

/etc/avreg/avreg.conf

...
avreg-site.conf {
  ...
  prefix = ''
  ...
}
...

Перезапуск Apache

После изменения конфигурационных файлов нужно сообщить об этом веб-серверу Apache посредством выполнения любой команды (предполагается что демон apache2 уже работает):

sudo apache2ctl -k restart

или

sudo service apache2 restart
manual/applications/remove-avreg-prefix.txt · Последние изменения: 2016-09-28