This is the NGinx config I'm using on Travis for our prod project:

```nginx
events {
    worker_connections 1024;
}

http {
    include /etc/nginx/mime.types;

    upstream php {
        server 127.0.0.1:9000;
    }

    access_log access.log;
    error_log error.log;

    server {
        listen 80 default_server;
        server_name localhost;

        charset utf-8;
        root web;

        #site root is redirected to the app boot script
        location = / {
            try_files @site @site;
        }
        #all other locations try other files first and go to our front controller if none of them exists
        location / {
            try_files $uri $uri/ @site;
        }

        #return 404 for all php files as we do have a front controller
        location ~ \.php$ {
            return 404;
        }

        location @site {
            fastcgi_pass php;
            fastcgi_param SCRIPT_FILENAME $document_root/app_test.php;
            fastcgi_ignore_client_abort on;
            include /etc/nginx/fastcgi_params;
            fastcgi_param SCRIPT_NAME /app_test.php;
        }
    }
}
```