Содержание

SqStat

Скачиваем и распаковываем sqstat:

wget -P /tmp http://samm.kiev.ua/sqstat/sqstat-1.20.tar.gz
tar xzf /tmp/sqstat-1.20.tar.gz -C /tmp 
sudo mv /tmp/sqstat-1.20 /var/www/sqstat

Настраиваем Squid:

sudo apt install squid-cgi

Настраиваем sqstat:

sudo cp /var/www/sqstat/config.inc.php.defaults /var/www/sqstat/config.inc.php

Патчи

Для работы с squid 3.2 и выше:

sudo sed 's/HTTP\/1.0 200/HTTP\/1.1 200/' -i /var/www/sqstat/sqstat.class.php
sudo sed 's/peer/remote/g' -i /var/www/sqstat/sqstat.class.php
sudo sed 's/"me/"local/g' -i /var/www/sqstat/sqstat.class.php

Для работы с php7:

sudo sed 's/function squidstat/function __construct/' -i /var/www/sqstat/sqstat.class.php

Для отображения времени в 24 часовом формате, вместо 12:

sudo sed 's/h:i:s/H:i:s/' -i /var/www/sqstat/sqstat.class.php

Для отображения скорости в kbps, вместо KBytes:

sudo sed '/speed/s/1024/1024*8/g' -i /var/www/sqstat/sqstat.class.php
sudo sed 's/KB\/s/kbps/g' -i /var/www/sqstat/sqstat.class.php

Nginx

Устанавливаем nginx и php-fpm

server {
  listen 80;

  server_name proxy proxy.domain.com;

  location ~ ^/sqstat/.+(\.php)$ {
    root   /var/www;
    try_files $uri = 404;
    fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    fastcgi_index sqstat.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
  }

  location ~ ^/sqstat {
    root   /var/www;
    index sqstat.php;
  }

  location = /favicon.ico {
    log_not_found off;
  }
}

Apache

Устанавливаем apache2 и libapache2-mod-php

Alias /sqstat "/var/www/sqstat/"
<Directory /var/www/sqstat/>
    DirectoryIndex sqstat.php
    Require all granted
</Directory>

Ошибки

upstream sent too big header while reading response header from upstream - решение

Ссылки

http://kidun.ru/index.php/component/content/article?id=165 - патч для Squid 3.2 и выше
http://muff.kiev.ua/content/sqstat-monitorim-trafik-squid-v-rezhime-realnogo-vremeni - отображение времени 24ч и скорости Kb/s