NotPermittedException on every image upload via share link

Nextcloud version (eg, 20.0.5): 24.0.5
Operating system and version (eg, Ubuntu 20.04): Ubuntu-20.04
Apache or nginx version (eg, Apache 2.4.25): Apache/2.4.41 (Ubuntu)
PHP version (eg, 7.4): 7.4

The issue you are facing:
I shared a link to directly upload images in the browser to a folder in my nextcloud. Each time I upload an image on the upload page of the shared link, the log shows the error OCP\Files\NotPermittedException.
The image is uploaded anyway.
Error does not occur when I upload the image via nextcloud client and the error does not occur when I directly upload the file in the folder in the nextcloud web interface. Error in share link upload only.

Is this the first time you’ve seen this error? (Y/N): No

Steps to replicate it:

  1. Create a folder in nextcloud and share a link for uploading.
  2. Upload an image via this shared link.

The output of your Nextcloud log in Admin > Logging:

[no app in context] Error: OCP\Files\NotPermittedException:  at <<closure>>

 0. /var/www/nextcloud/lib/private/Metadata/Provider/ExifProvider.php line 19
    OC\Files\Node\File->fopen()
 1. /var/www/nextcloud/lib/private/Metadata/MetadataManager.php line 76
    OC\Metadata\Provider\ExifProvider->execute()
 2. /var/www/nextcloud/lib/private/Metadata/FileEventListener.php line 101
    OC\Metadata\MetadataManager->generateMetadata()
 3. /var/www/nextcloud/lib/private/EventDispatcher/ServiceEventListener.php line 87
    OC\Metadata\FileEventListener->handle()
 4. /var/www/nextcloud/3rdparty/symfony/event-dispatcher/EventDispatcher.php line 251
    OC\EventDispatcher\ServiceEventListener->__invoke()
 5. /var/www/nextcloud/3rdparty/symfony/event-dispatcher/EventDispatcher.php line 73
    Symfony\Component\EventDispatcher\EventDispatcher->callListeners()
 6. /var/www/nextcloud/lib/private/EventDispatcher/EventDispatcher.php line 88
    Symfony\Component\EventDispatcher\EventDispatcher->dispatch()
 7. /var/www/nextcloud/lib/private/EventDispatcher/EventDispatcher.php line 100
    OC\EventDispatcher\EventDispatcher->dispatch()
 8. /var/www/nextcloud/lib/private/Files/Node/HookConnector.php line 118
    OC\EventDispatcher\EventDispatcher->dispatchTyped()
 9. /var/www/nextcloud/lib/private/legacy/OC_Hook.php line 106
    OC\Files\Node\HookConnector->postWrite()
10. /var/www/nextcloud/apps/dav/lib/Connector/Sabre/File.php line 472
    OC_Hook::emit()
11. /var/www/nextcloud/apps/dav/lib/Connector/Sabre/File.php line 399
    OCA\DAV\Connector\Sabre\File->emitPostHooks()
12. /var/www/nextcloud/apps/dav/lib/Connector/Sabre/Directory.php line 164
    OCA\DAV\Connector\Sabre\File->put()
13. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 1098
    OCA\DAV\Connector\Sabre\Directory->createFile()
14. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php line 504
    Sabre\DAV\Server->createFile()
15. /var/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php line 89
    Sabre\DAV\CorePlugin->httpPut()
16. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 472
    Sabre\DAV\Server->emit()
17. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 253
    Sabre\DAV\Server->invokeMethod()
18. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 321
    Sabre\DAV\Server->start()
19. /var/www/nextcloud/apps/dav/appinfo/v1/publicwebdav.php line 117
    Sabre\DAV\Server->exec()
20. /var/www/nextcloud/public.php line 80
    require_once("/var/www/nextcl ... p")

PUT /nextcloud/public.php/webdav/20220901_173211_301.jpg
from at 2022-09-09T06:09:30+00:00

The output of your config.php file in /path/to/nextcloud (make sure you remove any identifiable information!):

<?php
$CONFIG = array (
  'instanceid' => 'removed',
  'passwordsalt' => 'removed',
  'secret' => 'removed',
  'trusted_domains' =>
  array (
    0 => 'removed',
    1 => 'removed',
  ),
  'datadirectory' => '/var/www/nextcloud/data',
  'dbtype' => 'mysql',
  'version' => '24.0.5.1',
  'overwrite.cli.url' => 'removed',
  'htaccess.RewriteBase' => '/nextcloud',
  'dbname' => 'nextcloud',
  'dbhost' => 'localhost',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'mysql.utf8mb4' => true,
  'dbuser' => 'removed',
  'dbpassword' => 'removed',
  'installed' => true,
  'maintenance' => false,
  'theme' => '',
  'loglevel' => 2,
  'updater.secret' => 'removed',
);

The output of your Apache/nginx/system log in /var/log/____:

[Fri Sep 09 05:56:05.058891 2022] [access_compat:error] [pid 185602] [client] AH01797: client denied by server configuration: /var/www/nextcloud/data/.ocdata