nginx sub uri em outra raiz

1

Eu estou preso em uma regra nginx:

Eu tenho que usar o Nginx no nosso servidor de monitoramento, ele usa o Zabbix. Eu configurei o nginx com sucesso para o zabbix para que eu possa acessar monit.domain.com e ele me envie para o zabbix).

Mas não consigo configurar monit.domain.com/dashboard para exibir o conteúdo de / usr / share / dashboard / pages , que também é php (bem, apenas index.php importa e você adivinhou, é o meu painel de controle).

Aqui está o nginx conf específico do painel: dentro de /etc/nginx/sites-enabled/monitoring.conf:

server {
    ######## server stuff with /location and ssl certs
    location /dashboard {
        alias /usr/share/dashboard/pages/index.php;
    }
}

O uso do root não é recomendado seguindo as melhores práticas do nginx (e não funciona, eu tentei mesmo assim).

EDIT: aqui está o erro que recebo no log do Nginx:

[error] 8247#0: *1 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: XXX.XXX.XXX.XXX, server: monit.domain.com, request: "GET /dashboard/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "monit.domain.com"

Alguém pode me sugerir a quem olhar, obrigado.

    
por kuzko 04.05.2016 / 18:36

1 resposta

0

Ok, consegui que funcionasse como deveria com essa configuração:

server {
    listen 443 ssl;
    server_name monit.domain.com;
    index index.php;
    root /usr/share/zabbix;
    error_log /var/log/nginx/error.log notice;
    ssl on;
    # SSL stuff

    location / {
            root /usr/share/zabbix;
    }

    location /dashboard {
            root /usr/share;
            location ~ \.php$ {
                include fastcgi_params;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                fastcgi_param PHP_VALUE "
                 #many parameters
            ";
            #fastcgi_stuff .....
    }

Então, no final, redefinir uma nova raiz e aninhar um segmento php para especificar que deve ser interpretado funciona.

    
por 11.05.2016 / 11:24