Se você navegar até /myapp/foo.html , o Nginx verificará o arquivo em /home/me/myapp/www/myapp/foo.html . Quando não o encontra lá, passa para o fallback na lista try_files .
Se você precisar do Nginx para verificar o arquivo em /home/me/myapp/www/foo.html , será necessário usar alias em vez de root , no seu caso de uso. Aqui está a solução ...
location /myapp {
alias /home/me/myapp/www;
try_files $uri $uri/ /myapp/index.php?url=$uri&$args;
location ~ \.php {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root/index.php;
}
}
Observe que há um erro de longa data que alias e try_files não funcionam juntos. Além disso, observe que usar alias pode quebrar outras partes de sua configuração, como processamento de PHP!