проблема: сразу после установки web интерфейса zabbix, переходим в него, успешно проходим процедуру конфигурирования, после чего должны попасть на страницу логона, но вместо неё получаем сообщение , что у нас нет доступа к этой странице.
проблема замечена при следующей конфигурации:
root@test:~# lsb_release -a | grep Description Description: Ubuntu 16.04 LTS root@test:~# php -v | grep cli PHP 7.0.4-7ubuntu2.1 (cli) ( NTS ) root@test:~# nginx -v nginx version: nginx/1.10.0 (Ubuntu) root@test:~# zabbix_server -V | grep zabbix_server zabbix_server (Zabbix) 3.0.3
при этом следуя множеству инструкций из интернета в файле /etc/php/7.0/fpm/php.ini в целях безопасности был выставлен параметр
cgi.fix_pathinfo = 0
суть проблемы в том, что после установки
cgi.fix_pathinfo = 0
глобальная переменная PHP_SELF становится пустой (она не пропадает, но становится пустой),
а из этого вытекает решение: добавлять в файлы /etc/nginx/fastcgi.conf, /etc/nginx/fastcgi_param, или прямо в конфигурацию сайта /etc/nginx/sites-available/zabbix строку fastcgi_param PHP_SELF $fastcgi_script_name; бесполезно, переменная PHP_SELF уже имеет значение («») и переинициализирована не будет, поэтому правим исходники web-интерфейса zabbix
файл /var/www/zabbix/include/page_header.php в самом начале заменить
$page['file'] = basename($_SERVER['PHP_SELF']);
на
$page['file'] = basename($_SERVER['SCRIPT_NAME']);
если последних 20 сбытий на панеле - мало, можно эту константу увеличить: в файле /var/www/zabbix/include/defines.inc.php
define('DEFAULT_LATEST_ISSUES_CNT', 40);