Exceptions

Reading Exif data is not supported by this PHP installation.

Exception

Intervention\Image\Exception\ NotSupportedException

  1. * @return boolean
  2. */
  3. public function execute($image)
  4. {
  5. if (!function_exists('exif_read_data')) {
  6. throw new NotSupportedException(
  7. "Reading Exif data is not supported by this PHP installation."
  8. );
  9. }
  10. $key = $this->argument(0)->value();
  1. */
  2. public function executeCommand($image, $name, $arguments)
  3. {
  4. $commandName = $this->getCommandClassName($name);
  5. $command = new $commandName($arguments);
  6. $command->execute($image);
  7. return $command;
  8. }
  9. /**
  1. * @param Array $arguments
  2. * @return mixed
  3. */
  4. public function __call($name, $arguments)
  5. {
  6. $command = $this->driver->executeCommand($this, $name, $arguments);
  7. return $command->hasOutput() ? $command->getOutput() : $this;
  8. }
  9. /**
  10. * Starts encoding of current image
  1. * @param \Intervention\Image\Image $image
  2. * @return boolean
  3. */
  4. public function execute($image)
  5. {
  6. switch ($image->exif('Orientation')) {
  7. case 2:
  8. $image->flip();
  9. break;
  1. */
  2. public function executeCommand($image, $name, $arguments)
  3. {
  4. $commandName = $this->getCommandClassName($name);
  5. $command = new $commandName($arguments);
  6. $command->execute($image);
  7. return $command;
  8. }
  9. /**
  1. * @param Array $arguments
  2. * @return mixed
  3. */
  4. public function __call($name, $arguments)
  5. {
  6. $command = $this->driver->executeCommand($this, $name, $arguments);
  7. return $command->hasOutput() ? $command->getOutput() : $this;
  8. }
  9. /**
  10. * Starts encoding of current image
  1. public function run(Image $image)
  2. {
  3. $orientation = $this->getOrientation();
  4. if ('auto' === $orientation) {
  5. return $image->orientate();
  6. }
  7. return $image->rotate((float) $orientation);
  8. }
  1. $image = $this->imageManager->make($source);
  2. foreach ($this->manipulators as $manipulator) {
  3. $manipulator->setParams($params);
  4. $image = $manipulator->run($image);
  5. }
  6. return $image->getEncoded();
  7. }
  8. }
  1. }
  2. try {
  3. $this->cache->write(
  4. $cachedPath,
  5. $this->api->run($tmp, $this->getAllParams($params))
  6. );
  7. } catch (FilesystemV2Exception $exception) {
  8. throw new FilesystemException('Could not write the image `'.$cachedPath.'`.', 0, $exception);
  9. } finally {
  10. unlink($tmp);
in vendor/league/glide/src/Server.php -> makeImage (line 589)
  1. {
  2. if (is_null($this->responseFactory)) {
  3. throw new InvalidArgumentException('Unable to get image response, no response factory defined.');
  4. }
  5. $path = $this->makeImage($path, $params);
  6. return $this->responseFactory->create($this->cache, $path);
  7. }
  8. /**
Server->getImageResponse('image-2138523-7-66f55a1b6e8ef.jpg', array('country' => 'sn', 'fit' => 'crop', 'fm' => 'pjpg', 'h' => '400', 'mark' => 'watermark.png', 'markpos' => 'center', 'markw' => '20w', 's' => '3028f980a9d7c0fe47618b36e350e789', 'w' => '650')) in src/Service/Upload/Glide.php (line 58)
  1. if (\count($parameters) > 0) {
  2. SignatureFactory::create($this->glideSecret)->validateRequest($path, $parameters);
  3. }
  4. $server->setResponseFactory(new SymfonyResponseFactory($request));
  5. $response = $server->getImageResponse($path, $parameters);
  6. return $response;
  7. }
  8. }
Glide->server('image-2138523-7-66f55a1b6e8ef.jpg', 'ad/sn', '/var/www/askanbi.com/public/sync/site/images/ad/sn', 'sync/cache/ad') in src/Controller/Default/IndexController.php (line 105)
  1. {
  2. $cachePathPrefix = 'ad' .'/'. $country;
  3. $source = $this->adDirectory .'/'. $country;
  4. $imageCache = 'sync/cache/ad';
  5. return $this->glide->server($path, $cachePathPrefix, $source, $imageCache);
  6. }
  7. #[Route(path: '/image/mobile/ad/{country}/{file}', name: 'image_ad_mobile', methods: ['GET|POST'])]
  8. public function adForMobile(string $country, string $file)
  9. {
  1. $this->dispatcher->dispatch($event, KernelEvents::CONTROLLER_ARGUMENTS);
  2. $controller = $event->getController();
  3. $arguments = $event->getArguments();
  4. // call controller
  5. $response = $controller(...$arguments);
  6. // view
  7. if (!$response instanceof Response) {
  8. $event = new ViewEvent($this, $request, $type, $response, $event);
  9. $this->dispatcher->dispatch($event, KernelEvents::VIEW);
  1. $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  2. $this->requestStack->push($request);
  3. $response = null;
  4. try {
  5. return $response = $this->handleRaw($request, $type);
  6. } catch (\Throwable $e) {
  7. if ($e instanceof \Error && !$this->handleAllThrowables) {
  8. throw $e;
  9. }
  1. $this->boot();
  2. ++$this->requestStackSize;
  3. $this->resetServices = true;
  4. try {
  5. return $this->getHttpKernel()->handle($request, $type, $catch);
  6. } finally {
  7. --$this->requestStackSize;
  8. }
  9. }
Kernel->handle(object(Request)) in public/index.php (line 20)
  1. Debug::enable();
  2. }
  3. $kernel = new Kernel($_SERVER['APP_ENV'], (bool) $_SERVER['APP_DEBUG']);
  4. $request = Request::createFromGlobals();
  5. $response = $kernel->handle($request);
  6. $response->send();
  7. $kernel->terminate($request, $response);

Logs

Level Channel Message
INFO 22:36:14 request Matched route "_profiler".
{
    "route": "_profiler",
    "route_parameters": {
        "_route": "_profiler",
        "_controller": "web_profiler.controller.profiler::panelAction",
        "token": "a470a2"
    },
    "request_uri": "https://askanbi.com/_profiler/a470a2",
    "method": "GET"
}
DEBUG 22:36:14 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DebugHandlersListener::configure"
}
DEBUG 22:36:14 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ValidateRequestListener::onKernelRequest"
}
DEBUG 22:36:14 event Notified event "kernel.request" to listener "Nelmio\CorsBundle\EventListener\CorsListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Nelmio\\CorsBundle\\EventListener\\CorsListener::onKernelRequest"
}
DEBUG 22:36:14 event Notified event "kernel.request" to listener "Symfony\Bridge\Doctrine\Middleware\IdleConnection\Listener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bridge\\Doctrine\\Middleware\\IdleConnection\\Listener::onKernelRequest"
}
DEBUG 22:36:14 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelRequest"
}
DEBUG 22:36:14 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::setDefaultLocale"
}
DEBUG 22:36:14 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelRequest"
}
DEBUG 22:36:14 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelRequest"
}
DEBUG 22:36:14 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelRequest"
}
DEBUG 22:36:14 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::configureLogoutUrlGenerator"
}
DEBUG 22:36:14 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelRequest"
}
DEBUG 22:36:14 event Notified event "kernel.request" to listener "App\Event\Listener\AuthorRequestListener::onRequest".
{
    "event": "kernel.request",
    "listener": "App\\Event\\Listener\\AuthorRequestListener::onRequest"
}
DEBUG 22:36:14 event Notified event "kernel.request" to listener "App\Event\Listener\TicketerRequestListener::onRequest".
{
    "event": "kernel.request",
    "listener": "App\\Event\\Listener\\TicketerRequestListener::onRequest"
}
DEBUG 22:36:14 event Notified event "kernel.request" to listener "App\Event\Subscriber\PageViewSubscriber::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "App\\Event\\Subscriber\\PageViewSubscriber::onKernelRequest"
}
DEBUG 22:36:14 event Notified event "kernel.controller" to listener "App\Event\Listener\AdTransactionListener::onKernelController".
{
    "event": "kernel.controller",
    "listener": "App\\Event\\Listener\\AdTransactionListener::onKernelController"
}
DEBUG 22:36:14 event Notified event "kernel.controller" to listener "App\Event\Listener\CarTransactionListener::onKernelController".
{
    "event": "kernel.controller",
    "listener": "App\\Event\\Listener\\CarTransactionListener::onKernelController"
}
DEBUG 22:36:14 event Notified event "kernel.controller" to listener "App\Event\Listener\InsuranceAccessSecuredListener::onKernelController".
{
    "event": "kernel.controller",
    "listener": "App\\Event\\Listener\\InsuranceAccessSecuredListener::onKernelController"
}
DEBUG 22:36:14 event Notified event "kernel.controller" to listener "App\Event\Listener\LandTransactionListener::onKernelController".
{
    "event": "kernel.controller",
    "listener": "App\\Event\\Listener\\LandTransactionListener::onKernelController"
}
DEBUG 22:36:14 event Notified event "kernel.controller" to listener "App\Event\Listener\RestaurantTransactionListener::onKernelController".
{
    "event": "kernel.controller",
    "listener": "App\\Event\\Listener\\RestaurantTransactionListener::onKernelController"
}
DEBUG 22:36:14 event Notified event "kernel.controller" to listener "App\Event\Listener\SwitchUserSecuredListener::onKernelController".
{
    "event": "kernel.controller",
    "listener": "App\\Event\\Listener\\SwitchUserSecuredListener::onKernelController"
}
DEBUG 22:36:14 event Notified event "kernel.controller" to listener "App\Event\Listener\TicketAccessSecuredListener::onKernelController".
{
    "event": "kernel.controller",
    "listener": "App\\Event\\Listener\\TicketAccessSecuredListener::onKernelController"
}
DEBUG 22:36:14 event Notified event "kernel.controller" to listener "App\Event\Listener\TicketTransactionListener::onKernelController".
{
    "event": "kernel.controller",
    "listener": "App\\Event\\Listener\\TicketTransactionListener::onKernelController"
}
DEBUG 22:36:14 event Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Bundle\\FrameworkBundle\\DataCollector\\RouterDataCollector::onKernelController"
}
DEBUG 22:36:14 event Notified event "kernel.controller" to listener "App\Event\Listener\AuthorRequestListener::onController".
{
    "event": "kernel.controller",
    "listener": "App\\Event\\Listener\\AuthorRequestListener::onController"
}
DEBUG 22:36:14 event Notified event "kernel.controller" to listener "App\Event\Listener\TicketerRequestListener::onController".
{
    "event": "kernel.controller",
    "listener": "App\\Event\\Listener\\TicketerRequestListener::onController"
}
DEBUG 22:36:14 event Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelController"
}
INFO 22:36:14 deprecation User Deprecated: In ORM 3.0, the AttributeDriver will report fields for the classes where they are declared. This may uncover invalid mapping configurations. To opt into the new mode today, set the "reportFieldsWhereDeclared" constructor parameter to true. (AttributeDriver.php:77 called by App_KernelDevDebugContainer.php:1927, https://github.com/doctrine/orm/pull/10455, package doctrine/orm)
{
    "exception": {}
}
INFO 22:36:14 deprecation User Deprecated: Since symfony/var-exporter 7.3: The "Symfony\Component\VarExporter\LazyGhostTrait" trait is deprecated, use native lazy objects instead.
{
    "exception": {}
}
DEBUG 22:36:14 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsCsrfTokenValidAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsCsrfTokenValidAttributeListener::onKernelControllerArguments"
}
DEBUG 22:36:14 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsGrantedAttributeListener::onKernelControllerArguments"
}
DEBUG 22:36:14 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelControllerArguments"
}
DEBUG 22:36:14 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\Controller\ArgumentResolver\RequestPayloadValueResolver::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\Controller\\ArgumentResolver\\RequestPayloadValueResolver::onKernelControllerArguments"
}
DEBUG 22:36:14 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::onControllerArguments"
}

Stack Trace

NotSupportedException
Intervention\Image\Exception\NotSupportedException:
Reading Exif data is not supported by this PHP installation.

  at vendor/intervention/image/src/Intervention/Image/Commands/ExifCommand.php:22
  at Intervention\Image\Commands\ExifCommand->execute(object(Image))
     (vendor/intervention/image/src/Intervention/Image/AbstractDriver.php:94)
  at Intervention\Image\AbstractDriver->executeCommand(object(Image), 'exif', array('Orientation'))
     (vendor/intervention/image/src/Intervention/Image/Image.php:108)
  at Intervention\Image\Image->__call('exif', array('Orientation'))
     (vendor/intervention/image/src/Intervention/Image/Commands/OrientateCommand.php:15)
  at Intervention\Image\Commands\OrientateCommand->execute(object(Image))
     (vendor/intervention/image/src/Intervention/Image/AbstractDriver.php:94)
  at Intervention\Image\AbstractDriver->executeCommand(object(Image), 'orientate', array())
     (vendor/intervention/image/src/Intervention/Image/Image.php:108)
  at Intervention\Image\Image->__call('orientate', array())
     (vendor/league/glide/src/Manipulators/Orientation.php:24)
  at League\Glide\Manipulators\Orientation->run(object(Image))
     (vendor/league/glide/src/Api/Api.php:102)
  at League\Glide\Api\Api->run('/tmp/Glide0r0gro5i2c1j8CjPDDN', array('country' => 'sn', 'fit' => 'crop', 'fm' => 'pjpg', 'h' => '400', 'mark' => 'watermark.png', 'markpos' => 'center', 'markw' => '20w', 's' => '3028f980a9d7c0fe47618b36e350e789', 'w' => '650'))
     (vendor/league/glide/src/Server.php:696)
  at League\Glide\Server->makeImage('image-2138523-7-66f55a1b6e8ef.jpg', array('country' => 'sn', 'fit' => 'crop', 'fm' => 'pjpg', 'h' => '400', 'mark' => 'watermark.png', 'markpos' => 'center', 'markw' => '20w', 's' => '3028f980a9d7c0fe47618b36e350e789', 'w' => '650'))
     (vendor/league/glide/src/Server.php:589)
  at League\Glide\Server->getImageResponse('image-2138523-7-66f55a1b6e8ef.jpg', array('country' => 'sn', 'fit' => 'crop', 'fm' => 'pjpg', 'h' => '400', 'mark' => 'watermark.png', 'markpos' => 'center', 'markw' => '20w', 's' => '3028f980a9d7c0fe47618b36e350e789', 'w' => '650'))
     (src/Service/Upload/Glide.php:58)
  at App\Service\Upload\Glide->server('image-2138523-7-66f55a1b6e8ef.jpg', 'ad/sn', '/var/www/askanbi.com/public/sync/site/images/ad/sn', 'sync/cache/ad')
     (src/Controller/Default/IndexController.php:105)
  at App\Controller\Default\IndexController->adImage('sn', 'image-2138523-7-66f55a1b6e8ef.jpg')
     (vendor/symfony/http-kernel/HttpKernel.php:183)
  at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1)
     (vendor/symfony/http-kernel/HttpKernel.php:76)
  at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
     (vendor/symfony/http-kernel/Kernel.php:182)
  at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
     (public/index.php:20)