A user can no longer see their folders and files through the web interface after updating from Nextcloud 25 to Nextcloud 28.0.1

Hi !

Since I updated the Nextcloud server from version 25 to 28, one of my users can no longer access their folders and files through the web interface. It shows the message: “No files in here. Upload some content or sync with your devices!” However, they had access to all their data before the update!
Could you please help me ? Thank you.

Operating system: Debian 10
Nextcloud version: 28.0.1 - 28.0.1.1
PHP version: 8.2.14
PHP modules: Core, date, libxml, openssl, pcre, zlib, filter, hash, json, random, Reflection, SPL, session, standard, sodium, cgi-fcgi, mysqlnd, PDO, xml, calendar, ctype, curl, dom, mbstring, FFI, fileinfo, ftp, gd, gettext, gmp, iconv, igbinary, imap, intl, exif, mysqli, pdo_mysql, Phar, posix, readline, redis, shmop, SimpleXML, sockets, sysvmsg, sysvsem, sysvshm, tokenizer, xmlreader, xmlwriter, xsl, zip, Zend OPcache

Could you please describe, how you performed the update exactly?


ernolf

@ernolf

Yes, of course:

  1. I installed PHP version 8.2 along with php8.2-fpm.
  2. I switched my Apache from PHP version 7.4 to PHP version 8.2 using #a2dismod php7.4 and #a2enmod php8.2.
  3. I installed the same PHP modules that I had on version 7.4 on PHP version 8.2 by listing them with the command #php -m, then restarted the Apache2 service.
  4. Next, I disabled Nextcloud maintenance mode using: occ maintenance:mode --off, and then initiated the first upgrade from Nextcloud version 25 to version 26 using occ upgrade.
  5. Afterward, I proceeded with the remaining upgrades through the admin web interface, from version 26 to 27, and then from version 27 to 28.
  6. It’s at this point that I noticed one of my users (not all) can’t find their files through the web interface, even though they can locate them by searching via the name using the web interface’s search button.

There are some inconsistencies in your php update process.

You wrote:

… but if you use php-fpm as SAPI then you can’t use

a2dismod php7.4
a2enmod php8.2

to switch the versions because that command is intended for a different php SAPI; the libapache2-mod-php (apache2 Module) and not the php-Fast Process Manager (php-fpm).

You should have used

a2disconf php7.4-fpm
a2enconf php8.2-fpm

instead.

Or is php-fpm installed without being used?


You could have done this more easily with the

php-updater script

Install it with:

sudo wget -qO /usr/local/bin/php-updater https://global-social.net/script/php-updater
sudo chmod +x /usr/local/bin/php-updater

Once installed, simply run

php-updater

It contains detailed help that explains the previous point in detail and walks you through transferring the settings from the old php.ini files into the new ones step by step.

help output of the php-updater script
  Explanations
  ============

  used pseudo-code in this documentation:
    <OLD>  = the old php version (e.g. 7.4)
    <NEW>  = the new php version (e.g. 8.2)
    <VER>  = any php version
    <SAPI> = any sapi


  This script can only work if the following requirements are met:

  1. At least one installed php version "php<OLD>", ideally fully configured and
     optimized, otherwise this script doesn't make much sense. The aim is to
     integrate the well-coordinated configuration - which you know works and has
     cost you much time to fine tune - into PHP<NEW> without much effort.

  2. php<OLD> must still be fully installed, since the settings to be migrated must
     be read from php<OLD>. This condition is met if you have not yet explicitly
     uninstalled (--purge) any php<OLD> packages.

  Then you should know, which php-sapi (sapi = Server API) is used.

  These are the most important sapis:

  Command Line Interface
  - cli
  - package - php<VER>-cli
  - description:
      cli is used by php scripts invoked from the command line. i.e. all processes
      that were explicitly NOT called by the web server (cron jobs, occ commands,
      etc.)

  Apache2 module
  - apache2
  - package - libapache2-mod-php<VER>
  - description:
      the apache2 module is the default sapi for apache2. The downside is that it's
      not particularly scalable and doesn't support http2.
      libapache2-mod-php relies on the old but stable Multi-Processing Module (MPM)
      "mpm-prefork".

  Fast Process Manager
  - fpm
  - package - php<VER>-fpm
  - description:
      this is the default sapi used by nginx. On apache2 php-fpm relies on the more
      scalable threaded MPM "mpm-event". Additionally it needs the apache2-modules
      "proxy_fcgi" and "setenvif".

  Every sapi has its own php.ini file:

      /etc/php/<VER>/<SAPI>/php.ini


  If your webserver is apache2, you can find out the active mpm (Multi Processing
  Module) with this command call:

    user@box:~# sudo apachectl -M 2>/dev/null | grep mpm

  as explained above, the "mpm_event_module" means that apache2 speaks via fpm,
  while the "mpm_prefork_module" indicates that the apache2 module is used for the
  comunication between webserver and php.

  - the sapi used by apache 2 can also be found out with this command call:

    user@box:~# sudo apachectl -tD DUMP_INCLUDES 2>/dev/null | grep -v sites | sed -n '/php.*conf/ s#.*/\([^/]*\)\.conf#\1#p'

  ================================================================================

  execute the script simply by calling it:

    user@box:~# php-updater

  it looks for installed php-versions and installation candidates from the Apt
  sources. If only one php Version is installed, it will offer you to install a
  new version of your choice.
  After installation, it migrates all settings from php-<OLD>:

    - php.ini for each sapi
        in case you changed other (NOT-php.ini) files since installation:
    - any other changed file belonging to the package in question

  … into the new version.

  an other possible call is:

    user@box:~# php-updater <OLD> <NEW>

  in this case it will assume <OLD> as refference, which does not have to be the
  running version. If required, it installs missing packages which are installed
  in <OLD> but not in <NEW>.
  Then it will do the migration of all setting.

  alternatives mechanism:
  after you have updated/migrated php from php<OLD> to php<NEW>, you may switch
  php<NEW> to be the default php<VER> in the alternatives mechanism. I would
  recommend to not leave it in automatic mode but choosing the respective manual
  mode so that no unintentional version changes can take place, but only after
  your conscious change, using this command:

    user@box:~# for linkgroup in $(ls /var/lib/dpkg/alternatives/ | grep -E "ph(ar|p)");
       do sudo update-alternatives --config $linkgroup; done

  In case you are using fpm with apache2:
  - change the used php-fpm in your apache server:

    user@box:~# sudo a2disconf php<OLD>-fpm
    user@box:~# sudo a2enconf php<NEW>-fpm
    user@box:~# sudo systemctl restart apache2 php<NEW>-fpm

  ================================================================================


  Mindmap of this script: https://global-social.net/s/php-updater-mindmap#mindmap

  Good luck!
  ernolf

  PS:
  Feedback and suggestions for improvements/additions are always welcome!
  You can write me here:
  https://help.nextcloud.com/t/php-updater-a-script-to-upgrade-php-in-a-safe-way/180215
================================================================================

So first get a clear picture of what exactly your server is running on. Only a properly administered server can deliver clean results.


You should do the upgrade exactly as described → here in the manual ← after you made a complete backup of files and database.
The occ upgrade is the second update step to be taken, after the web- or comandline based updater exchanged the files.


Much and good luck,
ernolf

Are there files in your server’s datadirectory still?

Your data is most likely still there. The 28.01 upgrade disabled the user backend spl app (I use postgresql), so I had to “enable untested app”, and my users showed up again. If you ssh to your system, and got to where your nextcloud is installed, for example /var/www/nextcloud/data, you should see all your user folders.

There are lots of good sources online with good tutorials. Here are a few, and two having to do with working with php: Install NextCloud on Ubuntu 22.04 (Nginx + PostgreSQL + PHP8) ,
How to Install Multiple Versions of PHP on Ubuntu 22.04, 20.04, 18.04 , How to install and switch different versions of PHP in Ubuntu?

Hi @ernolf ,

Thank you for the detailed response.
Indeed, I had PHP 8.2 activated and used by Nextcloud, and PHP 8.2-fpm installed but not utilized. So, I followed the instructions you provided to update PHP correctly using the php-updater script. Unfortunately, I still have the same issue with the same user! What’s perplexing is that other users didn’t encounter the same problem with their accounts. Normally, if there was a problem related to the PHP update, it could have affected all my users in that case, no ?

@jtr

Yes, the user’s data still exists in /var/www/nextcloud/data, but it’s just inaccessible through the web interface!

@jason_marinaro Yes, the user’s data still exists in /var/www/nextcloud/data, but it’s just inaccessible through the web interface! In fact, I can locate most users without any issues, and some can find their files without any problem, except for one who cannot access them when logging into the cloud web interface.

Then I guess you can trying running a scan, but that still doesn’t explain why this happened to start with.

  • Can you check your Nextcloud Server logs while trying to access this users account/files?
  • Anything else unusual about this one user?
  • Are there any special characters or spaces in the user’s username?

I don’t have any direct suspicion, but could you please provide the output of…

  • not shipped apps:
    occ app:list --shipped=false
    
  • system config:
    occ config:list -- system
    

ernolf

@jtr
No, I don’t see any errors in the logs :/. I only have the access logs from /var/log/apache2/access.log :

the profile name is : soufiane_gh

192.168.200.1 - - [15/Jan/2024:17:13:42 +0100] "GET /index.php/apps/files/ HTTP/1.1" 200 23586 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:43 +0100] "GET /index.php/apps/theming/theme/default.css?plain=1&v=406c5679 HTTP/1.1" 200 2039 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:43 +0100] "GET /index.php/apps/theming/theme/dark.css?plain=1&v=406c5679 HTTP/1.1" 200 2599 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:43 +0100] "GET /index.php/apps/theming/theme/light.css?plain=0&v=406c5679 HTTP/1.1" 200 2065 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:43 +0100] "GET /index.php/apps/theming/theme/dark.css?plain=0&v=406c5679 HTTP/1.1" 200 2041 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:43 +0100] "GET /index.php/apps/theming/theme/light-highcontrast.css?plain=0&v=406c5679 HTTP/1.1" 200 2156 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:43 +0100] "GET /index.php/apps/theming/theme/dark-highcontrast.css?plain=0&v=406c5679 HTTP/1.1" 200 2731 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:43 +0100] "GET /index.php/apps/theming/theme/opendyslexic.css?plain=0&v=406c5679 HTTP/1.1" 200 1268 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - soufiane_gh [15/Jan/2024:17:13:43 +0100] "GET /ocs/v2.php/apps/user_status/api/v1/user_status?format=json HTTP/1.1" 200 6162 "-" "Mozilla/5.0 (Windows) mirall/3.4.2stable-Win64 (build 20220127) (Nextcloud, windows-10.0.19045 ClientArchitecture: x86_64 OsArchitecture: x86_64)"
192.168.200.1 - soufiane_gh [15/Jan/2024:17:13:43 +0100] "GET /ocs/v2.php/apps/notifications/api/v2/notifications?format=json HTTP/1.1" 304 5428 "-" "Mozilla/5.0 (Windows) mirall/3.4.2stable-Win64 (build 20220127) (Nextcloud, windows-10.0.19045 ClientArchitecture: x86_64 OsArchitecture: x86_64)"
192.168.200.1 - soufiane_gh [15/Jan/2024:17:13:43 +0100] "PROPFIND /remote.php/dav/files/soufiane_gh/ HTTP/1.1" 207 1178 "-" "Mozilla/5.0 (Windows) mirall/3.4.2stable-Win64 (build 20220127) (Nextcloud, windows-10.0.19045 ClientArchitecture: x86_64 OsArchitecture: x86_64)"
192.168.200.1 - - [15/Jan/2024:17:13:44 +0100] "GET /index.php/apps/theming/image/background?v=47 HTTP/1.1" 304 298 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:44 +0100] "GET /index.php/apps/theming/image/logoheader?v=47 HTTP/1.1" 304 298 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:44 +0100] "GET /index.php/js/core/merged-template-prepend.js?v=eff6a774-47 HTTP/1.1" 304 287 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:44 +0100] "GET /index.php/apps/theming/theme/light.css?plain=1&v=406c5679 HTTP/1.1" 200 2039 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:44 +0100] "GET /index.php/apps/theming/theme/light-highcontrast.css?plain=1&v=406c5679 HTTP/1.1" 200 2132 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:44 +0100] "GET /index.php/apps/theming/theme/dark-highcontrast.css?plain=1&v=406c5679 HTTP/1.1" 200 2144 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:44 +0100] "GET /ocs/v2.php/search/providers?from=%2Fapps%2Ffiles%2F HTTP/1.1" 200 1665 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:44 +0100] "POST /index.php/contactsmenu/contacts HTTP/1.1" 200 1878 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:44 +0100] "PROPFIND /remote.php/dav/files/soufiane_gh/ HTTP/1.1" 500 1126 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:45 +0100] "PUT /ocs/v2.php/apps/user_status/api/v1/heartbeat?format=json HTTP/1.1" 204 787 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:45 +0100] "GET /ocs/v2.php/apps/user_status/api/v1/user_status HTTP/1.1" 200 1027 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:46 +0100] "GET /index.php/apps/encryption/ajax/getStatus HTTP/1.1" 200 960 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:46 +0100] "GET /index.php/avatar/soufiane_gh/64/dark?v=5 HTTP/1.1" 304 293 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:46 +0100] "GET /ocs/v2.php/apps/notifications/api/v2/notifications HTTP/1.1" 200 1024 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:47 +0100] "GET /index.php/apps/theming/manifest/files?v=66d4b527 HTTP/1.1" 200 2656 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:47 +0100] "GET /index.php/apps/theming/icon/files?v=47 HTTP/1.1" 304 299 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0"
192.168.200.1 - - [15/Jan/2024:17:13:48 +0100] "GET /index.php/apps/files/preview-service-worker.js HTTP/1.1" 200 6842 "https://cloud.sgservices.fr/index.php/apps/files/preview-service-worker.js" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0

@ernolf

  • No, the username is : soufiane_gh

  • Here is the results of the command :

# occ app:list --shipped=false

Enabled:
  - accessibility: 1.10.0
  - announcementcenter: 6.7.0
  - calendar: 4.6.3
  - contacts: 5.5.1
  - deck: 1.12.0
  - drawio: 3.0.2
  - integration_github: 2.0.6
  - notes: 4.9.2
  - onlyoffice: 9.0.0
  - passwords: 2023.12.32
  - phonetrack: 0.7.7
  - quicknotes: 0.8.10
  - quota_warning: 1.18.0
  - spreed: 18.0.1
  - tasks: 0.15.0
  - twofactor_email: 2.7.4
Disabled:
  - documentserver_community: 0.1.13 (installed 0.1.13)
  - files_antivirus: 5.4.0 (installed 5.4.0)
  - files_markdown: 2.4.1 (installed 2.4.1)
  - files_rightclick: 0.15.1 (installed 0.15.1)
  - files_videoplayer: 1.13.0
  - integration_twitter: 1.0.7 (installed 1.0.7)
  - integration_whiteboard: 0.0.14 (installed 0.0.14)
  - limit_login_to_ip: 4.0.0 (installed 4.0.0)
  - music: 1.9.1 (installed 1.9.1)
  - rainloop: 7.2.6 (installed 7.2.6)
  - ransomware_protection: 1.14.0 (installed 1.14.0)
  - video_converter: 1.0.6 (installed 1.0.6)
  - whiteboard: 0.0.3 (installed 0.0.3)
# occ config:list -- system
{
    "system": {
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "localhost",
            "***REMOVED SENSITIVE VALUE***",
            "***REMOVED SENSITIVE VALUE***"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "28.0.1.1",
        "overwrite.cli.url": "http:\/\/localhost",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "mysql.utf8mb4": true,
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "memcache.local": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": 0,
            "timeout": 0
        },
        "filelocking.enabled": true,
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "maintenance": false,
        "app_install_overwrite": [
            "whiteboard",
            "spreed",
            "integration_whiteboard",
            "files_bpm",
            "limit_login_to_ip",
            "quicknotes",
            "files_rightclick",
            "rainloop",
            "documentserver_community",
            "accessibility"
        ],
        "theme": "",
        "loglevel": 2,
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpmode": "smtp",
        "mail_sendmailmode": "smtp",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpauthtype": "LOGIN",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "587",
        "mail_smtpsecure": "tls",
        "updater.release.channel": "stable",
        "mail_smtpauth": 1,
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
        "allow_local_remote_servers": true,
        "memories.exiftool": "\/var\/www\/nextcloud\/apps\/memories\/exiftool-bin\/exiftool-amd64-glibc",
        "memories.vod.path": "\/var\/www\/nextcloud\/apps\/memories\/exiftool-bin\/go-vod-amd64",
        "memories.vod.ffmpeg": "\/usr\/bin\/ffmpeg",
        "memories.vod.ffprobe": "\/usr\/bin\/ffprobe",
        "data-fingerprint": "dedb80e6b2ba341cff7c8380f8c6945d",
        "ldapProviderFactory": "OCA\\User_LDAP\\LDAPProviderFactory"
    }
}

OK, that user gets a 500 Internal Server Error:


Your apps:

accessibilty was a shipped app until 2 years ago and does not exist any more since Nextcloud 25.

is not yet supported by Nextclopud 28

files_rightclick is removed in Nextcloud 28 and is now part of files app.


long story short:

  1. disable quicknotes

    occ app:disable quicknotes
    
  2. remove the apps accessibilty and files_rightclick with

    occ app:remove accessibilty
    occ app:remove files_rightclick
    
    • additionally remove these two directories (if still present):
      • apps/accessibilty
      • apps/files_rightclick
  3. remove the complete app_install_overwrite array from your config/config.php


I hope that solves your issue.


Much and good luck,
ernolf

Thank you for your help @ernolf . I applied all these modifications, but unfortunately, the problem still persists. And indeed, I don’t understand the origin of this 500 error in the access.log.

You only provided this lines from

  • /var/log/apache2/access.log

Could you look inside of

  • /var/log/apache2/error.log

and

  • $DATADIRECTORY/nextcloud.log

as well please.
You can post it here if you find it difficult to interprete.


ernolf

@ernolf Yes, of course. I don’t have any error logs in the /var/log/apache2/error.log ; however, I have one in the nextcloud.log:

$DATADIRECTORY/nextcloud.log

{
  "reqId": "ucS5cD2gGACpJKXCA0Up",
  "level": 3,
  "time": "2024-01-15T22:50:31+00:00",
  "remoteAddr": "192.168.200.1",
  "user": "soufiane_gh",
  "app": "no app in context",
  "method": "PROPFIND",
  "url": "/remote.php/dav/files/soufiane_gh/",
  "message": "Cannot decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you.",
  "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0",
  "version": "28.0.1.1",
  "data": []
}
{
  "reqId": "ucS5cD2gGACpJKXCA0Up",
  "level": 3,
  "time": "2024-01-15T22:50:31+00:00",
  "remoteAddr": "192.168.200.1",
  "user": "soufiane_gh",
  "app": "webdav",
  "method": "PROPFIND",
  "url": "/remote.php/dav/files/soufiane_gh/",
  "message": "Cannot decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you.",
  "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0",
  "version": "28.0.1.1",
  "exception": {
    "Exception": "OC\\Encryption\\Exceptions\\DecryptionFailedException",
    "Message": "Cannot decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you.",
    "Code": 0,
    "Trace": [
      {
        "file": "/var/www/nextcloud/lib/private/Files/Stream/Encryption.php",
        "line": 517,
        "function": "decrypt",
        "class": "OCA\\Encryption\\Crypto\\Encryption",
        "type": "->",
        "args": [
          "*** sensitive parameters replaced ***"
        ]
      },
      {
        "file": "/var/www/nextcloud/lib/private/Files/Stream/Encryption.php",
        "line": 316,
        "function": "readCache",
        "class": "OC\\Files\\Stream\\Encryption",
        "type": "->"
      },
      {
        "function": "stream_read",
        "class": "OC\\Files\\Stream\\Encryption",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/lib/private/Files/Storage/Wrapper/Encryption.php",
        "line": 240,
        "function": "stream_get_contents"
      },
      {
        "file": "/var/www/nextcloud/lib/private/Files/Storage/Wrapper/Wrapper.php",
        "line": 244,
        "function": "file_get_contents",
        "class": "OC\\Files\\Storage\\Wrapper\\Encryption",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/lib/private/Files/View.php",
        "line": 1161,
        "function": "file_get_contents",
        "class": "OC\\Files\\Storage\\Wrapper\\Wrapper",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/lib/private/Files/View.php",
        "line": 581,
        "function": "basicOperation",
        "class": "OC\\Files\\View",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/lib/private/Files/Node/File.php",
        "line": 54,
        "function": "file_get_contents",
        "class": "OC\\Files\\View",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/apps/text/lib/DAV/WorkspacePlugin.php",
        "line": 119,
        "function": "getContent",
        "class": "OC\\Files\\Node\\File",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/PropFind.php",
        "line": 95,
        "function": "OCA\\Text\\DAV\\{closure}",
        "class": "OCA\\Text\\DAV\\WorkspacePlugin",
        "type": "->",
        "args": [
          "*** sensitive parameters replaced ***"
        ]
      },
      {
        "file": "/var/www/nextcloud/apps/text/lib/DAV/WorkspacePlugin.php",
        "line": 117,
        "function": "handle",
        "class": "Sabre\\DAV\\PropFind",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php",
        "line": 89,
        "function": "propFind",
        "class": "OCA\\Text\\DAV\\WorkspacePlugin",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
        "line": 1052,
        "function": "emit",
        "class": "Sabre\\DAV\\Server",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
        "line": 984,
        "function": "getPropertiesByNode",
        "class": "Sabre\\DAV\\Server",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
        "line": 1662,
        "function": "getPropertiesIteratorForPath",
        "class": "Sabre\\DAV\\Server",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
        "line": 1647,
        "function": "writeMultiStatus",
        "class": "Sabre\\DAV\\Server",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php",
        "line": 346,
        "function": "generateMultiStatus",
        "class": "Sabre\\DAV\\Server",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php",
        "line": 89,
        "function": "httpPropFind",
        "class": "Sabre\\DAV\\CorePlugin",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
        "line": 472,
        "function": "emit",
        "class": "Sabre\\DAV\\Server",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
        "line": 253,
        "function": "invokeMethod",
        "class": "Sabre\\DAV\\Server",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php",
        "line": 321,
        "function": "start",
        "class": "Sabre\\DAV\\Server",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/apps/dav/lib/Server.php",
        "line": 370,
        "function": "exec",
        "class": "Sabre\\DAV\\Server",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/apps/dav/appinfo/v2/remote.php",
        "line": 35,
        "function": "exec",
        "class": "OCA\\DAV\\Server",
        "type": "->"
      },
      {
        "file": "/var/www/nextcloud/remote.php",
        "line": 172,
        "args": [
          "/var/www/nextcloud/apps/dav/appinfo/v2/remote.php"
        ],
        "function": "require_once"
      }
    ],
    "File": "/var/www/nextcloud/apps/encryption/lib/Crypto/Encryption.php",
    "Line": 352,
    "Hint": "Cannot decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you.",
    "message": "Cannot decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you.",
    "exception": {},
    "CustomMessage": "Cannot decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you."
  }
}

You have an issue with en-/decryption.

Find out what file is making trouble and remove it.


ernolf

@ernolf
Is there a way to find the file in question? Because the logs are not very informative, I’m having trouble identifying the file that is causing this issue :confused: