Как настроить сервер обновлений 2ГИС для Win32
Сервер обновлений 2ГИС для Windows реализован на базе web-сервера Apache HTTP Server. Для работы требуется Apache с поддержкой OpenSSL. Специальных требований на версию Windows не накладывается — подойдёт любая, на которой заработает Apache. В частности, если у вас в сети уже есть сервер с Apache, обслуживающий внутренний web-сайт компании, и на этом сервере есть доступ в Интернет, вы можете «подселить» туда Сервер обновлений. Он будет доступен по адресу http://ваш_сервер/ver3, не мешая другим сайтам.
Чтобы пользовательские компьютеры автоматически обнаружили локальный сервер обновлений, машина, на которой установлен Сервер обновлений, должна откликаться на DNS-имя 2gis-update.ваш_домен. Или же вы можете прописать адрес сервера обновлений в настройках каждого пользователя — вручную или с помощью доменных политик.
Также вам понадобится дисковое пространство под кэш. В базовой поставке настроен кэш размером 2ГБ; в зависимости от подмножества баз, используемых вашими пользователями, для эффективного кэширования может понадобиться увеличить размер кэша.
Установка и настройка Сервера обновлений
Apache HTTP Server
Если у вас уже установлен Apache с поддержкой OpenSSL, переходите к следующему пункту.
- Зайдите на сайт Apache HTTP Server. Скачайте последнюю стабильную версию. Вам нужна сборка, помеченная как «Win32 Binary including OpenSSL x.y.z (MSI Installer)». Запустите установку.
- Согласитесь на установку из неподписанного файла.
- Нажмите кнопку Next.
- Прочитайте и согласитесь с лицензией.
- Прочитайте readme и нажмите Next.
- Проверьте, что инсталлятор Apache правильно определил ваш сетевой домен и имя сервера. Укажите почтовый адрес (по которому ваши пользователи смогут с вами связаться). Установите Apache как сервис на порту 80.
- Выберите тип установки — типичную или пользовательскую. В последнем случае вы можете не устанавливать документацию на Apache и утилиту для управления сервисом через значок в панели задач.
- Нажмите кнопку Install.
- Возможно, вам понадобится разрешить инсталлятору внесение изменений на компьютере.
- После завершения установки нажмите Finish.
Сервер обновлений
Известная проблема: Инсталлятор Сервера обновлений не работает при включённом UAC. Пожалуйста, отключите UAC на время установки.
- Скачайте инсталлятор Сервера Обновлений (1,2 МБ, *.msi). Запустите установку.
- Нажмите кнопку Далее.
- Прочитайте и согласитесь с лицензионным соглашением.
- Укажите путь к конфигурационному файлу httpd.conf вашей инсталляции Apache HTTP Server (если вы не меняли настройки Apache по умолчанию, вам подойдёт стандартное значение).
- Если ваш сервер не имеет прямого доступа к интернету, укажите адрес прокси-сервера. Apache HTTP Server может использовать только http-прокси без аутентификации.
- Укажите каталог, где Сервер обновлений будет хранить закэшированные файлы. По умолчанию предлагается подкаталог в каталоге установки Apache, но вы можете переназначить его, например, на более ёмкое или более быстрое устройство. Кэш может занимать заметное место на диске. Убедитесь, что у вас достаточно свободного места, и что рост кэша до 2 ГБ и чуть выше не приведёт к проблемам на вашем сервере.
- Нажмите кнопку Установить.
- По окончании установки нажмите кнопку Готово. Инсталлятор автоматически перезапустит Apache. Если перезапуск Apache нежелателен (например, он обслуживает внутренние сайты, с которыми идёт активная работа), снимите флажок «Перезапустить Apache сейчас». В этом случае Сервер обновлений заработает только после того, как вы перезапустите Apache самостоятельно.
Мониторинг и решение проблем
Если возникли проблемы при установке:
- проверьте, что сервис Apache (может называться Apache2.2 или иначе в зависимости от версии) запущен.
- Если сервис не запущен, запустите его.
- Если сервис работает, а обновления — нет, проверьте логи.
Если Apache не запускается
Попробуйте запустить Apache в интерактивном режиме.
- Нажмите Win+R.
- Введите cmd и нажмите OK.
- Введите следующие команды (подставьте особенности вашей инсталляции, где необходимо):
- cd «%ProgramFiles%\Apache Software Foundation\Apache2.2\bin»;
- httpd.
По сообщению, выдаваемому httpd, можно будет определить, в какой строке какого конфигурационного файла проблема.
Удаление
Сервер обновлений удаляется стандартным образом через пункт «Программы и компоненты» Панели управления (в Windows XP — «Установка и удаление программ»).
Удаление Сервера обновлений не затрагивает каталог кэша. Вы можете удалить его вручную.
Если на вашем сервере Apache использовался только для Сервера обновлений, удалите также и Apache (так же через Панель управления).
Дополнительная информация
Устанавливаемые файлы и их назначение
При установке на ваш диск устанавливается несколько конфигурационных файлов для Apache, в которые прописываются введённые вами в процессе установки значения. Если вы захотите что-то поменять после установки, не обязательно переустанавливать Сервер обновлений — можно отредактировать файлы и перезапустить сервис Apache.
Здесь и далее все пути указаны относительно каталога установки Apache.
2gis-update.htdocs\ping
Для определения работоспособности сервера обновлений клиент посылает ему ping-запрос. Сервер отправляет в ответ этот файл. Конкретное содержание файла не имеет значения.
cache\2gis или другой каталог, указанный при установке
Содержит кэш скачанных файлов. Об организации дискового кэша можно почитать в документации Apache. Кэш не удаляется при деинсталляции Сервера обновлений. Вы можете освободить место, удалив его.
conf\httpd.conf
Главный конфигурационный файл Apache. При установке Сервера обновлений в конец этого файла добавляется директива Include, включающая Сервер обновлений. При отладке вы можете отключить Сервер обновлений, закомментировав эту строку символом # и перезапустив сервис Apache.
conf\2gis-thirdparty-server.conf
Конфигурационный файл, реализующий функциональность Сервера обновлений.
Настройки, которые можно менять (со ссылками на документацию):
- ProxyRemoteMatch — прокси-сервер для доступа в интернет.
- CacheRoot — каталог для кэша.
logs
Протоколы обращений к вашему серверу (в том числе к Серверу обновлений) и возникающих ошибок.
Ограничение объёма кэша
Для того, чтобы кэш не разрастался, при установке Сервера обновлений добавляется назначенное задание. По умолчанию оно запускается при запуске системы и работает постоянно. Командная строка этой задачи должна быть следующая:
"полный\путь\к\htcacheclean.exe" -d1440 -p"путь\к\кэшу" -l2048M
Обратите внимание: значения параметров указываются сразу после ключа, без пробела.
- Ключ -d указывает периодичность, с которой будет проверяться размер кэша, в минутах. Значение по умолчанию — 1440 (раз в сутки).
- Ключ -l указывает размер кэша, при превышении которого некоторые закэшированные пакеты будут удалены.
Алгоритм выбора файлов для удаления в htcacheclean не документирован; анализ исходных текстов показывает следующее:
- В первую очередь удаляются файлы из будущего, если таковые обнаружатся (например, в результате перевода времени).
- Во вторую очередь удаляются файлы с истекшим сроком хранения (заголовок Expires). Для пакетов 2ГИС — один месяц с момента попадания в кэш.
- В последнюю очередь, если размер кэша всё ещё больше установленного порога, удаляются остальные файлы в порядке их попадания в кэш, пока размер кэша не опустится до нормы.
Смотрите также: