UMGUM.COM (лучше) 

Apt-Cacher NG + Web-интерфейс ( Корректировка отображаемой web-интерфейсом информации. )

10 января 2012  (обновлено 2 ноября 2014)

OS: Debian GNU/Linux Lenny/Squeeze.
Application: Apt-Cacher NG.

По умолчанию web-интерфейс "apt-cacher-ng" перенасыщен. Мало того, что он страдает многословием, так в одном потоке с информацией он ещё и инструменты воздействия на содержимое "кеша" предлагает. Меня это не устраивает совершенно и одним из условий возможности применения "apt-cacher-ng" было наличие возможности корректирования отображаемых им шаблонов.

В итоге, после небольшого хирургического вмешательства, страница статистики выглядит теперь так:

размер: 320 400 640 800 1024 1280

Далее о том, как этого достигнуть.


Прежде всего создадим выделенную директорию, в которую положим всё наше, "эксклюзивное":

# mkdir -p /etc/apt-cacher-ng/misc

В том случае, если у сервера запросили html-страницу, которую он отдать может (например, потому, что её не предусмотрено), "apt-cacher-ng" выдаёт данные, построенные на шаблоне "userinfo.html", что наличествует в дистрибутивном наборе. Шаблон избыточен более чем. Подрежем его:

# touch /etc/apt-cacher-ng/misc/userinfo.html

<html>
  <head>
    <title>APT Configuration required</title>
    $STYLE
  </head>
  <body>
    To configure APT for use of "Apt-Cacher-NG" you need to...<br><br>
    1. Use original OS repositories.<br><br>
    2. Create file configuration for target proxy, example:<br><br>
      <pre>
      touch /etc/apt/apt.conf.d/01proxy
      </pre>
    3. Put in configuration file next line:<br><br>
      <pre>
      Acquire::http { Proxy "http://apt.local:3142"; };
      </pre>
   </body>
</html>

Удаляем ссылку на дистрибутивный шаблон:

# rm /etc/apt-cacher-ng/userinfo.html

Подсовываем серверу ссылку на свой шаблон:

# ln -s /etc/apt-cacher-ng/misc/userinfo.html /etc/apt-cacher-ng/userinfo.html

Теперь проделаем аналогичную по виду, но более важную по сути, процедуру подрезания функционала шаблона отображения статистики "report.html":

# touch /etc/apt-cacher-ng/misc/report.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
  <head>
    <title>Apt-Cacher NG transfer statistics</title>
    $STYLE
  </head>
  <body>
    <div align="center">
      <span class="title">"Apt-Cacher NG" transfer statistics for @H</span>
      <br />
      <p></p>
      <br>
      <table border=1 cellpadding=4 cellspacing=0>
        <tr>
          <td class=coltitle>Date/Period</td>
          <td class=coltitle>Transfer count (in+out)<br>(day average)</td>
          <td class=coltitle>Share/Download ratio</td>
        </tr>
        @W300
        @T<tr class="colcont"><td><center>%s</center></td><td><center>%2.2fMiB</center></td><td style="padding-left:1px;padding-right:1px;"><center><table><tr><td bgcolor=green width=%d> </td><td bgcolor=red width=%d> </td></tr></table></center></td></tr>
      </table>
    </div>
  </body>
</html>

Удаляем ссылку на дистрибутивный шаблон:

# rm /etc/apt-cacher-ng/report.html

Подсовываем серверу ссылку на свой шаблон:

# ln -s /etc/apt-cacher-ng/misc/report.html /etc/apt-cacher-ng/report.html

Для того, чтобы сервер "apt-cacher-ng" принял новые шаблоны перезапускать его не нужно, они перечитываются при каждом запросе данных.


Заметки и комментарии к публикации:


Оставьте свой комментарий ( выразите мнение относительно публикации, поделитесь дополнительными сведениями или укажите на ошибку )