So, I have installed Kirby on a subdomain, it was working before, but I had to change my server and now the panel is not working anymore (but it is working when it’s not on a subdomain…).
The website is still working with the new server, but I can’t access the panel anymore (only the login page, when I click on “login” it doesn’t work and I have the Error 500).
My server is running PHP 5.6 and the rewrite mode should be working (I checked with my provider). So I think the problem is with the subdomain / htaccess. But I really not an expert with this I have no clue what to change in the file. I tried a few things I saw around here, but it didn’t work.
Maybe one of you will have something to help?
Thanks!
My htaccess file:
# 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
# block text files in the content folder from being accessed directly
RewriteRule ^content/(.*)\.(txt|md|mdown)$ error [R=301,L]
# block all files in the site folder from being accessed directly
RewriteRule ^site/(.*) error [R=301,L]
# block all files in the kirby folder from being accessed directly
RewriteRule ^kirby/(.*) error [R=301,L]
# make panel links work
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^panel/(.*) panel/index.php [L]
# make site links work
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php [L]
</IfModule>
# Additional recommended values
# Remove comments for those you want to use.
#
# AddDefaultCharset UTF-8
#
# php_flag short_open_tag on
If all pages (including subpages) are still working and you can reach the panel login page, this sounds more like a permissions problem. What are your folder permissions (accounts folder) set to?
I just tried to install the Kirby starter-kit on another subdomain (same main domain) to test it and actually with this install I can’t access the panel at all, I have an error 500 when I click on “Go to the panel to give Kirby’s admin interface a try” (it’s the exact same config.). I don’t get it. So weird.
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator at [no address given] to inform them of the time this error occurred, and the actions you performed just before this error.
More information about this error may be available in the server error log.
I had exactly the same problem. It turned out to be a cache problem – or at least I hadn’t had any issues since I changed my session cache from redis to filesystem.
Also I experience this with almost every fresh installation of kirby with that hosting provider. I have to manually clear the cache or wait for it to refresh to get it working.
I think – and that is purely based on observation – if your site works fine but your panel isn’t, it’s either your .htaccess or your hosting provider.
I tried, when I remove the #, I can’t access the panel login interface at all, I have the error 500. With the # RewriteBase /mysite, I can access the login interface but I have the error 500 when I click on “login” / load the page.
I also installed the kirbykit, I can access the website and the login page, but when I click on “create your account”, boom, Internal Server Error again.