Live Server: Panel is Error page

I just purchased my first Kirbie License, can’t wait to get the Pro and make thousands of websites! haha

Unfortunately on upload to the live staging server the panel is throwing up the error page. I looked over this post multiple times (and I feel like this is a rookie mistake) but I can’t get the panel to show.

  • Everything works on localhost.
  • I added this snippet to config/config.php
    • c::set('url', 'http://stage.lukecarlhartman.com/');

Maybe I’m missing something?

Thanks for your advice :grinning:
Luke

Have you checked the file/folder permissions on all folders/files? And that the files/folders are owned by the Apache user user group?

All rewriting seems to work as it should.

Have you tried to reupload the Panel folder? Maybe something went wrong in the process. Assuming that the Panel folder is present at all and contains files.

1 Like

Thanks texnixe.

I re-uploaded the panel folder, but no change.

All the folder permissions are set to 755 and file permissions are set to 644. Should they be set differently?

Thanks for your support.

It’s not just a problem with permissions, but also with ownership of the files. Who is the owner of the files and folders? Usually, it should be set to www-data (depending on your OS).

1 Like

What method are you using to upload? Plain FTP is a really bad idea (it is insecure, passwords are transmitted in plain text. A good way to get broken into). SFTP or rSync (my preferred method) is the way to go.

Alternatively, there is usually file manager within hosting control panels. Start empty, remove all the files you have already up loaded. Then try zipping up your local site, and upload the zip file using the file manager. Then unzip it on the server, also using the file manager. The files should get written with all the correct group/permissions.

If that works, then there is possibly something not right with the way you have setup the FTP connection.

1 Like

Thanks jimbobrjames,

I use SFTP with Transmit, but I tried the zip folder hosting file manager idea you mentioned and it seems to be the surefire way (the hosting file manager has the ability to unzip folders on the server, Transmit doesn’t)

Also, my PHP needed an update. . .

The debug log was spitting out:
Whoops\Exception\ErrorException PHP Startup: uploadprogress: Unable to initialize moduleModule compiled with module API=20100525PHP compiled with module API=20131226These options need to match

. . .so I got on a chat with my hosting company and they fixed it for me.

I think we’re all good now!

Thanks a ton!

Hi texnixe, thanks for getting back.

I was able to fix the issue by jimbobrjames suggestions and contacting my hosting company’s tech team.

But I am curious where would I normally find the “owners” of my files and folders? cPanel or elsewhere?

Thanks for your support!

There are a number of ways. Theres a good guide here.

Do you only have access cPanel or can you get into WHM as well? If you go into “List accounts” in WHM it will show the username to use. Im not 100% sure but i think you need to sftp as the same account because technically its using SSH.

If its faster you can transfer the zip with transmit, then use the cPanel file manager to unpack it.

@luukee are you using source control and does your project have a package.json file? If so, you can use my bash script for deploys.

There are also bash scripts out there that will fix permissions for you on the files.

1 Like

Hey @luukee if you’re using transmit you can check the owner by selecting a file/folder and opening the inspector tab (cmd + i)

Screen is from my server, as you can see down at the bottom you can check both owner and group

04%20AM

1 Like

Thanks @manuelmoreale! So glad to see that.

1 Like

Thanks @jimbobrjames for the advice. I will explore those bash scripts.

I believe I can get into the WHM. I will look into that as well.

Thanks again!

@jimbobrjames I do have my project on github if you’d like to check it out.

Thanks again.

Looks like your using CodeKit to compile stuff, rather then Gulp, Grunt or NPM scripts, so you don’t have a package.json file.

You can still use my deploy script if you wanted, but you would have to put outside of the project, since you dont want the script ending up on your live server.

Best way would be to drop the script in your bin folder and make some alias commands to run it more easily. For example make an alias so that when you type deploystaging into terminal, it’ll kick of the deploy part of the script:

alias deploystaging="deploy staging go"

Really tho, its best to structure your project so you can keep stuff like this outside the webroot.

I normally do it like this

myprojectfolder
--public
----assets
----kirby 
----panel  
----index.php
--src
----sass
----js
----images
--deploy.sh
--rsync_exclude.txt
--package.json
--.gitignore

Then i get my build tool to compile sass & javascript from the source folder into /public/assets/css. Basically the contents of the public subfolder is what ends up on the live server.

I have a basic repo that works this way, but does not use codekit.

1 Like

Great info @jimbobrjames, I’ll have to configure my next project this way, or maybe I can switch this current project when I have the time.

Bookmarked!
Thanks again!

Just to clarify what you mean… when you say “new kirby version” do you mean you have replaced Kirby 2 with Kirby 3, or that you have Kirby 2 to a new version?

Also, this is an old solved thread, and you have a brand new problem. It would make sense to make a new topic and give as much detail as you can.