core icon indicating copy to clipboard operation
core copied to clipboard

Internal Server Error when trying to download from public link

Open timbot18 opened this issue 2 years ago • 2 comments

Steps to reproduce

  1. share a file/folder
  2. create a public link
  3. visit link, attempt to download
  4. tried with default theme and custom theme, same results

Expected behaviour

the file should download

Actual behaviour

internal server error

Server configuration

Operating system: debian 10

Web server: apache2

Database: mysql/mariadb 10.3.25

PHP version: 7.3

ownCloud version: (see ownCloud admin page) 10.9.1

Updated from an older ownCloud or fresh install: updated from older versions as they have been released

Where did you install ownCloud from: https://owncloud.com/download-server/

Signing status (ownCloud 9.0 and above):

Results

  • castheme
    • EXCEPTION
      • OC\IntegrityCheck\Exceptions\MissingSignatureException
      • Signature data not found.

Raw output

Array ( [castheme] => Array ( [EXCEPTION] => Array ( [class] => OC\IntegrityCheck\Exceptions\MissingSignatureException [message] => Signature data not found. )

    )

)

The content of config/config.php:

{ "basic": { "license key": "REMOVED SENSITIVE VALUE", "date": "Tue, 15 Mar 2022 15:53:22 +0000", "ownCloud version": "10.9.1.2", "ownCloud version string": "10.9.1", "ownCloud edition": "Enterprise", "server OS": "Linux", "server OS version": "Linux 4.19.0-14-amd64 #1 SMP Debian 4.19.171-2 (2021-01-30) x86_64", "server SAPI": "apache2handler", "webserver version": "Apache/2.4.38 (Debian) OpenSSL/1.1.1g", "hostname": "xxx", "logged-in user": "ocadmin" }, "stats": { "users": { "Database": { "count": 4, "seen": 3, "logged in (30 days)": 2 }, "LDAP": { "count": 100830, "seen": 368, "logged in (30 days)": 20 } }, "groups": { "OC\Group\Database": 2, "OCA\User_LDAP\Group_Proxy": 499 } }, "config": { "installed": true, "dbtype": "mysql", "dbname": "owncloud", "dbuser": "REMOVED SENSITIVE VALUE", "dbpassword": "REMOVED SENSITIVE VALUE", "dbhost": "localhost", "dbtableprefix": "oc_", "passwordsalt": "REMOVED SENSITIVE VALUE", "forcessl": true, "blacklisted_files": [ ".htaccess" ], "overwritehost": "", "overwriteprotocol": "", "overwritewebroot": "", "overwritecondaddr": "", "trusted_domains": [ "xxx" ], "default_language": "en", "3rdpartyroot": "", "3rdpartyurl": "", "defaultapp": "files", "knowledgebaseenabled": true, "appstoreenabled": true, "mail_domain": "REMOVED SENSITIVE VALUE", "mail_smtpdebug": false, "mail_smtpmode": "smtp", "mail_smtphost": "REMOVED SENSITIVE VALUE", "mail_smtpport": "25", "mail_smtptimeout": 30, "memcached_server": [ "localhost", 11211 ], "trashbin_retention_obligation": "30, auto", "allow_user_to_change_display_name": true, "appcodechecker": "", "updatechecker": false, "has_internet_connection": true, "check_for_working_webdav": true, "check_for_working_htaccess": true, "log_type": "owncloud", "logfile": "", "loglevel": 3, "logdateformat": "F d, Y H:i:s", "logtimezone": "Europe/Berlin", "log_query": false, "log_authfailip": false, "log_rotate_size": 104857600, "log_rotate_sizerotation": 262144000, "remember_login_cookie_lifetime": 1296000, "session_lifetime": 86400, "session_keepalive": true, "custom_csp_policy": "default-src 'self'; script-src 'self' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; frame-src *; img-src *; font-src 'self' data:; media-src *", "xframe_restriction": true, "datadirectory": "/home/ocdata/ocdata", "maintenance": false, "customclient_desktop": "http://owncloud.org/sync-clients/", "customclient_android": "https:///", "customclient_ios": "https:///", "enable_previews": true, "preview_max_x": "", "preview_max_y": "", "preview_max_scale_factor": 10, "preview_libreoffice_path": "/usr/bin/libreoffice", "preview_office_cl_parameters": "", "enable_avatars": true, "openssl": [], "singleuser": false, "instanceid": "oc065582e124", "version": "10.9.1.2", "ldapIgnoreNamingRules": false, "license-key": "REMOVED SENSITIVE VALUE", "supportedDatabases": [ "mysql", "pgsql", "oci" ], "secret": "REMOVED SENSITIVE VALUE", "share_folder": "/Shared", "mail_from_address": "REMOVED SENSITIVE VALUE", "overwrite.cli.url": "https://xxx", "htaccess.RewriteBase": "/", "accounts.enable_medial_search": true, "updater.secret": "REMOVED SENSITIVE VALUE", "allow_user_to_change_mail_address": true, "integrity.ignore.missing.app.signature": [ "castheme22" ] }, "integritychecker": { "passing": false, "enabled": true, "result": { "castheme": { "EXCEPTION": { "class": "OC\IntegrityCheck\Exceptions\MissingSignatureException", "message": "Signature data not found." } } } }, "core": { "allow_user_mount_sharing": "no", "backgroundjobs_step": "regular_tasks", "backgroundjobs_task": "OC_Cache_FileGlobal-gc", "enable_external_storage": "yes", "global_cache_gc_lastrun": "1442638674", "grace_period": "1643255754", "installedat": "1383324080.6065", "lastcron": "1647359567", "lastupdateResult": "[]", "lastupdatedat": "1647357869", "public_documents": "documents/public.php", "public_files": "files_sharing/public.php", "public_webdav": "dav/appinfo/v1/publicwebdav.php", "remote_caldav": "dav/appinfo/v1/caldav.php", "remote_calendar": "dav/appinfo/v1/caldav.php", "remote_carddav": "dav/appinfo/v1/carddav.php", "remote_contacts": "dav/appinfo/v1/carddav.php", "remote_core.css": "/core/minimizer.php", "remote_core.js": "/core/minimizer.php", "remote_dav": "dav/appinfo/v2/remote.php", "remote_files": "dav/appinfo/v1/webdav.php", "remote_filesync": "files/appinfo/filesync.php", "remote_nonshib-webdav": "user_shibboleth/appinfo/remote.php", "remote_webdav": "dav/appinfo/v1/webdav.php", "repairlegacystoragesdone": "yes", "shareapi_allow_mail_notification": "yes", "shareapi_allow_public_notification": "yes", "shareapi_allow_resharing": "yes", "shareapi_allow_share_dialog_user_enumeration": "yes", "shareapi_default_permissions": "31", "shareapi_only_share_with_group_members": "no", "shareapi_only_share_with_membership_groups": "no", "updater.secret.created": "1537586406", "vendor": "owncloud" },...

List of activated apps:

Enabled:

  • activity:
    • Version: 2.6.1
    • Path: /var/www/owncloud/apps/activity
  • castheme22:
    • Version: 1.0.0
    • Path: /var/www/owncloud/apps/castheme22
  • comments:
    • Version: 0.3.0
    • Path: /var/www/owncloud/apps/comments
  • configreport:
    • Version: 0.2.0
    • Path: /var/www/owncloud/apps/configreport
  • dav:
    • Version: 0.7.0
    • Path: /var/www/owncloud/apps/dav
  • federatedfilesharing:
    • Version: 0.5.0
    • Path: /var/www/owncloud/apps/federatedfilesharing
  • federation:
    • Version: 0.1.0
    • Path: /var/www/owncloud/apps/federation
  • files:
    • Version: 1.5.2
    • Path: /var/www/owncloud/apps/files
  • files_external:
    • Version: 0.8.0
    • Path: /var/www/owncloud/apps/files_external
  • files_mediaviewer:
    • Version: 1.0.5
    • Path: /var/www/owncloud/apps/files_mediaviewer
  • files_sharing:
    • Version: 0.14.0
    • Path: /var/www/owncloud/apps/files_sharing
  • files_trashbin:
    • Version: 0.9.1
    • Path: /var/www/owncloud/apps/files_trashbin
  • files_versions:
    • Version: 1.3.0
    • Path: /var/www/owncloud/apps/files_versions
  • firstrunwizard:
    • Version: 1.2.0
    • Path: /var/www/owncloud/apps/firstrunwizard
  • market:
    • Version: 0.6.2
    • Path: /var/www/owncloud/apps/market
  • notifications:
    • Version: 0.5.4
    • Path: /var/www/owncloud/apps/notifications
  • provisioning_api:
    • Version: 0.5.0
    • Path: /var/www/owncloud/apps/provisioning_api
  • systemtags:
    • Version: 0.3.0
    • Path: /var/www/owncloud/apps/systemtags
  • updatenotification:
    • Version: 0.2.1
    • Path: /var/www/owncloud/apps/updatenotification
  • user_ldap:
    • Version: 0.16.0
    • Path: /var/www/owncloud/apps/user_ldap

Are you using external storage, if yes which one: local/smb/sftp/...

nfs

Are you using encryption: yes/no

no

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/...

active directory over ldaps

LDAP configuration (delete this part if not used)

+-------------------------------+------------------------------------------------------------+ | Configuration | s01 | +-------------------------------+------------------------------------------------------------+ | hasMemberOfFilterSupport | 1 | | hasPagedResultSupport | | | homeFolderNamingRule | | | lastJpegPhotoLookup | 0 | | ldapAgentName | xxxx | | ldapAgentPassword | *** | | ldapAttributesForGroupSearch | | | ldapAttributesForUserSearch | | | ldapBackupHost | | | ldapBackupPort | | | ldapBase | xxxxx | | ldapBaseGroups | xxxxx | | ldapBaseUsers | xxxxx | | ldapCacheTTL | 600 | | ldapConfigurationActive | 1 | | ldapDynamicGroupMemberURL | | | ldapEmailAttribute | mail | | ldapExperiencedAdmin | 0 | | ldapExpertUUIDGroupAttr | | | ldapExpertUUIDUserAttr | objectguid | | ldapExpertUsernameAttr | samaccountname | | ldapGroupDisplayName | samaccountname | | ldapGroupFilter | (&(|(objectclass=group))) | | ldapGroupFilterGroups | | | ldapGroupFilterMode | 0 | | ldapGroupFilterObjectclass | group | | ldapGroupMemberAlgo | groupScan | | ldapGroupMemberAssocAttr | member | | ldapHost | xxxxx | | ldapIgnoreNamingRules | | | ldapLoginFilter | (&(&(|(objectclass=user)))(samaccountname=%uid)) | | ldapLoginFilterAttributes | | | ldapLoginFilterEmail | 0 | | ldapLoginFilterMode | 0 | | ldapLoginFilterUsername | 1 | | ldapNestedGroups | 0 | | ldapNetworkTimeout | 2 | | ldapOverrideMainServer | 0 | | ldapPagingSize | 500 | | ldapPort | 636 | | ldapQuotaAttribute | | | ldapQuotaDefault | | | ldapTLS | | | ldapUserDisplayName | samaccountname | | ldapUserDisplayName2 | | | ldapUserFilter | (&(|(objectclass=user))) | | ldapUserFilterGroups | | | ldapUserFilterMode | 1 | | ldapUserFilterObjectclass | user | | ldapUserName | samaccountname | | ldapUuidGroupAttribute | auto | | ldapUuidUserAttribute | auto | | turnOffCertCheck | 0 | | useMemberOfToDetectMembership | 1 | +-------------------------------+------------------------------------------------------------+

Client configuration

Browser:

any browser

Operating system:

Logs

Web server error log

no entries in error log

Insert your webserver log here

    • [15/Mar/2022:11:06:18 -0500] "GET /s/8Z2PmTph8aJZXyC/download HTTP/1.1" 500 17077 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:97.0) Gecko/20100101 Firefox/97.0"

ownCloud log (data/owncloud.log)

{"reqId":"cM4vBCn5LfqY4x40VcKO","level":3,"time":"March 15, 2022 16:37:54","remoteAddr":"ipaddr","user":"--","app":"index","method":"GET","url":"\/s\/8Z2PmTph8aJZXyC\/download","message":"Caused by: {\"Exception\":\"Doctrine\\\\DBAL\\\\Driver\\\\PDO\\\\Exception\",\"Message\":\"SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'user' cannot be null\",\"Code\":\"23000\",\"Trace\":\"#0 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/doctrine\\\/dbal\\\/lib\\\/Doctrine\\\/DBAL\\\/Driver\\\/PDOStatement.php(119): Doctrine\\\\DBAL\\\\Driver\\\\PDO\\\\Exception::new(Object(PDOException))\\n#1 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/doctrine\\\/dbal\\\/lib\\\/Doctrine\\\/DBAL\\\/Connection.php(1526): Doctrine\\\\DBAL\\\\Driver\\\\PDOStatement->execute()\\n#2 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/DB\\\/Connection.php(238): Doctrine\\\\DBAL\\\\Connection->executeStatement('INSERT INTO `oc...', Array, Array)\\n#3 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/doctrine\\\/dbal\\\/lib\\\/Doctrine\\\/DBAL\\\/Query\\\/QueryBuilder.php(216): OC\\\\DB\\\\Connection->executeStatement('INSERT INTO `oc...', Array, Array)\\n#4 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/DB\\\/QueryBuilder\\\/QueryBuilder.php(142): Doctrine\\\\DBAL\\\\Query\\\\QueryBuilder->execute()\\n#5 \\\/var\\\/www\\\/owncloud\\\/apps\\\/activity\\\/lib\\\/Data.php(126): OC\\\\DB\\\\QueryBuilder\\\\QueryBuilder->execute()\\n#6 \\\/var\\\/www\\\/owncloud\\\/apps\\\/activity\\\/lib\\\/Consumer.php(76): OCA\\\\Activity\\\\Data->send(Object(OC\\\\Activity\\\\Event))\\n#7 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/Activity\\\/Manager.php(195): OCA\\\\Activity\\\\Consumer->receive(Object(OC\\\\Activity\\\\Event))\\n#8 \\\/var\\\/www\\\/owncloud\\\/apps\\\/files_sharing\\\/lib\\\/Controllers\\\/ShareController.php(463): OC\\\\Activity\\\\Manager->publish(Object(OC\\\\Activity\\\\Event))\\n#9 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/AppFramework\\\/Http\\\/Dispatcher.php(170): OCA\\\\Files_Sharing\\\\Controllers\\\\ShareController->downloadShare('8Z2PmTph8aJZXyC', NULL, '', '')\\n#10 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/AppFramework\\\/Http\\\/Dispatcher.php(89): OC\\\\AppFramework\\\\Http\\\\Dispatcher->executeController(Object(OCA\\\\Files_Sharing\\\\Controllers\\\\ShareController), 'downloadShare')\\n#11 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/AppFramework\\\/App.php(100): OC\\\\AppFramework\\\\Http\\\\Dispatcher->dispatch(Object(OCA\\\\Files_Sharing\\\\Controllers\\\\ShareController), 'downloadShare')\\n#12 \\\/var\\\/www\\\/owncloud\\\/lib\\\/public\\\/AppFramework\\\/App.php(132): OC\\\\AppFramework\\\\App::main('ShareController', 'downloadShare', Object(OC\\\\AppFramework\\\\DependencyInjection\\\\DIContainer))\\n#13 \\\/var\\\/www\\\/owncloud\\\/core\\\/routes.php(142): OCP\\\\AppFramework\\\\App->dispatch('ShareController', 'downloadShare')\\n#14 \\\/var\\\/www\\\/owncloud\\\/lib\\\/private\\\/Route\\\/Router.php(344): OC\\\\Route\\\\Router->{closure}(*** sensitive parameters replaced ***)\\n#15 \\\/var\\\/www\\\/owncloud\\\/lib\\\/base.php(927): OC\\\\Route\\\\Router->match('\\\/s\\\/8Z2PmTph8aJZ...')\\n#16 \\\/var\\\/www\\\/owncloud\\\/index.php(54): OC::handleRequest()\\n#17 {main}\",\"File\":\"\\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/doctrine\\\/dbal\\\/lib\\\/Doctrine\\\/DBAL\\\/Driver\\\/PDO\\\/Exception.php\",\"Line\":18}"}

timbot18 avatar Mar 15 '22 16:03 timbot18

block of code causing the problem from apps/activity/lib/Data.php (starting at line 86):

public function send(IEvent $event) { if ($event->getAffectedUser() === '' || $event->getAffectedUser() === null) { return false; } // store in DB $queryBuilder = $this->connection->getQueryBuilder(); $queryBuilder->insert('activity') ->values([ 'app' => $queryBuilder->createParameter('app'), 'subject' => $queryBuilder->createParameter('subject'), 'subjectparams' => $queryBuilder->createParameter('subjectparams'), 'message' => $queryBuilder->createParameter('message'), 'messageparams' => $queryBuilder->createParameter('messageparams'), 'file' => $queryBuilder->createParameter('object_name'), 'link' => $queryBuilder->createParameter('link'), 'user' => $queryBuilder->createParameter('user'), 'affecteduser' => $queryBuilder->createParameter('affecteduser'), 'timestamp' => $queryBuilder->createParameter('timestamp'), 'priority' => $queryBuilder->createParameter('priority'), 'type' => $queryBuilder->createParameter('type'), 'object_type' => $queryBuilder->createParameter('object_type'), 'object_id' => $queryBuilder->createParameter('object_id'), ]) ->setParameters([ 'app' => $event->getApp(), 'type' => $event->getType(), 'user' => $event->getAuthor(), 'affecteduser' => $event->getAffectedUser(), 'timestamp' => (int) $event->getTimestamp(), 'subject' => $event->getSubject(), 'subjectparams' => \json_encode($event->getSubjectParameters()), 'message' => $event->getMessage(), 'messageparams' => \json_encode($event->getMessageParameters()), 'priority' => IExtension::PRIORITY_MEDIUM, 'object_type' => $event->getObjectType(), 'object_id' => (int) $event->getObjectId(), 'object_name' => $event->getObjectName(), 'link' => $event->getLink(), ]) ->execute(); when i comment out the if statement at the top and change BOTH 'user' and 'affecteduser' to a specified dummy account i created, it works:

'user' => 'public', //$event->getAuthor(), 'affecteduser' => 'public', //$event->getAffectedUser,

timbot18 avatar Mar 18 '22 16:03 timbot18

This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 10 days if no further activity occurs. Thank you for your contributions.

github-actions[bot] avatar Sep 15 '22 01:09 github-actions[bot]

This issue has been automatically closed.

github-actions[bot] avatar Sep 26 '22 01:09 github-actions[bot]