22. Symfony\Component\HttpFoundation\File\Exception\FileNotFoundException
…/­vendor/­symfony/­http-foundation/­Symfony/­Component/­HttpFoundation/­File/­File.php41
21. Symfony\Component\HttpFoundation\File\File __construct
…/­vendor/­symfony/­http-foundation/­Symfony/­Component/­HttpFoundation/­BinaryFileResponse.php85
20. Symfony\Component\HttpFoundation\BinaryFileResponse setFile
…/­vendor/­symfony/­http-foundation/­Symfony/­Component/­HttpFoundation/­BinaryFileResponse.php49
19. Symfony\Component\HttpFoundation\BinaryFileResponse __construct
…/­vendor/­laravel/­framework/­src/­Illuminate/­Support/­Facades/­Response.php91
18. Illuminate\Support\Facades\Response download
…/­app/­controllers/­DownloadController.php19
17. DownloadController getOpportunity
<#unknown>0
16. call_user_func_array
…/­vendor/­laravel/­framework/­src/­Illuminate/­Routing/­Controller.php231
15. Illuminate\Routing\Controller callAction
…/­bootstrap/­compiled.php5427
14. Illuminate\Routing\ControllerDispatcher call
…/­bootstrap/­compiled.php5415
13. Illuminate\Routing\ControllerDispatcher dispatch
…/­bootstrap/­compiled.php4646
12. Illuminate\Routing\Router Illuminate\Routing\{closure}
<#unknown>0
11. call_user_func_array
…/­bootstrap/­compiled.php4974
10. Illuminate\Routing\Route run
…/­bootstrap/­compiled.php4671
9. Illuminate\Routing\Router dispatchToRoute
…/­bootstrap/­compiled.php4659
8. Illuminate\Routing\Router dispatch
…/­bootstrap/­compiled.php706
7. Illuminate\Foundation\Application dispatch
…/­bootstrap/­compiled.php687
6. Illuminate\Foundation\Application handle
…/­bootstrap/­compiled.php1146
5. Illuminate\Http\FrameGuard handle
…/­bootstrap/­compiled.php7301
4. Illuminate\Session\Middleware handle
…/­bootstrap/­compiled.php7898
3. Illuminate\Cookie\Queue handle
…/­bootstrap/­compiled.php7845
2. Illuminate\Cookie\Guard handle
…/­bootstrap/­compiled.php10865
1. Stack\StackedHttpKernel handle
…/­bootstrap/­compiled.php648
0. Illuminate\Foundation\Application run
…/­public/­index.php49

Symfony \ Component \ HttpFoundation \ File \ Exception \ FileNotFoundException

The file "/home/metbiocat/public/uploads/opportunities/" does not exist

     * @throws FileNotFoundException If the given path is not a file
     *
     * @api
     */
    public function __construct($path, $checkPath = true)
    {
        if ($checkPath && !is_file($path)) {
            throw new FileNotFoundException($path);
        }
 
     * @return BinaryFileResponse
     *
     * @throws FileException
     */
    public function setFile($file, $contentDisposition = null, $autoEtag = false, $autoLastModified = true)
    {
        if (!$file instanceof File) {
            $file = new File((string) $file);
        }
 
     * @param bool                $autoEtag           Whether the ETag header should be automatically set
     * @param bool                $autoLastModified   Whether the Last-Modified header should be automatically set
     */
    public function __construct($file, $status = 200, $headers = array(), $public = true, $contentDisposition = null, $autoEtag = false, $autoLastModified = true)
    {
        parent::__construct(null, $status, $headers);
 
        $this->setFile($file, $contentDisposition, $autoEtag, $autoLastModified);
 
        if ($public) {
	 * @param  string  $name
	 * @param  array   $headers
	 * @param  null|string  $disposition
	 * @return \Symfony\Component\HttpFoundation\BinaryFileResponse
	 */
	public static function download($file, $name = null, array $headers = array(), $disposition = 'attachment')
	{
		$response = new BinaryFileResponse($file, 200, $headers, true, $disposition);
 
		if ( ! is_null($name))
        if(!empty($opportunity->application_subject))
        {
            $name .=  ' - ' . $opportunity->application_subject;
        }
        
        $name .= '.' . File::extension($file);
        
        return Response::download($file, $name);
    }
}
<#unknown>
	 * @param array   $parameters
	 * @return \Symfony\Component\HttpFoundation\Response
	 */
	public function callAction($method, $parameters)
	{
		$this->setupLayout();
 
		$response = call_user_func_array(array($this, $method), $parameters);
 
		// If no response is returned from the controller action and a layout is being
    {
        Controller::setFilterer($this->filterer);
        return $this->container->make($controller);
    }
    protected function call($instance, $route, $method)
    {
        $parameters = $route->parametersWithoutNulls();
        return $instance->callAction($method, $parameters);
    }
    protected function before($instance, $route, $request, $method)
    }
    public function dispatch(Route $route, Request $request, $controller, $method)
    {
        $instance = $this->makeController($controller);
        $this->assignAfter($instance, $route, $request, $method);
        $response = $this->before($instance, $route, $request, $method);
        if (is_null($response)) {
            $response = $this->call($instance, $route, $method);
        }
        return $response;
    {
        $me = $this;
        $d = $this->getControllerDispatcher();
        return function () use($me, $d, $controller) {
            $route = $me->current();
            $request = $me->getCurrentRequest();
            list($class, $method) = explode('@', $controller);
            return $d->dispatch($route, $request, $class, $method);
        };
    }
<#unknown>
        }
    }
    public function run()
    {
        $parameters = array_filter($this->parameters(), function ($p) {
            return isset($p);
        });
        return call_user_func_array($this->action['uses'], $parameters);
    }
    public function matches(Request $request, $includingMethod = true)
    }
    public function dispatchToRoute(Request $request)
    {
        $route = $this->findRoute($request);
        $this->events->fire('router.matched', array($route, $request));
        $response = $this->callRouteBefore($route, $request);
        if (is_null($response)) {
            $response = $route->run($request);
        }
        $response = $this->prepareResponse($request, $response);
        return isset($group['namespace']) ? $group['namespace'] . '\\' . $uses : $uses;
    }
    public function dispatch(Request $request)
    {
        $this->currentRequest = $request;
        $response = $this->callFilter('before', $request);
        if (is_null($response)) {
            $response = $this->dispatchToRoute($request);
        }
        $response = $this->prepareResponse($request, $response);
            if (!is_null($response)) {
                return $this->prepareResponse($response, $request);
            }
        }
        if ($this->runningUnitTests() && !$this['session']->isStarted()) {
            $this['session']->start();
        }
        return $this['router']->dispatch($this->prepareRequest($request));
    }
    public function terminate(SymfonyRequest $request, SymfonyResponse $response)
        });
    }
    public function handle(SymfonyRequest $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
    {
        try {
            $this->refreshRequest($request = Request::createFromBase($request));
            $this->boot();
            return $this->dispatch($request);
        } catch (\Exception $e) {
            if ($this->runningUnitTests()) {
    protected $app;
    public function __construct(HttpKernelInterface $app)
    {
        $this->app = $app;
    }
    public function handle(SymfonyRequest $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
    {
        $response = $this->app->handle($request, $type, $catch);
        $response->headers->set('X-Frame-Options', 'SAMEORIGIN', false);
        return $response;
    public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
    {
        $this->checkRequestForArraySessions($request);
        if ($this->sessionConfigured()) {
            $session = $this->startSession($request);
            $request->setSession($session);
        }
        $response = $this->app->handle($request, $type, $catch);
        if ($this->sessionConfigured()) {
            $this->closeSession($session);
    public function __construct(HttpKernelInterface $app, CookieJar $cookies)
    {
        $this->app = $app;
        $this->cookies = $cookies;
    }
    public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
    {
        $response = $this->app->handle($request, $type, $catch);
        foreach ($this->cookies->getQueuedCookies() as $cookie) {
            $response->headers->setCookie($cookie);
    public function __construct(HttpKernelInterface $app, Encrypter $encrypter)
    {
        $this->app = $app;
        $this->encrypter = $encrypter;
    }
    public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
    {
        return $this->encrypt($this->app->handle($this->decrypt($request), $type, $catch));
    }
    protected function decrypt(Request $request)
    public function __construct(HttpKernelInterface $app, array $middlewares)
    {
        $this->app = $app;
        $this->middlewares = $middlewares;
    }
    public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
    {
        return $this->app->handle($request, $type, $catch);
    }
    public function terminate(Request $request, Response $response)
        if ($this->isBooted()) {
            $this->fireAppCallbacks(array($callback));
        }
    }
    public function run(SymfonyRequest $request = null)
    {
        $request = $request ?: $this['request'];
        $response = with($stack = $this->getStackedClient())->handle($request);
        $response->send();
        $stack->terminate($request, $response);
| Once we have the application, we can simply call the run method,
| which will execute the request and send the response back to
| the client's browser allowing them to enjoy the creative
| and wonderful application we have whipped up for them.
|
*/
 
$app->run();
 
Key Value
TEMP /tmp
TMPDIR /tmp
TMP /tmp
HOSTNAME
USER metbiocat
HOME /home/metbiocat
FCGI_ROLE RESPONDER
REDIRECT_UNIQUE_ID ZgZtU1JimxcAABZU8DkAAAFB
REDIRECT_SCRIPT_URL /download/opportunity/10
REDIRECT_SCRIPT_URI http://metbiocat.eu/download/opportunity/10
REDIRECT_RATELIMITED 1
REDIRECT_STATUS 200
UNIQUE_ID ZgZtU1JimxcAABZU8DkAAAFB
SCRIPT_URL /download/opportunity/10
SCRIPT_URI http://metbiocat.eu/download/opportunity/10
HTTP_AUTHORIZATION
proxy-nokeepalive 1
HTTP_X_FORWARDED_PROTO http
HTTP_X_FORWARDED_PORT 80
HTTP_HOST metbiocat.eu
HTTP_ACCEPT */*
HTTP_USER_AGENT claudebot
HTTP_X_FORWARDED_FOR 3.85.9.208
HTTP_X_COUNTRY_CODE US
HTTP_X_CTIPO by
HTTP_X_VARNISH 165007877
PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
SERVER_SIGNATURE
SERVER_SOFTWARE Apache
SERVER_NAME metbiocat.eu
SERVER_ADDR 127.0.0.1
SERVER_PORT 80
REMOTE_ADDR 3.85.9.208
DOCUMENT_ROOT /home/metbiocat/www
REQUEST_SCHEME http
CONTEXT_PREFIX
CONTEXT_DOCUMENT_ROOT /home/metbiocat/www
SERVER_ADMIN webmaster@metbiocat.eu
SCRIPT_FILENAME /home/metbiocat/www/index.php
REMOTE_PORT 60212
REDIRECT_URL /download/opportunity/10
GATEWAY_INTERFACE CGI/1.1
SERVER_PROTOCOL HTTP/1.0
REQUEST_METHOD GET
QUERY_STRING
REQUEST_URI /download/opportunity/10
SCRIPT_NAME /index.php
PHP_SELF /index.php
REQUEST_TIME_FLOAT 1711697235.3426
REQUEST_TIME 1711697235
empty
empty
empty
empty
empty
empty
0. Whoops\Handler\PrettyPageHandler