The panel cannot be installed


i inserted

‘panel’ => true

in /site/config/config.php, but still get a " The panel cannot be installed" message, what i am doing wrong ?

return [
‘debug’ => true,
‘panel’ => true,

Are you trying to install locally or on a remote server? panel: true is the default anyway.

On a public server, you have to set the panel.install config option to true.


thanks, this was the problem. Was on a remote server.

Now its up an running.

Hey Where exactly I should put that? I’m working on a sub folder on my own domain and when I’m trying to access the panel I get

The panel installer is disabled on public servers by default. Please run the installer on a local machine or enable it with the panel.install option.

Thanks a lot.

In your /site/config/config.php:

I have this problem and the solution is not working. I am new at this. Shared hosting, and I cannot get to the panel even after adding this code to the file as it says above. Assume “public server” means shared hosting? No problems with any other sites (running other CMS) on this shared hosting. So what am I missing here? The shared hosting directory structure is such that the domain for Kirby is an addon. Perhaps I am missing something with that? Thanks!

Hey @sheri_g,

Do other subpages of the site work? What is the error message you get? Have you deployed the .htaccess file as well? Files with dots are hidden by default.

No, public server means anything that is not a local development environment. It can be shared hosting or a dedicated server or a VPS or whatever.

What do that mean?

It is a subdomain on my server space up on the shared hosting. I just cannot get this to work. Thanks!

Ok, thanks, but what about the other question I asked above.

So sorry! Too many windows open! Anyway, yes the main default site from the Starter Kit shows, if that is what you mean? There IS an htaccess file up there too, I see. I have not done anything but try to follow the installation of Kirby instructions under “Quickstart” and right away at the final step of that Quickstart I got the error showing above (same as the original poster of this thread).

  1. Download Kirby’s Starterkit
  2. Extract the ZIP file in your server’s web root
  3. Visit your new Kirby site in your browser at
  4. Visit the Panel at <-----this is where I got the error above

What exactly have you put into your config.php? Please post complete config file.


return [
    'debug' => true,
return [
  'panel' =>[
    'install' => true

I just added that code from the answer above. Hope it shows here.

Needs to be


return [
    'debug' => true,
    'panel' =>[
      'install' => true

Never use multiple return statements, everything after the first will be ignored.

AH! I am so sorry! Like I said, very new at this. Thank you so much for your help, and patience.

I do have the same issue. New to Kirby, and I followed the instructions, created a config.php file in the /site folder, still getting an error message saying " The panel cannot be installed * The panel installer is disabled on public servers by default. Please run the installer on a local machine or enable it with the panel.install option.

I copied the code from above, but still get the same message. I installed Kirby on a subdomain (

Would love to get this up and running and learn to create a site with Kirby.

@pumpkin The config.php files goes into /site/config/config.php.

1 Like

Thanks so much, that did the trick :slight_smile:

Sorry to re-open this subject. Hope it’s ok rather that creating a similar one.

I have created a subdomain so I can configure a site on remote server.
I figured out how to edit my htaccess file for subdomains. Front end is working fine.

I can’t access to the panel since it seems protected before any account has been created locally.
I enabled the panel.install option in my config.php file copying this code

'debug' => false,
'panel' =>[
  'install' => true

It appears it provokes an Error 500 on the rest of the site. I can still access my home page but all internal links are broke.

Anything I got wrong in my htaccess file ?

# Kirby .htaccess
<IfModule mod_headers.c>
  Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"

# rewrite rules
<IfModule mod_rewrite.c>

# enable awesome urls. i.e.:
RewriteEngine on

# Bust browsercache on CSS & JS files
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)\.(\d+)\.(js|css)$ $1.$3 [L]

# RewriteCond %{HTTP_HOST} !=localhost
# RewriteCond %{HTTP_HOST} ^www\. [NC,OR]
# RewriteCond %{HTTPS} off
# RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
# RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L,NE]

# 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
# Set the RewriteBase to:
# RewriteBase /mysite

# In some enviroments 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]


Thanks :slight_smile:

Currrently, when visiting /panel, I still get the The panel cannot be installed message, so it seems you have removed the config option again?

Indeed. I put it back so you can see.