Назад | Перейти на главную страницу

Настройка Piwik + uWSGI

У меня проблема с настройкой uWSGI + piwik с помощью nginx. Моя конфигурация следует за этим запись в блоге. Мой ini файл uwsgi выглядит так

[uwsgi]
plugins = php
chown-socket = www-data:www-data
uid = piwik
gid = piwik
processes = 1                                                                                 

и моя конфигурация nginx

server {
    listen 80;
    root /var/www/piwik;
    server_name my.domain.com;
    index piwik.php;
    # For administrative access
    location = /index.php {
        include uwsgi_params;
        uwsgi_modifier1 14;
        uwsgi_pass unix:/var/run/uwsgi/app/piwik/socket;
        allow 127.0.0.1; # only via ssh tunnel
        deny all;
    }
    # For public access
    location = /piwik.php {
        include uwsgi_params;
        uwsgi_modifier1 14;
        uwsgi_pass unix:/var/run/uwsgi/app/piwik/socket;
    }
    # Any other attempt to access PHP files is forbidden
    location ~* ^.+\.php$ {
        return 403;
    }
    # Redirect to the root if attempting to access a txt file.
    location ~* (?:DESIGN|(?:gpl|README|LICENSE)[^.]*|LEGALNOTICE)(?:\.txt)*$ {
        return 302 /;
    }
    # Disallow access to several helper files.
    location ~* \.(?:bat|html?|git|ini|sh|svn[^.]*|txt|tpl|xml)$ {
        return 404;
    }
    # Disallow access to directories
    location ~ ^/(config|core|lang|misc|tmp)/ {
        deny all;
    }
}

Файл журнала содержит это, что указывает на ошибку:

Tue Aug 25 15:34:34 2015 - PHP Fatal error:  Uncaught exception 'Exception' with message 'The configuration file {/var/www/piwik/config/config.ini.php} has not been found or could not be read.' in /var/www/piwik/core/Application/Kernel/EnvironmentValidator.php:64
Stack trace:
#0 /var/www/piwik/core/Application/Kernel/EnvironmentValidator.php(45): Piwik\Application\Kernel\EnvironmentValidator->checkConfigFileExists('/var/www/piwik/...', false)
#1 /var/www/piwik/core/Application/Environment.php(185): Piwik\Application\Kernel\EnvironmentValidator->validate()
#2 /var/www/piwik/core/Application/Environment.php(94): Piwik\Application\Environment->validateEnvironment()
#3 /var/www/piwik/piwik.php(56): Piwik\Application\Environment->init()
#4 {main}
  thrown in /var/www/piwik/core/Application/Kernel/EnvironmentValidator.php on line 64
[pid: 23656|app: -1|req: -1/3] 109.90.112.120 () {36 vars in 567 bytes} [Tue Aug 25 15:34:34 2015] GET / => generated 0 bytes in 58 msecs (HTTP/1.1 500) 1 headers in 78 bytes (0 switches on core 0)

Когда я открываю страницу в браузере, создается такая запись журнала, и я вижу пустую страницу (имеет смысл с 0 сгенерированными байтами). Проблема в том, что ожидаемый сценарий установки Piwik не запускается. Вместо этого создается исключение. Я пытался изменить /var/www/piwik/core/Application/Kernel/EnvironmentValidator.php чтобы запустить установку вручную, но не удалось. У тебя есть идеи?

Вы запрашиваете /piwik.php (если вы запрашиваете /, /piwik.php помечается по умолчанию). /piwik.php - это трекер. Вы должны запросить /index.php раньше и использовать интерфейс веб-администрирования для создания файла конфигурации.