Outra raiz / alias na localização produz 403

1

Eu não quero que o phpMyAdmin esteja na pasta com meu site, mas eles devem ter acesso em http://test.example.site e http://test.example.site/phpMyAdmin , respectivamente. Mas esta configuração não parece funcionar:

  • 403 em http://test.example.site/phpMyAdmin
  • No input file specified on http://test.example.site/phpMyAdmin/index.php

A configuração é apresentada abaixo.

server {
    server_name test.example.site;

    error_log /var/log/nginx/test.error.log error;
    access_log /var/log/nginx/test.access.log;

    root /home/me/test/www-site;

    gzip on;
    gzip_types application/x-javascript application/javascript text/javascript text/css;

    client_max_body_size 50m;


    location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
            expires 1M;
    }

    location / {
            index index.php index.html index.htm;
    }

    location /phpMyAdmin/ {
            # one of those is included, both don't work
            alias /home/me/test/phpMyAdmin;
            root /home/me/test/;
    }

    location ~ \.php {
            fastcgi_pass    unix:/var/run/php5-fpm.sock;
            fastcgi_split_path_info ^(.+\.php)(.*)$;

            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}
    
por efpies 01.12.2013 / 19:11

1 resposta

2

Você não pode ter uma solicitação encerrada por meio de várias diretivas location de irmão ao mesmo tempo (a menos que você reescreva o URL).

  • Sua solicitação http://test.example.site/phpMyAdmin retorna 403 porque location /phpMyAdmin/ não deve ter um arquivo de índice (a diretiva index de location / não se aplica) e a listagem de diretório não deve ser permitida.

  • Sua solicitação http://test.example.site/phpMyAdmin/index.php pode se ajustar a apenas um local ao mesmo tempo. Portanto, ele é tratado pelo location ~ \.php , que tem uma raiz de /home/me/test/www-site , pois as diretivas de location /phpMyAdmin/ não se aplicam.

Da mesma forma, as diretivas alias e root são mutuamente exclusivas.

    
por 01.12.2013 / 22:03

Tags