nextcloud / nextcloud/server

[Bug]: Setting locale failed.

Open
#62,029 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

1. to develop 35-feedback bug needs info
Dominant language
PHP
Stars
36.9k
Forks
5.2k
Avg merge
2d 3h
Merged PRs (30d)
713

Description

⚠️ This issue respects the following points: ⚠️
Bug description
Image
Steps to reproduce
  1. I'm using daily update package, but suddenly shows me this error scrren.
    https://download.nextcloud.com/server/daily/nextcloud-master-daily-2026-07-08.zip
  2. I'd installed all the locales files, locales-all and generated the language files.
  3. update to nextcloud-master-daily-2026-07-11.zip, but still had this error screen.
Expected behavior

Can be used normally.

Nextcloud Server version

35 (master)

Operating system

Debian/Ubuntu

PHP engine version

PHP 8.4

Web server

Apache (supported)

Database engine version

MySQL

Is this bug present after an update or on a fresh install?

Fresh Nextcloud Server install

Are you using the Nextcloud Server Encryption module?

None

What user-backends are you using?
  • Default user-backend (database)
  • LDAP/ Active Directory
  • SSO - SAML
  • Other
Configuration report
{
    "system": {
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "REMOVED SENSITIVE VALUE",
            "REMOVED SENSITIVE VALUE"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "35.0.0.1",
        "overwriteprotocol": "https",
        "overwrite.cli.url": "https:\/\/cloud.amazehome.cn",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbtableprefix": "oc_",
        "mysql.utf8mb4": true,
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "updater.release.channel": "daily",
        "installed": true,
        "default_language": "zh_CN",
        "default_locale": "zh_CN",
        "theme": "",
        "post_max_size": "2G",
        "upload_max_filesize": "2G",
        "loglevel": 0,
        "maintenance": false,
        "chunked_upload_enabled": true,
        "chunk_size": 10485760,
        "default_phone_region": "CN",
        "filelocking.enabled": "true",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": 6379,
            "password": "***REMOVED SENSITIVE VALUE***"
        },
        "memcache.distributed": "\\OC\\Memcache\\Memcached",
        "memcached_servers": [
            [
                "x.x.x.x",
                11211
            ]
        ],
        "maintenance_window_start": 1,
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpmode": "smtp",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpauth": true,
        "mail_smtpport": "587",
        "mail_sendmailmode": "smtp",
        "mail_smtpstreamoptions": {
            "ssl": {
                "allow_self_signed": true,
                "verify_peer": false,
                "verify_peer_name": false
            }
        },
        "forbidden_filename_basenames": [
            "con",
            "prn",
            "aux",
            "nul",
            "com0",
            "com1",
            "com2",
            "com3",
            "com4",
            "com5",
            "com6",
            "com7",
            "com8",
            "com9",
            "com\u00b9",
            "com\u00b2",
            "com\u00b3",
            "lpt0",
            "lpt1",
            "lpt2",
            "lpt3",
            "lpt4",
            "lpt5",
            "lpt6",
            "lpt7",
            "lpt8",
            "lpt9",
            "lpt\u00b9",
            "lpt\u00b2",
            "lpt\u00b3"
        ],
        "forbidden_filename_characters": [
            "<",
            ">",
            ":",
            "\"",
            "|",
            "?",
            "*",
            "\\",
            "\/"
        ],
        "forbidden_filename_extensions": [
            " ",
            ".",
            ".filepart",
            ".part"
        ],
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "defaultapp": "dashboard,activity,files,spreed,forms",
        "app_install_overwrite": [
            "spreed",
            "call_summary_bot",
            "forms",
            "integration_openai",
            "onlyoffice",
            "notify_push",
            "quota_warning",
            "duplicatefinder"
        ]
    }
}
List of activated Apps
Enabled:
  - admin_audit: 2.0.0-dev.0
  - app_api: 35.0.0-dev.1
  - appstore: 2.0.0-dev.0
  - bruteforcesettings: 8.0.0-dev.0
  - call_summary_bot: 3.4.0
  - circles: 35.0.0-dev.0
  - cloud_federation_api: 2.0.0-dev.0
  - comments: 2.0.0-dev.0
  - contactsinteraction: 2.0.0-dev.0
  - dashboard: 8.0.0-dev.0
  - dav: 2.0.0-dev.0
  - duplicatefinder: 1.8.1
  - federatedfilesharing: 2.0.0-dev.1
  - federation: 2.0.0-dev.0
  - files: 3.0.0-dev.0
  - files_downloadlimit: 5.3.0-dev.0
  - files_external: 2.0.0-dev.0
  - files_lock: 35.0.0-dev.0
  - files_pdfviewer: 8.0.0-dev.0
  - files_reminders: 2.0.0-dev.0
  - files_sharing: 2.0.0-dev.1
  - files_trashbin: 2.0.0-dev.0
  - files_versions: 2.0.0-dev.0
  - firstrunwizard: 8.0.0-dev.0
  - forms: 5.3.2
  - integration_openai: 4.5.1
  - logreader: 8.0.0-dev.0
  - lookup_server_connector: 2.0.0-dev.0
  - nextcloud_announcements: 7.0.0-dev.0
  - notifications: 8.0.0-dev.0
  - notify_push: 1.3.3
  - oauth2: 2.0.0-dev.0
  - office: 1.0.0
  - onlyoffice: 10.1.2
  - privacy: 7.0.0-dev.0
  - profile: 2.0.0-dev.0
  - provisioning_api: 2.0.0-dev.0
  - quota_warning: 1.24.0
  - recommendations: 8.0.0-dev.0
  - related_resources: 6.0.0-dev.0
  - serverinfo: 7.0.0-dev.0
  - settings: 2.0.0-dev.0
  - sharebymail: 2.0.0-dev.0
  - sociallogin: 6.5.2
  - spreed: 24.0.2
  - support: 7.0.0-dev.0
  - survey_client: 7.0.0-dev.0
  - systemtags: 2.0.0-dev.0
  - text: 9.0.0-dev.0
  - theming: 3.0.0-dev.0
  - twofactor_backupcodes: 2.0.0-dev.0
  - twofactor_nextcloud_notification: 9.0.0-dev.0
  - twofactor_totp: 17.1.0
  - updatenotification: 2.0.0-dev.0
  - user_status: 2.0.0-dev.0
  - viewer: 8.0.0-dev.0
  - weather_status: 2.0.0-dev.0
  - webhook_listeners: 2.0.0-dev.0
  - workflowengine: 3.0.0-dev.0
Disabled:
  - activity: 8.0.0-dev.0 (installed 8.0.0-dev.0)
  - encryption: 3.0.0-dev.0
  - password_policy: 7.0.0-dev.0 (installed 1.18.0)
  - photos: 8.0.0-dev.0 (installed 8.0.0-dev.0)
  - suspicious_login: 13.0.0-dev.0
  - user_ldap: 2.0.0-dev.0 (installed 1.21.0)
Nextcloud Signing status
none
Nextcloud Logs
{"reqId":"HUFCXVoDWzVCNhEWJCXU","level":1,"time":"2026-07-11T23:57:06+00:00","remoteAddr":"x.x.x.x","user":"--","app":"no app in context","method":"GET","url":"/cron.php","scriptName":"/cron.php","message":"Unable to generate a URL for the named route \"files.view.index\" as such route does not exist.","userAgent":"curl/8.17.0","version":"35.0.0.1","exception":{"Exception":"Symfony\\Component\\Routing\\Exception\\RouteNotFoundException","Message":"Unable to generate a URL for the named route \"files.view.index\" as such route does not exist.","Code":0,"Trace":[{"file":"/var/www/html/lib/private/Route/Router.php","line":416,"function":"generate","class":"Symfony\\Component\\Routing\\Generator\\UrlGenerator","type":"->"},{"file":"/var/www/html/lib/private/URLGenerator.php","line":67,"function":"generate","class":"OC\\Route\\Router","type":"->"},{"file":"/var/www/html/lib/private/NavigationManager.php","line":254,"function":"linkToRoute","class":"OC\\URLGenerator","type":"->"},{"file":"/var/www/html/lib/private/NavigationManager.php","line":362,"function":"resolveAppNavigationEntries","class":"OC\\NavigationManager","type":"->"},{"file":"/var/www/html/lib/private/NavigationManager.php","line":322,"function":"getDefaultEntryIds","class":"OC\\NavigationManager","type":"->"},{"file":"/var/www/html/lib/private/NavigationManager.php","line":94,"function":"getDefaultEntryIdForUser","class":"OC\\NavigationManager","type":"->"},{"file":"/var/www/html/lib/private/NavigationManager.php","line":90,"function":"updateDefaultEntries","class":"OC\\NavigationManager","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/html/lib/private/NavigationManager.php","line":277,"function":"add","class":"OC\\NavigationManager","type":"->"},{"file":"/var/www/html/lib/private/NavigationManager.php","line":104,"function":"resolveAppNavigationEntries","class":"OC\\NavigationManager","type":"->"},{"file":"/var/www/html/apps/theming/lib/ThemingDefaults.php","line":153,"function":"getAll","class":"OC\\NavigationManager","type":"->"},{"file":"/var/www/html/lib/private/legacy/OC_Defaults.php","line":248,"function":"getShortFooter","class":"OCA\\Theming\\ThemingDefaults","type":"->"},{"file":"/var/www/html/lib/public/Defaults.php","line":153,"function":"getLongFooter","class":"OC_Defaults","type":"->"},{"file":"/var/www/html/core/templates/layout.guest.php","line":61,"function":"getLongFooter","class":"OCP\\Defaults","type":"->"},{"file":"/var/www/html/lib/private/Template/Base.php","line":133,"args":["/var/www/html/core/templates/layout.guest.php"],"function":"include"},{"file":"/var/www/html/lib/private/Template/Base.php","line":106,"function":"load","class":"OC\\Template\\Base","type":"->"},{"file":"/var/www/html/lib/private/Template/Template.php","line":113,"function":"fetchPage","class":"OC\\Template\\Base","type":"->"},{"file":"/var/www/html/lib/private/Template/Template.php","line":143,"function":"fetchPage","class":"OC\\Template\\Template","type":"->"},{"file":"/var/www/html/lib/private/Template/Base.php","line":96,"function":"fetchPage","class":"OC\\Template\\Template","type":"->"},{"file":"/var/www/html/lib/private/Template/TemplateManager.php","line":52,"function":"printPage","class":"OC\\Template\\Base","type":"->"},{"file":"/var/www/html/lib/OC.php","line":821,"function":"printGuestPage","class":"OC\\Template\\TemplateManager","type":"->"},{"file":"/var/www/html/lib/base.php","line":12,"function":"init","class":"OC","type":"::"},{"file":"/var/www/html/cron.php","line":18,"args":["/var/www/html/lib/base.php"],"function":"require_once"}],"File":"/var/www/html/3rdparty/symfony/routing/Generator/UrlGenerator.php","Line":134,"message":"Unable to generate a URL for the named route \"files.view.index\" as such route does not exist.","exception":"{\"class\":\"Symfony\\Component\\Routing\\Exception\\RouteNotFoundException\",\"message\":\"Unable to generate a URL for the named route \\\"files.view.index\\\" as such route does not exist.\",\"code\":0,\"file\":\"/var/www/html/3rdparty/symfony/routing/Generator/UrlGenerator.php:134\",\"trace\":\"#0 /var/www/html/lib/private/Route/Router.php(416): Symfony\\Component\\Routing\\Generator\\UrlGenerator->generate()\\n#1 /var/www/html/lib/private/URLGenerator.php(67): OC\\Route\\Router->generate()\\n#2 /var/www/html/lib/private/NavigationManager.php(254): OC\\URLGenerator->linkToRoute()\\n#3 /var/www/html/lib/private/NavigationManager.php(362): OC\\NavigationManager->resolveAppNavigationEntries()\\n#4 /var/www/html/lib/private/NavigationManager.php(322): OC\\NavigationManager->getDefaultEntryIds()\\n#5 /var/www/html/lib/private/NavigationManager.php(94): OC\\NavigationManager->getDefaultEntryIdForUser()\\n#6 /var/www/html/lib/private/NavigationManager.php(90): OC\\NavigationManager->updateDefaultEntries()\\n#7 /var/www/html/lib/private/NavigationManager.php(277): OC\\NavigationManager->add()\\n#8 /var/www/html/lib/private/NavigationManager.php(104): OC\\NavigationManager->resolveAppNavigationEntries()\\n#9 /var/www/html/apps/theming/lib/ThemingDefaults.php(153): OC\\NavigationManager->getAll()\\n#10 /var/www/html/lib/private/legacy/OC_Defaults.php(248): OCA\\Theming\\ThemingDefaults->getShortFooter()\\n#11 /var/www/html/lib/public/Defaults.php(153): OC_Defaults->getLongFooter()\\n#12 /var/www/html/core/templates/layout.guest.php(61): OCP\\Defaults->getLongFooter()\\n#13 /var/www/html/lib/private/Template/Base.php(133): include('...')\\n#14 /var/www/html/lib/private/Template/Base.php(106): OC\\Template\\Base->load()\\n#15 /var/www/html/lib/private/Template/Template.php(113): OC\\Template\\Base->fetchPage()\\n#16 /var/www/html/lib/private/Template/Template.php(143): OC\\Template\\Template->fetchPage()\\n#17 /var/www/html/lib/private/Template/Base.php(96): OC\\Template\\Template->fetchPage()\\n#18 /var/www/html/lib/private/Template/TemplateManager.php(52): OC\\Template\\Base->printPage()\\n#19 /var/www/html/lib/OC.php(821): OC\\Template\\TemplateManager->printGuestPage()\\n#20 /var/www/html/lib/base.php(12): OC::init()\\n#21 /var/www/html/cron.php(18): require_once('...')\\n#22 {main}\"}","CustomMessage":"Unable to generate a URL for the named route \"files.view.index\" as such route does not exist."}}
{"reqId":"HUFCXVoDWzVCNhEWJCXU","level":0,"time":"2026-07-11T23:57:06+00:00","remoteAddr":"x.x.x.x","user":"--","app":"no app in context","method":"GET","url":"/cron.php","scriptName":"/cron.php","message":"Missing or invalid navigation route for app files","userAgent":"curl/8.17.0","version":"35.0.0.1","data":{"entry":"{\"name\":\"Files\",\"route\":\"files.view.index\",\"order\":\"0\",\"type\":\"link\"}"}}
{"reqId":"HUFCXVoDWzVCNhEWJCXU","level":1,"time":"2026-07-11T23:57:06+00:00","remoteAddr":"x.x.x.x","user":"--","app":"no app in context","method":"GET","url":"/cron.php","scriptName":"/cron.php","message":"Unable to generate a URL for the named route \"duplicatefinder.page.index\" as such route does not exist.","userAgent":"curl/8.17.0","version":"35.0.0.1","exception":{"Exception":"Symfony\\Component\\Routing\\Exception\\RouteNotFoundException","Message":"Unable to generate a URL for the named route \"duplicatefinder.page.index\" as such route does not exist.","Code":0,"Trace":[{"file":"/var/www/html/lib/private/Route/Router.php","line":416,"function":"generate","class":"Symfony\\Component\\Routing\\Generator\\UrlGenerator","type":"->"},{"file":"/var/www/html/lib/private/URLGenerator.php","line":67,"function":"generate","class":"OC\\Route\\Router","type":"->"},{"file":"/var/www/html/lib/private/NavigationManager.php","line":254,"function":"linkToRoute","class":"OC\\URLGenerator","type":"->"},{"file":"/var/www/html/lib/private/NavigationManager.php","line":104,"function":"resolveAppNavigationEntries","class":"OC\\NavigationManager","type":"->"},{"file":"/var/www/html/apps/theming/lib/ThemingDefaults.php","line":153,"function":"getAll","class":"OC\\NavigationManager","type":"->"},{"file":"/var/www/html/lib/private/legacy/OC_Defaults.php","line":248,"function":"getShortFooter","class":"OCA\\Theming\\ThemingDefaults","type":"->"},{"file":"/var/www/html/lib/public/Defaults.php","line":153,"function":"getLongFooter","class":"OC_Defaults","type":"->"},{"file":"/var/www/html/core/templates/layout.guest.php","line":61,"function":"getLongFooter","class":"OCP\\Defaults","type":"->"},{"file":"/var/www/html/lib/private/Template/Base.php","line":133,"args":["/var/www/html/core/templates/layout.guest.php"],"function":"include"},{"file":"/var/www/html/lib/private/Template/Base.php","line":106,"function":"load","class":"OC\\Template\\Base","type":"->"},{"file":"/var/www/html/lib/private/Template/Template.php","line":113,"function":"fetchPage","class":"OC\\Template\\Base","type":"->"},{"file":"/var/www/html/lib/private/Template/Template.php","line":143,"function":"fetchPage","class":"OC\\Template\\Template","type":"->"},{"file":"/var/www/html/lib/private/Template/Base.php","line":96,"function":"fetchPage","class":"OC\\Template\\Template","type":"->"},{"file":"/var/www/html/lib/private/Template/TemplateManager.php","line":52,"function":"printPage","class":"OC\\Template\\Base","type":"->"},{"file":"/var/www/html/lib/OC.php","line":821,"function":"printGuestPage","class":"OC\\Template\\TemplateManager","type":"->"},{"file":"/var/www/html/lib/base.php","line":12,"function":"init","class":"OC","type":"::"},{"file":"/var/www/html/cron.php","line":18,"args":["/var/www/html/lib/base.php"],"function":"require_once"}],"File":"/var/www/html/3rdparty/symfony/routing/Generator/UrlGenerator.php","Line":134,"message":"Unable to generate a URL for the named route \"duplicatefinder.page.index\" as such route does not exist.","exception":"{\"class\":\"Symfony\\Component\\Routing\\Exception\\RouteNotFoundException\",\"message\":\"Unable to generate a URL for the named route \\\"duplicatefinder.page.index\\\" as such route does not exist.\",\"code\":0,\"file\":\"/var/www/html/3rdparty/symfony/routing/Generator/UrlGenerator.php:134\",\"trace\":\"#0 /var/www/html/lib/private/Route/Router.php(416): Symfony\\Component\\Routing\\Generator\\UrlGenerator->generate()\\n#1 /var/www/html/lib/private/URLGenerator.php(67): OC\\Route\\Router->generate()\\n#2 /var/www/html/lib/private/NavigationManager.php(254): OC\\URLGenerator->linkToRoute()\\n#3 /var/www/html/lib/private/NavigationManager.php(104): OC\\NavigationManager->resolveAppNavigationEntries()\\n#4 /var/www/html/apps/theming/lib/ThemingDefaults.php(153): OC\\NavigationManager->getAll()\\n#5 /var/www/html/lib/private/legacy/OC_Defaults.php(248): OCA\\Theming\\ThemingDefaults->getShortFooter()\\n#6 /var/www/html/lib/public/Defaults.php(153): OC_Defaults->getLongFooter()\\n#7 /var/www/html/core/templates/layout.guest.php(61): OCP\\Defaults->getLongFooter()\\n#8 /var/www/html/lib/private/Template/Base.php(133): include('...')\\n#9 /var/www/html/lib/private/Template/Base.php(106): OC\\Template\\Base->load()\\n#10 /var/www/html/lib/private/Template/Template.php(113): OC\\Template\\Base->fetchPage()\\n#11 /var/www/html/lib/private/Template/Template.php(143): OC\\Template\\Template->fetchPage()\\n#12 /var/www/html/lib/private/Template/Base.php(96): OC\\Template\\Template->fetchPage()\\n#13 /var/www/html/lib/private/Template/TemplateManager.php(52): OC\\Template\\Base->printPage()\\n#14 /var/www/html/lib/OC.php(821): OC\\Template\\TemplateManager->printGuestPage()\\n#15 /var/www/html/lib/base.php(12): OC::init()\\n#16 /var/www/html/cron.php(18): require_once('...')\\n#17 {main}\"}","CustomMessage":"Unable to generate a URL for the named route \"duplicatefinder.page.index\" as such route does not exist."}}
{"reqId":"HUFCXVoDWzVCNhEWJCXU","level":0,"time":"2026-07-11T23:57:06+00:00","remoteAddr":"x.x.x.x","user":"--","app":"no app in context","method":"GET","url":"/cron.php","scriptName":"/cron.php","message":"Missing or invalid navigation route for app duplicatefinder","userAgent":"curl/8.17.0","version":"35.0.0.1","data":{"entry":"{\"name\":\"Duplicate Finder\",\"route\":\"duplicatefinder.page.index\",\"type\":\"link\"}"}}
{"reqId":"HUFCXVoDWzVCNhEWJCXU","level":1,"time":"2026-07-11T23:57:06+00:00","remoteAddr":"x.x.x.x","user":"--","app":"no app in context","method":"GET","url":"/cron.php","scriptName":"/cron.php","message":"Unable to generate a URL for the named route \"files.view.index\" as such route does not exist.","userAgent":"curl/8.17.0","version":"35.0.0.1","exception":{"Exception":"Symfony\\Component\\Routing\\Exception\\RouteNotFoundException","Message":"Unable to generate a URL for the named route \"files.view.index\" as such route does not exist.","Code":0,"Trace":[{"file":"/var/www/html/lib/private/Route/Router.php","line":416,"function":"generate","class":"Symfony\\Component\\Routing\\Generator\\UrlGenerator","type":"->"},{"file":"/var/www/html/lib/private/URLGenerator.php","line":67,"function":"generate","class":"OC\\Route\\Router","type":"->"},{"file":"/var/www/html/lib/private/NavigationManager.php","line":254,"function":"linkToRoute","class":"OC\\URLGenerator","type":"->"},{"file":"/var/www/html/lib/private/NavigationManager.php","line":104,"function":"resolveAppNavigationEntries","class":"OC\\NavigationManager","type":"->"},{"file":"/var/www/html/apps/theming/lib/ThemingDefaults.php","line":153,"function":"getAll","class":"OC\\NavigationManager","type":"->"},{"file":"/var/www/html/lib/private/legacy/OC_Defaults.php","line":248,"function":"getShortFooter","class":"OCA\\Theming\\ThemingDefaults","type":"->"},{"file":"/var/www/html/lib/public/Defaults.php","line":153,"function":"getLongFooter","class":"OC_Defaults","type":"->"},{"file":"/var/www/html/core/templates/layout.guest.php","line":61,"function":"getLongFooter","class":"OCP\\Defaults","type":"->"},{"file":"/var/www/html/lib/private/Template/Base.php","line":133,"args":["/var/www/html/core/templates/layout.guest.php"],"function":"include"},{"file":"/var/www/html/lib/private/Template/Base.php","line":106,"function":"load","class":"OC\\Template\\Base","type":"->"},{"file":"/var/www/html/lib/private/Template/Template.php","line":113,"function":"fetchPage","class":"OC\\Template\\Base","type":"->"},{"file":"/var/www/html/lib/private/Template/Template.php","line":143,"function":"fetchPage","class":"OC\\Template\\Template","type":"->"},{"file":"/var/www/html/lib/private/Template/Base.php","line":96,"function":"fetchPage","class":"OC\\Template\\Template","type":"->"},{"file":"/var/www/html/lib/private/Template/TemplateManager.php","line":52,"function":"printPage","class":"OC\\Template\\Base","type":"->"},{"file":"/var/www/html/lib/OC.php","line":821,"function":"printGuestPage","class":"OC\\Template\\TemplateManager","type":"->"},{"file":"/var/www/html/lib/base.php","line":12,"function":"init","class":"OC","type":"::"},{"file":"/var/www/html/cron.php","line":18,"args":["/var/www/html/lib/base.php"],"function":"require_once"}],"File":"/var/www/html/3rdparty/symfony/routing/Generator/UrlGenerator.php","Line":134,"message":"Unable to generate a URL for the named route \"files.view.index\" as such route does not exist.","exception":"{\"class\":\"Symfony\\Component\\Routing\\Exception\\RouteNotFoundException\",\"message\":\"Unable to generate a URL for the named route \\\"files.view.index\\\" as such route does not exist.\",\"code\":0,\"file\":\"/var/www/html/3rdparty/symfony/routing/Generator/UrlGenerator.php:134\",\"trace\":\"#0 /var/www/html/lib/private/Route/Router.php(416): Symfony\\Component\\Routing\\Generator\\UrlGenerator->generate()\\n#1 /var/www/html/lib/private/URLGenerator.php(67): OC\\Route\\Router->generate()\\n#2 /var/www/html/lib/private/NavigationManager.php(254): OC\\URLGenerator->linkToRoute()\\n#3 /var/www/html/lib/private/NavigationManager.php(104): OC\\NavigationManager->resolveAppNavigationEntries()\\n#4 /var/www/html/apps/theming/lib/ThemingDefaults.php(153): OC\\NavigationManager->getAll()\\n#5 /var/www/html/lib/private/legacy/OC_Defaults.php(248): OCA\\Theming\\ThemingDefaults->getShortFooter()\\n#6 /var/www/html/lib/public/Defaults.php(153): OC_Defaults->getLongFooter()\\n#7 /var/www/html/core/templates/layout.guest.php(61): OCP\\Defaults->getLongFooter()\\n#8 /var/www/html/lib/private/Template/Base.php(133): include('...')\\n#9 /var/www/html/lib/private/Template/Base.php(106): OC\\Template\\Base->load()\\n#10 /var/www/html/lib/private/Template/Template.php(113): OC\\Template\\Base->fetchPage()\\n#11 /var/www/html/lib/private/Template/Template.php(143): OC\\Template\\Template->fetchPage()\\n#12 /var/www/html/lib/private/Template/Base.php(96): OC\\Template\\Template->fetchPage()\\n#13 /var/www/html/lib/private/Template/TemplateManager.php(52): OC\\Template\\Base->printPage()\\n#14 /var/www/html/lib/OC.php(821): OC\\Template\\TemplateManager->printGuestPage()\\n#15 /var/www/html/lib/base.php(12): OC::init()\\n#16 /var/www/html/cron.php(18): require_once('...')\\n#17 {main}\"}","CustomMessage":"Unable to generate a URL for the named route \"files.view.index\" as such route does not exist."}}
{"reqId":"HUFCXVoDWzVCNhEWJCXU","level":0,"time":"2026-07-11T23:57:06+00:00","remoteAddr":"x.x.x.x","user":"--","app":"no app in context","method":"GET","url":"/cron.php","scriptName":"/cron.php","message":"Missing or invalid navigation route for app files","userAgent":"curl/8.17.0","version":"35.0.0.1","data":{"entry":"{\"name\":\"Files\",\"route\":\"files.view.index\",\"order\":\"0\",\"type\":\"link\"}"}}
Additional info

none

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the logged trace at lib/private/NavigationManager.php:254 and follow the route-generation path through lib/private/URLGenerator.php and lib/private/Route/Router.php. Check how apps/theming/lib/ThemingDefaults.php reaches the missing files.view.index route when the locale is set to zh_CN. Done means reproducing the locale-setting failure and no longer encountering this RouteNotFoundException.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
backend, localization
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.