Dois diretórios diferentes com Nginx

Dois diretórios diferentes com Nginx

Eu tenhodois diretóriosno meu servidor, o directory1withoutros diretóriosdentro, e o directory2com umúnico arquivo index.php.

Quero acessar meu index.phpcomhttp://servidor/( /var/www/directory2/index.php) e também poder ter todos os diretórios disponíveis dentro directory1comhttp://servidor/teste( var/www/directory1/test) por exemplo.

Tentei com essa configuração, mas não consigo acessar o index.phparquivo:

server {
    server_name server;

    index index.php index.html index.htm;
    access_log /var/log/nginx/server.access.log;
    error_log /var/log/nginx/server.error.log;

    location / {
        root /var/www/directory1;
    }

    location ~ ^/index.php$ {
        root /var/www/directory2;
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_index index.php;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param APPLICATION_ENV production;
        include fastcgi_params;
    }
}

Obrigado por qualquer ajuda !

Responder1

Eu faria isso simples:

root /var/www/directory1;

location = / {
    root /var/www/directory2;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $document_root/index.php;
    fastcgi_param APPLICATION_ENV production;
    include fastcgi_params;
}

location ~ \.php$ {
    try_files $uri =404;
    fastcgi_index index.php;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param APPLICATION_ENV production;
    include fastcgi_params;
}

informação relacionada