Kirby is not working properly on server

the $pages object works, but the fields from the .txt files won’t get displayed on the server, but everything works fine with xampp.
the provider said, all requirements are met:

"ja das wird alles bereits per default unterstützt.

Es ist ein Apache 2.4 mit mod_rewrite und bei PHP sind die genannten Module auch aktiv.

Ich habe eher das Gefühl, dass ein rewrite nicht richtig arbeitet, aber dafür kenne ich mich auch zu wenig mit Kirby selbst aus."

how can i start to solve the problem?

thanks in advance

Hi @mauriz, welcome to the forum! :wave:

Is the site currently online so we can take a look at it? If so, please post the URL. If you don’t want the URL to be public yet, feel free to send me a direct message. :slight_smile:


To be honest it doesn’t look like a mod_rewrite problem as other pages like the Impressum are served correctly. It also looks like the content is there, only hidden in the accordions. There’s nothing in my browser dev console either, so it looks like all resources are loaded.

Have you compared the generated HTML with the one you get locally? Maybe this helps to track down where the issue comes from.

To me it looks as if there was some content missing, because some accordions have a headline and open with content (Cake, Brownie, Muffin, Cookie) and the others don’t.

Hey @texnixe, hey @lukasbestle
the cake, brownie etc. categories are hard coded in the html, at the moment.

it is supposed to like the screenshot on the right. here works xampp in the background.
on the left is the screenshot from my server :frowning:

the function that is supposed to get the content from the text fields looks like the following:

<?php function dailyMenuGeneration($pages, $categoryName){
foreach($pages->listed() as $pageContent):
if($categoryName == $pageContent->category()){
<div class="$category">
    <div class="spacing headline<?php $pageContent?>">
        <h1><?= $pageContent->headline() ?></h1>
        <h4><?= $pageContent->subtext() ?></h4>
        foreach($pageContent->children() as $item):?>
          <p class="itemDescription"><?= $item->description(),$item->price(); ?></p>
<?php endforeach; ?>

<?php } 
endforeach; }?>

i just figured out how to solve this.
my server is not displaying camelCase.txt files for some reason.


is there anything i can tell my provider to change these settings?

lg mauriz

We strongly discourage using camelCase for filenames.

In addition to what Sonja wrote: The issue very likely won’t be about camelCase specifically, but about case sensitivity. Linux file systems are case-sensitive by default, i.e. test.txt is a different file as Test.txt. In contrast, Windows and macOS use case-insensitive file names by default.

If you use file names with uppercase characters, you need to make sure that you use them consistently. Otherwise it will work on case-insensitive file systems but break as soon as you use a case-sensitive one like on a Linux server.

To avoid having to think about it all the time, a simple rule for file naming can help. The simplest is “always use lowercase file names”, which is where the recommendation to avoid camelCase all together comes from. :slight_smile: