Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

vinschi's avatar
Level 16

load a laravel app in an apache server

Hi, I finished my first laravel app and now it's time to load it in the hosting we bought. However there is a problem, the hosting is an apache server with cpanel but there is not a terminal to execute commands. I asked for help some days ago and I found a link on stack overflow, I followed and I have this scenario: I have the www folder where I created inside a folder laravel and uploaded all the folders of the laravel application in this way:

|---www |----laravel

I copied the content of the /www/laravel/public folder inside the www/laravel folder at the same level of /app, /bootstrap etc, I deleted the /www/laravel/public folder and I changed both the server.php and index.php files with the correct path.

The website is still not visible, what I'm doing wrong? By the way, seems I can't change the pemissions in the storage directory. Any ideas? Thanks in advance

0 likes
7 replies
thc1967's avatar

I found that same link on StackOverflow and promptly ignored it.

Does your hosting provider let you change the default root for a web site? I discovered that mine does, right through CPanel. I dropped my Laravel app in just like it was and pointed the document root to /myapp/public.

You should also check if the host offers SSH access. Mine does but I had to ask for it. This will let you do the command-line things.

If your host doesn't offer either of those, you might consider changing hosts. Depending on your capabilities and scope of the site, it might be worthwhile to consider a cloud host so you have complete control over the box, rather than a shared host where you have minimal control over the box.

vinschi's avatar
Level 16

@thc1967 to be honest this hosting sucks, but the customer bought it and I can't change it and I can't believe is not possible to upload a laravel app in this kind of hosting. The problem is that there is not so much over the internet and it's my first app.

@jlrdw does this work for every hosting or only this heart-internet? anyway I did something similar except that instead of having a specific folder for the public_html I have inside the folder that contains the core, but maybe I'm doing something wrong, do you have any ideas?

Snapey's avatar

you need to identify which folder is document root then copy your public folder there and put the rest of the framework in its parent

vinschi's avatar
Level 16

@jlrdw @Snapey I tried everything and now I have this scenario

/backup
/data
/stat
/tmp
/laravel 
  |_ /app 
  |_ /bootstrap
  |_ /config
  |_ ...
/www
  |_ .htaccess 
  |_ index.php
  |_ ...

I changed the index.php file adding laravel folder in the path, I updated the writing permission of the /laravel/storage folder, I updated the db and smtp credentials of my .env file with the ones given by the hosting and I set the environment variable to production. However I have a 500 error and I can't see anything. What am I doing wrong? Thanks

Please or to participate in this conversation.