Files field empty after refresh

My problem refers closely to this:

Fields randomly not saving, random logouts…

If you randomly can’t save pages, are randomly logged out or cannot log out without refreshing the browser, try disabling your browser’s cache.

In my case one files field on a specific page and domain is empty after refreshing the panel page. Every time I upload a new file, or assign it, the filed goes back to blank after refresh.
It seems to happen after one person changes the field on his specific computer / browser.

I tried:

  • delete ‘cache’ folder
  • delete ‘sessions’ folder
  • delete browser cache

What can be the solution?

This is the .httacces, thought it might be the reason?


RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]


Header set Cache-Control "no-cache, private"
# Kirby .htaccess

# rewrite rules
<IfModule mod_rewrite.c>

# enable awesome urls. i.e.:
# http://yourdomain.com/about-us/team
RewriteEngine on

# make sure to set the RewriteBase correctly
# if you are running the site in a subfolder.
# Otherwise links or the entire site will break.
#
# If your homepage is http://yourdomain.com/mysite
# Set the RewriteBase to:
#
# RewriteBase /mysite

# In some environments it's necessary to
# set the RewriteBase to:
#
# RewriteBase /

# block files and folders beginning with a dot, such as .git
# except for the .well-known folder, which is used for Let's Encrypt and security.txt
RewriteRule (^|/)\.(?!well-known\/) index.php [L]

# block text files in the content folder from being accessed directly
RewriteRule ^content/(.*)\.(txt|md|mdown)$ index.php [L]

# block all files in the site folder from being accessed directly
# except for requests to plugin assets files
RewriteRule ^site/(.*) index.php [L]

# Enable authentication header
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

# block direct access to kirby and the panel sources
RewriteRule ^kirby/(.*) index.php [L]

# make site links work
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php [L]

</IfModule>

# compress text file responses
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE application/json
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
</IfModule>

Header add "Cache-Control" "no-cache"

To understand what is happening here, could you please provide more information?

  • Does this only happen with this particular field? So all other fields are updated correctly and the information is still there after refreshing the page in the Panel?
  • When you check the content file while updating the field, can you see that anything is saved to that file?
  • Are you experiencing this on your local machine or on a remote server?
  • Does this only affect one particular page type or multiple?
  • Does this only happen with this particular field? So all other fields are updated correctly and the information is still there after refreshing the page in the Panel?

Yes exactly

  • When you check the content file while updating the field, can you see that anything is saved to that file?

Yes it saves the chosen or uploaded file. After refresh it is gone.

  • Are you experiencing this on your local machine or on a remote server?
    a remote server
  • Does this only affect one particular page type or multiple?

It happens only to the home template. I changed to a template with the same blueprint, and there it works fine. Even on a site with the same assets and site folder it workes fine. It seems te be related to the server.

This is weird, because if it was caching related, I would expect this to happen with any field and not just the files field and not only a particular page. Also, as you say, the file is actually stored in the content file but then deleted again?

It is also weird that it works with a different template. If it is a server issue, then I have no idea what could be the issue.