Problems with multi-languages and incremental updates

When using 2 languages, my site works when I first copy the whole setup to the live server.
When I then translate one of the pages, it still works on my local copy. But after an incremental update to the live-site I strange errors, such as

Kirby\Exception\Exception thrown with message "The file "/home/.sites/83/site2691/web/myHome/content/1_home/home.de.txt" does not exist or cannot be read"

Stacktrace:
#44 Kirby\Exception\Exception in /home/.sites/83/site2691/web/myHome/kirby/src/Data/Handler.php:41
#43 Kirby\Data\Handler:read in /home/.sites/83/site2691/web/myHome/kirby/src/Data/Data.php:101
#42 Kirby\Data\Data:read in /home/.sites/83/site2691/web/myHome/kirby/src/Content/PlainTextContentStorageHandler.php:128
#41 Kirby\Content\PlainTextContentStorageHandler:read in /home/.sites/83/site2691/web/myHome/kirby/src/Content/ContentStorage.php:217
#40 Kirby\Content\ContentStorage:read in /home/.sites/83/site2691/web/myHome/kirby/src/Cms/ModelWithContent.php:497
#39 Kirby\Cms\ModelWithContent:readContent in /home/.sites/83/site2691/web/myHome/kirby/src/Content/ContentTranslation.php:67
#38 Kirby\Content\ContentTranslation:content in /home/.sites/83/site2691/web/myHome/kirby/src/Cms/ModelWithContent.php:157
#37 Kirby\Cms\ModelWithContent:content in /home/.sites/83/site2691/web/myHome/kirby/src/Cms/Page.php:167
#36 Kirby\Cms\Page:__call in /home/.sites/83/site2691/web/myHome/site/plugins/zero-one/snippets/header/head/title.php:3
#35 include in /home/.sites/83/site2691/web/myHome/kirby/src/Filesystem/F.php:425
#34 Kirby\Filesystem\F:loadIsolated in /home/.sites/83/site2691/web/myHome/kirby/src/Filesystem/F.php:364
#33 Kirby\Filesystem\F:Kirby\Filesystem\{closure} in /home/.sites/83/site2691/web/myHome/kirby/src/Filesystem/F.php:372
#32 Kirby\Filesystem\F:load in /home/.sites/83/site2691/web/myHome/kirby/src/Toolkit/Tpl.php:36
#31 Kirby\Toolkit\Tpl:load in /home/.sites/83/site2691/web/myHome/kirby/src/Template/Snippet.php:173
#30 Kirby\Template\Snippet:factory in /home/.sites/83/site2691/web/myHome/kirby/config/components.php:309
#29 Kirby\Cms\Core:{closure} in /home/.sites/83/site2691/web/myHome/kirby/src/Cms/App.php:1590
#28 Kirby\Cms\App:snippet in /home/.sites/83/site2691/web/myHome/kirby/config/helpers.php:533
#27 snippet in /home/.sites/83/site2691/web/myHome/site/plugins/zero-one/snippets/header/head.php:32
#26 include in /home/.sites/83/site2691/web/myHome/kirby/src/Filesystem/F.php:425
#25 Kirby\Filesystem\F:loadIsolated in /home/.sites/83/site2691/web/myHome/kirby/src/Filesystem/F.php:364
#24 Kirby\Filesystem\F:Kirby\Filesystem\{closure} in /home/.sites/83/site2691/web/myHome/kirby/src/Filesystem/F.php:372
#23 Kirby\Filesystem\F:load in /home/.sites/83/site2691/web/myHome/kirby/src/Toolkit/Tpl.php:36
#22 Kirby\Toolkit\Tpl:load in /home/.sites/83/site2691/web/myHome/kirby/src/Template/Snippet.php:173
#21 Kirby\Template\Snippet:factory in /home/.sites/83/site2691/web/myHome/kirby/config/components.php:309
#20 Kirby\Cms\Core:{closure} in /home/.sites/83/site2691/web/myHome/kirby/src/Cms/App.php:1590
#19 Kirby\Cms\App:snippet in /home/.sites/83/site2691/web/myHome/kirby/config/helpers.php:533
#18 snippet in /home/.sites/83/site2691/web/myHome/site/plugins/zero-one/snippets/header.php:8
#17 include in /home/.sites/83/site2691/web/myHome/kirby/src/Filesystem/F.php:425
#16 Kirby\Filesystem\F:loadIsolated in /home/.sites/83/site2691/web/myHome/kirby/src/Filesystem/F.php:364
#15 Kirby\Filesystem\F:Kirby\Filesystem\{closure} in /home/.sites/83/site2691/web/myHome/kirby/src/Filesystem/F.php:372
#14 Kirby\Filesystem\F:load in /home/.sites/83/site2691/web/myHome/kirby/src/Toolkit/Tpl.php:36
#13 Kirby\Toolkit\Tpl:load in /home/.sites/83/site2691/web/myHome/kirby/src/Template/Snippet.php:173
#12 Kirby\Template\Snippet:factory in /home/.sites/83/site2691/web/myHome/kirby/config/components.php:309
#11 Kirby\Cms\Core:{closure} in /home/.sites/83/site2691/web/myHome/kirby/src/Cms/App.php:1590
#10 Kirby\Cms\App:snippet in /home/.sites/83/site2691/web/myHome/kirby/config/helpers.php:533
#9 snippet in /home/.sites/83/site2691/web/myHome/site/plugins/zero-one/templates/home.php:1
#8 include in /home/.sites/83/site2691/web/myHome/kirby/src/Filesystem/F.php:425
#7 Kirby\Filesystem\F:loadIsolated in /home/.sites/83/site2691/web/myHome/kirby/src/Filesystem/F.php:364
#6 Kirby\Filesystem\F:Kirby\Filesystem\{closure} in /home/.sites/83/site2691/web/myHome/kirby/src/Filesystem/F.php:372
#5 Kirby\Filesystem\F:load in /home/.sites/83/site2691/web/myHome/kirby/src/Toolkit/Tpl.php:36
#4 Kirby\Toolkit\Tpl:load in /home/.sites/83/site2691/web/myHome/kirby/src/Template/Template.php:163
#3 Kirby\Template\Template:render in /home/.sites/83/site2691/web/myHome/kirby/src/Cms/Page.php:1021
#2 Kirby\Cms\Page:render in /home/.sites/83/site2691/web/myHome/kirby/src/Cms/App.php:794
#1 Kirby\Cms\App:io in /home/.sites/83/site2691/web/myHome/kirby/src/Cms/App.php:1201
#0 Kirby\Cms\App:render in /home/.sites/83/site2691/web/myHome/index.php:17

My question: where do I find the folder /home/.sites/83/... on the live server? And what could lead to such an error?

I guess myHome is your doc root, so from there in /content/1_home. No idea what is causing this, how do you deploy those incremental changes? Make sure that the files have the correct file permissions and ownership.

What’s the default language, German?

First of all, I am really impressed by the speed of the feedback. Thank you VERY MUCH!

  • You are correct, myHome is my doc root. What I don’t understand is the prefix home/.sites/83/...
  • My incremental updates are done with the Software “syncback” from “2brightsparks”
  • My default language is English

That’s the absolute path on your shared hosting, and you can ignore it.

If English is your default language, then the translation shouldn’t be required. Check if the file permissions are different for that file from the other files.

Never heard of that…

Hm, I have tried to narrow the problem down. Currently, this looks like a bug to me:

  • It seems to happen only with relative pages that are down more than one level.
  • Kirby generates a relative link, which does not work:
    https://home.thaslwanter.at/@/page/jSSbihgpa0fHXKQt
  • When I put in the name of the link directly, it works:
    Zeit zum Atmen | Thomas Haslwanter
  • One level up, the same problem happens at first(that first an internal link gets generated and not found). But after putting the “real” page in (here Thoughts | Thomas Haslwanter ), the page afterwards works. The same does NOT happen one level down (with the links shown above). In other words, even after putting in the direct link once, the page does not get found when I click the (internal) link in the hosted page afterwards.
  • Also enabling Kirby-Debug does not provide any additional information. I only get the default Error page.

A few points that probably don’t contribute, but might be worth mentioning:

  • I have upgraded to Kirby 4.8, but it has made no difference.
  • The “translation” only comes in because I use two languages, English and German. (You can try this out / see this on the root page, which always works: https://thaslwanter.at )
  • I managed to eliminate some problems by deleting the site/cache and the media folder after copying the site to the live server
  • syncback is a synchronization software, which I really like: SyncBackPro: The Ultimate Backup Software for Windows

PS: I am pretty sure that is the same problem as the one reported in the related post (the solution suggested there, i.e. using “custom” links, does not work here because the page is supposed to appear in two different languages):

and in

I have a problem following your findings, in particular, I’m missing the context. So is this about adding links in fields that do not work? Which type of fields? And if so, how do you render those fields in the template/snippet?

I have solved the problem. But since I wonder if it might really be a bug, I try to describe it once more:

  • The problem occurs when using relative “Page” links in the Writer.
  • (on my computer) relative links work locally, but no on (my) live server.
  • The problem can be solved, by using “Custom” links insted of “Page” links, and giving the whole path relative to the root directory. For example, my homepage is https://home.thaslwanter.at. I can always refer to the pagehttps://home.thaslwanter.at/level_1/level_2/level_3 with a Writer-“Custom” link /level_1/level_2/level_3. But what does not work for me is when I am in /level_1/level_2, and I refer to “Page” level_3. That relative link crashes on the hosted page.
  • My default language is English. When I refer to the German subpage at level_3, I use the “Custom” link /de/level_1/level_2/level_3.
  • A remaining problem could occur, if I would move e.g. level_2/level_3 to a different directory. In that case I would have to manually re-code the links.

I hope this clarifies the problem, and my solution. Again, I want to express my gratitude for the quick responce by texnixe. You are wonderful!