Problem: This morning I wanted to quickly move a little Laravel test project onto my live server. The default file structure of Laravel stores all the framework resources in a vertical tree of files and directories, and then the ‘public’ directory is adjacent to these. Like so:
- [app] - [bootstrap] - [public] etc
To host it on my CentOS box running cPanel I want to adhere to the following (standardish) structure:
- [.htpasswds] - [etc] - [mail] - [public_ftp] - [public_html] etc etc varies depending on server
I could just upload everything in my Laravel project to the ‘public_html’ directory… but then to run the app I’d need to browse to http://example.com/public/. Worse still, my whole framework file-structure will be visible if I browse to http://example.com
Solution: With a little path remapping in two files, this can be easily achieved. Here’s what I did:
1) Create a new directory called ‘laravel4’ adjacent to ‘public_html’ so that your remote file structure now looks like this: Continue reading “Uploading / Configuring a Laravel 4 app on cPanel type hosting ( public_html )”