URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 55664
[ Назад ]

Исходное сообщение
"Раздел полезных советов: Создание локального сервера обновле..."

Отправлено auto_tips , 09-Июн-09 18:32 
Инструкция, как поднять локальный сервер обновлений для Firefox.
В наличии имелся сервер с Debian Lenny. На него был поставлен apache2 и libapache2-mod-php5

   sudo apt-get install apache2
   sudo apt-get install libapache2-mod-php5

В файле /etc/apache2/sites-available/default директива AllowOverride None была изменена на AllowOverride FileInfo
В каталоге /var/www был создан каталог /var/www/update/Firefox/3.0.10/win32/ru/release и туда положены файлы:

   root@db-fw:/var/www/update/Firefox/3.0.10/win32/ru/release# ls -la
   -rw-r--r-- 1 root root  2188005 2009-05-28 11:22 firefox-3.0.10-3.0.11.ru.win32.partial.mar
   -rw-r--r-- 1 root root 10189913 2009-05-28 11:25 firefox-3.0.11.ru.win32.complete.mar
   -rw-r--r-- 1 root root       59 2009-05-28 10:12 .htaccess
   -rw-r--r-- 1 root root      658 2009-05-28 11:20 update
   -rw-r--r-- 1 root root      650 2009-05-28 12:12 update.xml

Файлы firefox-3.0.10-3.0.11.ru.win32.partial.mar и firefox-3.0.11.ru.win32.complete.mar
были взяты с ftp://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/3.0.11.../

Файлы .htaccess и update были взяты с https://developer.mozilla.org/en/Setting_up_an_update_server без изменений.

.htaccess:

   <FILES update>
      ForceType application/x-httpd-php
   </FILES>

PHP скрипт update:

   <?php
   header("Content-type: text/xml");

   $url_array=explode("/",$_SERVER["REQUEST_URI"]);
   $noidea=$url_array[2];
   $product=$url_array[3];
   $version=$url_array[4];
   $build_id=$url_array[5];
   $build_target=$url_array[6];
   $locale=$url_array[7];
   $channel=$url_array[8];
   // filename is totally ignored
   $filename=$url_array[9];
  
   $updatefile = "update.dir/$noidea/$product/$version/$build_id/$build_target/$locale/$channel/$filename";

   if (file_exists($updatefile)) {
     $handle = fopen($updatefile, "r");
     $contents = fread($handle, filesize($updatefile));
     echo "$contents";
     fclose($handle);
   } else {
      echo '<?xml version="1.0"?>';
   ?>
   <updates></updates>
   <?
   }

   ?>


Потом был создан файл update.xml:

   <?xml version="1.0"?>
   <updates>
   <update type="minor" version="3.0.11" extensionVersion="3.0.11" buildID="2009042316"
     detailsURL="http://192.168.0.1/ru/firefox/3.0.11/releasenotes/">
   <patch type="complete" URL="http://192.168.0.1/update/Firefox/3.0.10/win32/ru/release/fi...
     hashFunction="SHA1" hashValue="1a08be9c203da5fb20f632e970e23331bb21b995" size="10189913" />
   <patch type="partial" URL="http://192.168.0.1/update/Firefox/3.0.10/win32/ru/release/fi...
     hashFunction="SHA1" hashValue="67683707609194c20188459da2ecfe9853122de4" size="2188005" />
   </update>
   </updates>

Хэш функции были вычислены с помощью sha1sum.

Потом я открыл русский Firefox 3.0.10 для Windows и создал строковый параметр app.update.url.override со значением
http://192.168.0.1/update/Firefox/3.0.10/win32/ru/release/up... и проверил наличие обновлений.
Firefox успешно нашёл обновление для 3.0.11 и успешно его применил.


URL: http://blog.unghost.ru/2009/05/firefox_28.html https://developer.mozilla.org/en/Setting_up_an_update_server
Обсуждается: http://www.opennet.me/tips/info/2091.shtml


Содержание

Сообщения в этом обсуждении
"Создание локального сервера обновлений для Firefox"
Отправлено mma , 09-Июн-09 18:32 
а аналогичную вещь можно сделать для дополнений - чтобы фаерфокс тягал их не с интернета а слокального сервера - строго заранее созданный набор

"Создание локального сервера обновлений для Firefox"
Отправлено ононим , 09-Июн-09 23:30 
если еще придумать, как сделать так, чтобы не надо было прописывать в каждом about:config параметр со своим именем сервера.

вот параметр по умолчанию:
https://aus2.mozilla.org/update/3/%PRODUCT%/%...

еще статью было бы не плохо дополнить скриптом, проверяющим обновления на сайте мозиллы


"Создание локального сервера обновлений для Firefox"
Отправлено ононим , 09-Июн-09 23:35 
сейчас распаковал exe файл фокса простым просмоторщиком архивов и нашел там /localized/browserconfig.properties.
Думаю, что можно прописать туда настройку на свой сервер и после этого устанавливать фокс с этого exe файла.

"Создание локального сервера обновлений для Firefox"
Отправлено luzers , 10-Июн-09 10:00 
через гпо или реестр данное колдовство можно сделать?
ну или батничком каким например

"Создание локального сервера обновлений для Firefox"
Отправлено ононим , 10-Июн-09 12:12 
фокс не хранит информации в реестре.

"Создание локального сервера обновлений для Firefox"
Отправлено Sergio , 10-Июн-09 14:53 
Начиная с версии 3.5 можно будет делать свои сборки фокса ( http://www.opennet.me/opennews/art.shtml?num=22081 ), так что инструкция как нельзя кстати. Спасибо!

"Создание локального сервера обновлений для Firefox"
Отправлено pavlinux , 16-Июн-09 05:20 
>Начиная с версии 3.5 можно будет делать свои сборки фокса ( http://www.opennet.me/opennews/art.shtml?num=22081
>), так что инструкция как нельзя кстати. Спасибо!

Начиная с версии 0.0.0.0.0.0.0.0.1-pre-beta-alpha-test.rc0.01 можно делать свои сборки :)



"Создание локального сервера обновлений для Firefox"
Отправлено yosemity , 11-Июн-09 12:00 
А как в данном случае обновлять не имея прав админа? Допустим в офисе. Я ставлю и обновляю все проги самописными скриптами на WSH, установка при старте кампа. Установочный экзешник Фаерфокс можно распаковать и огнелис автоматически ставится с ключом /S
Вот дополнения было б неплохо так автоматизировать.
Кстати, сам фаерфокс не юзаю и не проверял, но считаю, что браузер  хранит настройки так же как и птицка в текстовых файлах, соответственно при логине юзера можно лопатить (да хоть тем же WSH) файл настроек и менять нужный параметр. Я аналогичным образом генерю профиль птицки для юзера, если у него обнаружено мыло в АД (с правильными подписями, выводимым именем и пр).

ЗЫ, в упор не вижу обновление 11 %)


"Создание локального сервера обновлений для Firefox"
Отправлено yosemity , 11-Июн-09 12:02 
Прошу прощения, про неВиндус я как-то забыл )))

"Создание локального сервера обновлений для Firefox"
Отправлено Zenitur , 12-Июн-09 07:57 
Для жителей Томска был вроде бы такой проект. firefox.opentomsk.net

"Создание локального сервера обновлений для Firefox"
Отправлено pavlinux , 16-Июн-09 05:17 
Дэцкий сад, не меньше...  
Правильно настроенный Squid за вас всё сделает!


"Создание локального сервера обновлений для Firefox"
Отправлено hexes , 03-Авг-09 08:31 
Стоит squid. Какие настройки?
Взял бы да ткнул носом... В какую сторону копать?