Проблемы с установкой, настройкой и работой системных и сетевых программ.
Модераторы: GRooVE, alexco
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
evsey
- рядовой
- Сообщения: 31
- Зарегистрирован: 2013-02-06 9:33:17
Непрочитанное сообщение
evsey » 2014-08-08 7:16:02
OttoFix писал(а):
Так, давайте по порядку.
1. Что хотите получить в итоге? (зеркало с обновлениями для определенной версии V5 или для нескольких версий нода v4, v5, v6 и т.д.)
2. зря отказались от апача
3. если обновления лежат в корне сайта, то алисы не нужны.
1) Хочу обновление всех версий
2) Вернуть не проблема.
3) Не работает,даже если в корне.
На выходных поковыряю локально.
evsey
-
Хостинг HostFood.ru
-
Хостинг HostFood.ru
Тарифы на хостинг в России, от 12 рублей:
https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.:
https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах:
https://www.host-food.ru/domains/
-
evsey
- рядовой
- Сообщения: 31
- Зарегистрирован: 2013-02-06 9:33:17
Непрочитанное сообщение
evsey » 2014-08-08 7:18:33
2. зря отказались от апача
apache вернул порт 8888
evsey
-
OttoFix
- рядовой
- Сообщения: 31
- Зарегистрирован: 2014-04-17 7:00:36
Непрочитанное сообщение
OttoFix » 2014-08-08 7:36:18
evsey писал(а):2. зря отказались от апача
apache вернул порт 8888
Проблема в том, что нод при обновлении запрашивает фаил update.ver (для каждой версии нода он свой) в нем указано расположение файлов обновления от корня сайта.
Надо что бы апач определял по user-agent версию нода и отдавал нужный update.ver
Для этого нужно сделать реврайт, в корне сайта создаем фаил
.htaccess со следующим содержанием
Код: Выделить всё
RewriteEngine on
Options +FollowSymlinks
RewriteCond %{HTTP_USER_AGENT} ^NOD32.*BPC.2
RewriteRule ^update.ver$ /nod_upd/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.3
RewriteRule ^update.ver$ /eset_upd/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.4
RewriteRule ^update.ver$ /eset_upd/v4/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.5
RewriteRule ^update.ver$ /eset_upd/v5/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.6
RewriteRule ^update.ver$ /eset_upd/v6/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.7
RewriteRule ^update.ver$ /eset_upd/v7/update.ver
<files .htaccess="">
order allow,deny
deny from all
</files>
Главное нужно проверить чтоб апач был с поддержкой модуля rewrite
OttoFix
-
OttoFix
- рядовой
- Сообщения: 31
- Зарегистрирован: 2014-04-17 7:00:36
Непрочитанное сообщение
OttoFix » 2014-08-08 8:49:00
kharkov_max писал(а):Чего то у меня перестал валидные ключи искать, у всех так ?
Уже несколько дней прошло ...
Проблема, по-видимому, в том, что тестирование валидности ключа в скрипте проводится по анализу ответа на запрос загрузки файлов, определенных как тестовые в \Nod32MS\inc\init.php:
...
define('TESTKEY_PATH_NOD', "/v3-rel-sta/mod_000_loader/em000_32_l0.nup");
define('TESTKEY_PATH_ESS', "/v3-rel-sta/mod_010_smon/em010_32_l1.nup");
...
Функция get_headers() возвращает ошибку 404 - файл не найден, так как такого(их) файлов действительно теперь с 29.07.2014 - 30.07.2014 на северах Eset в этой(этих) папках действительно нет! Зато в этих же числах прошедшего месяца появились новые папки в файловой структуре, где находятся подобные файлы, а именно и соответственно:
/v3-rel-sta/mod_000_loader_1072/em000_32_l0.nup и
/v3-rel-sta/mod_010_smon_1034/em010_32_l1.nup
Таким образом, ИМХО, для решения проблемы достаточно скорректировать TESTKEY_PATH_NOD и TESTKEY_PATH_ESS в \Nod32MS\inc\init.php следующим образом:
...
define('TESTKEY_PATH_NOD', "/v3-rel-sta/mod_000_loader_1072/em000_32_l0.nup");
define('TESTKEY_PATH_ESS', "/v3-rel-sta/mod_010_smon_1034/em010_32_l1.nup");
...
и все будет хорошо :smil
Это одна из причин, еще сейчас многие сайты ключи прячут за скриптами, что бы компания нод не внесла сайт в черный список.
OttoFix
-
evsey
- рядовой
- Сообщения: 31
- Зарегистрирован: 2013-02-06 9:33:17
Непрочитанное сообщение
evsey » 2014-08-08 9:22:43
OttoFix писал(а):evsey писал(а):2. зря отказались от апача
apache вернул порт 8888
Проблема в том, что нод при обновлении запрашивает фаил update.ver (для каждой версии нода он свой) в нем указано расположение файлов обновления от корня сайта.
Надо что бы апач определял по user-agent версию нода и отдавал нужный update.ver
Для этого нужно сделать реврайт, в корне сайта создаем фаил
.htaccess со следующим содержанием
Код: Выделить всё
RewriteEngine on
Options +FollowSymlinks
RewriteCond %{HTTP_USER_AGENT} ^NOD32.*BPC.2
RewriteRule ^update.ver$ /nod_upd/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.3
RewriteRule ^update.ver$ /eset_upd/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.4
RewriteRule ^update.ver$ /eset_upd/v4/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.5
RewriteRule ^update.ver$ /eset_upd/v5/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.6
RewriteRule ^update.ver$ /eset_upd/v6/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.7
RewriteRule ^update.ver$ /eset_upd/v7/update.ver
<files .htaccess="">
order allow,deny
deny from all
</files>
Главное нужно проверить чтоб апач был с поддержкой модуля rewrite
В Апаче активировал модуль rewrite и добавил в /var/www файл .htaccess с содержанием
Код: Выделить всё
RewriteEngine on
Options +FollowSymlinks
RewriteCond %{HTTP_USER_AGENT} ^NOD32.*BPC.2
RewriteRule ^update.ver$ /nod_upd/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.3
RewriteRule ^update.ver$ /eset_upd/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.4
RewriteRule ^update.ver$ /eset_upd/v4/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.5
RewriteRule ^update.ver$ /eset_upd/v5/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.6
RewriteRule ^update.ver$ /eset_upd/v6/update.ver
RewriteCond %{HTTP_USER_AGENT} ^ESS.*BPC.7
RewriteRule ^update.ver$ /eset_upd/v7/update.ver
<files .htaccess="">
order allow,deny
deny from all
</files>
перезапустил апач
В ESS 5 прописал сервер
http://lackystrike.no-ip.info:8888/
Нет работает.
evsey
-
OttoFix
- рядовой
- Сообщения: 31
- Зарегистрирован: 2014-04-17 7:00:36
Непрочитанное сообщение
OttoFix » 2014-08-08 9:43:35
Все работает, похоже проблема с портом 8888.
Вот сам проверь, в терминале выполни команду
wget -U "ESS BPC 5" http://lackystrike.no-ip.info:8888/update.ver
Это скачается update.ver для 5й версии
kharkov_max писал(а):Так что, теперь хана скрипту ?
Почему хана?
Сделай вот эти изменения и скрипт будет работать
Таким образом, ИМХО, для решения проблемы достаточно скорректировать TESTKEY_PATH_NOD и TESTKEY_PATH_ESS в \Nod32MS\inc\init.php следующим образом:
...
define('TESTKEY_PATH_NOD', "/v3-rel-sta/mod_000_loader_1072/em000_32_l0.nup");
define('TESTKEY_PATH_ESS', "/v3-rel-sta/mod_010_smon_1034/em010_32_l1.nup");
OttoFix
-
kharkov_max
- капитан
- Сообщения: 1858
- Зарегистрирован: 2008-10-03 14:56:40
Непрочитанное сообщение
kharkov_max » 2014-08-08 10:02:19
kharkov_max писал(а):Так что, теперь хана скрипту ?
Почему хана?
Сделай вот эти изменения и скрипт будет работать
Таким образом, ИМХО, для решения проблемы достаточно скорректировать TESTKEY_PATH_NOD и TESTKEY_PATH_ESS в \Nod32MS\inc\init.php следующим образом:
...
define('TESTKEY_PATH_NOD', "/v3-rel-sta/mod_000_loader_1072/em000_32_l0.nup");
define('TESTKEY_PATH_ESS', "/v3-rel-sta/mod_010_smon_1034/em010_32_l1.nup");
[/quote]
Спс получилось, нужно бы в исходники включить изменения ...
kharkov_max
-
OttoFix
- рядовой
- Сообщения: 31
- Зарегистрирован: 2014-04-17 7:00:36
Непрочитанное сообщение
OttoFix » 2014-08-08 10:24:38
kharkov_max писал(а):Спс получилось, нужно бы в исходники включить изменения ...
В исходниках нужно сделать, что бы эти строки скрипт брал из update.ver, а лучше сделать правильно и проверять ключи по дате действия.
Если будет время сделаю такой фикс.
OttoFix
-
zvirus
- рядовой
- Сообщения: 18
- Зарегистрирован: 2014-08-08 9:16:52
Непрочитанное сообщение
zvirus » 2014-08-09 10:05:35
Народ, я тут случайно запостил в соседнюю ветку исправленную версию скрипта.
Напишу и здесь.
1) Автоматически ищется валидный путь для прверки ключиков из фала update.ver
2) В локальном хранилище все хранится по путям без цифрового индекса.
3) итоговые файлы update.ver преобразуются под локальное хранилище.
Архив папки inc прилагаю. Местами ставились костыли.

Автор, при желании приведет все в норму.
https://yadi.sk/d/GxZ94-szZGvsN
Изменениям подверглись:
inc/init.php
inc/classes/Nod32ms.class.php
inc/classes/Mirror.class.php
Подробнее читайте тут.
http://forum.lissyara.su/viewtopic.php? ... 50#p363523
zvirus
-
viktor6
- мл. сержант
- Сообщения: 99
- Зарегистрирован: 2009-12-16 22:49:28
Непрочитанное сообщение
viktor6 » 2014-08-09 17:12:03
Ребята помогите нормально настроить генерацию странички index.html
Вот что у меня получилось но все както криво
Код: Выделить всё
private function generate_index_html($key) {
Log::write_log(Language::t("Generating index.html..."), 0);
$html = '<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=' . (Config::get('default_codepage') != "default" ? Config::get('default_codepage') : SCRIPT_CODEPAGE) . '" />
<title>Зеркало обновления NOD32</title>
<style type="text/css">
body {width:800px;
background-image:url(nod32.jpg);
background-position: right center;
background-repeat: no-repeat;
}
div {
width:600px;
margin: 200px ;
}
td {width:300px;}
.left {
color: #A90BF2;
font-weight:bold;
}
.right {
text-align:center;
color: green;
font-weight:bold;
}
.date {
text-align:center;
color: purple;
font-weight:bold;
}
</style>
</head>
' . Language::t("content", $i) . '
<body>
<div>
<table width="600" border="1">';
$html .= '<? echo "<p>' . Language::t("update address") . ': <b>http://".$_SERVER["SERVER_NAME"]."/eset_upd/</b><br /><br />"; ?>';
global $DIRECTORIES;
foreach($DIRECTORIES as $i => $dir) {
if(Config::upd_version_is_set($i) == '1') {
$update_ver = sprintf("%s%s%s%supdate.ver", Config::get('web_dir'), DS, $dir, DS);
$version = Mirror::get_DB_version($update_ver);
$timestamp = $this->check_time_stamp($i, true);
$html .= '<tr><td class="left">' . Language::t("Current database version [ver. %d]", $i) . '</td>';
$html .= '<td class="right">' . $version . '</td></tr>';
$html .= '<tr><td class="left">' . Language::t("Last successful update [ver. %d]", $i) . '</td>';
$html .= '<td class="right">' . ($timestamp ? date("H:i:s",$timestamp) . ', ' . date("d-m-Y",$timestamp) : Language::t("n/a")) . '</td></tr>';
}
}
$html .= '<tr><td class="left">' . Language::t("Last execution of the script") . '</td>';
$html .= '<td class="date">' . date("H:i:s",Nod32ms::$start_time) . ', ' . date("d-m-Y",Nod32ms::$start_time) . '</td></tr>';
$html .= '<tr><td class="left">' . Language::t("Used login") . '</td>';
$html .= '<td class="right">' . $key[0] . '</td></tr>';
$html .= '<tr><td class="left">' . Language::t("Used password") . '</td>';
$html .= '<td class="right">' . $key[1] . '</td></tr>';
$html .= '</table></div></body></html>';
$index_file = Config::get('web_dir') . DS . "index.php";
if(file_exists($index_file)) @unlink($index_file);
Log::write_to_file($index_file, $html, true);
}
viktor6
-
SerzhAntz
- рядовой
- Сообщения: 13
- Зарегистрирован: 2012-11-21 17:14:54
Непрочитанное сообщение
SerzhAntz » 2014-08-11 10:51:48
zvirus писал(а):Народ, я тут случайно запостил в соседнюю ветку исправленную версию скрипта.
Спасибо, всё отлично работает.
SerzhAntz
-
Mad Max
- рядовой
- Сообщения: 12
- Зарегистрирован: 2014-08-13 13:12:17
Непрочитанное сообщение
Mad Max » 2014-08-13 15:56:42
и html не генериться
eset_upd
pcu
pcu-v5-sta
tmp
v3-rel-sta
v4-rel-sta
v5-rel-sta
от такая структура каталога получаеться....
Mad Max
-
evsey
- рядовой
- Сообщения: 31
- Зарегистрирован: 2013-02-06 9:33:17
Непрочитанное сообщение
evsey » 2014-08-13 18:01:02
zvirus писал(а):Народ, я тут случайно запостил в соседнюю ветку исправленную версию скрипта.
Напишу и здесь.
1) Автоматически ищется валидный путь для прверки ключиков из фала update.ver
2) В локальном хранилище все хранится по путям без цифрового индекса.
3) итоговые файлы update.ver преобразуются под локальное хранилище.
Архив папки inc прилагаю. Местами ставились костыли.

Автор, при желании приведет все в норму.
https://yadi.sk/d/GxZ94-szZGvsN
Изменениям подверглись:
inc/init.php
inc/classes/Nod32ms.class.php
inc/classes/Mirror.class.php
Подробнее читайте тут.
http://forum.lissyara.su/viewtopic.php? ... 50#p363523
Вот такая ошибка при обновлении.
PHP Fatal error: Out of memory (allocated 33292288) (tried to allocate 31209410 bytes) in /etc/nod32/inc/classes/Tools.class.php on line 43
evsey
-
zvirus
- рядовой
- Сообщения: 18
- Зарегистрирован: 2014-08-08 9:16:52
Непрочитанное сообщение
zvirus » 2014-08-13 22:35:24
просто скрипту маловато 32 метра памяти. Учитывая, что обновы он качает в память. Поставь боше мемори лимит.
zvirus
-
SerzhAntz
- рядовой
- Сообщения: 13
- Зарегистрирован: 2012-11-21 17:14:54
Непрочитанное сообщение
SerzhAntz » 2014-08-13 23:24:09
Единственное что нужно - это удаление заархивированного update.ver из папки www. Иначе скрипт при каждом запуске перекачивает базы.
SerzhAntz
-
OttoFix
- рядовой
- Сообщения: 31
- Зарегистрирован: 2014-04-17 7:00:36
Непрочитанное сообщение
OttoFix » 2014-08-14 5:31:16
Mad Max писал(а):Чет в корень не ложит update.ver
В корень и не должен класть т.к. для каждой версии нода идет свой update.ver
OttoFix
-
evsey
- рядовой
- Сообщения: 31
- Зарегистрирован: 2013-02-06 9:33:17
Непрочитанное сообщение
evsey » 2014-08-14 7:37:24
zvirus писал(а):просто скрипту маловато 32 метра памяти. Учитывая, что обновы он качает в память. Поставь боше мемори лимит.
128 стоит

evsey
-
OttoFix
- рядовой
- Сообщения: 31
- Зарегистрирован: 2014-04-17 7:00:36
Непрочитанное сообщение
OttoFix » 2014-08-14 8:13:27
evsey писал(а):zvirus писал(а):просто скрипту маловато 32 метра памяти. Учитывая, что обновы он качает в память. Поставь боше мемори лимит.
128 стоит

Имелось в виду лимит выделяемой памяти процессу (скрипту).
в php.ini вот такие строчки
Код: Выделить всё
;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;
max_execution_time = 30 ; Maximum execution time of each script, in seconds
max_input_time = 60 ; Maximum amount of time each script may spend parsing request data
memory_limit = 64M ; Maximum amount of memory a script may consume (8MB)
Но мне кажется, это поможет не надолго, скорее всего в скрипте не предусмотрели освобождение памяти.
Обновления заработали?
OttoFix