I\'m trying to upload multiple Laravel 4 projects to my web server, not my development server. Each laravel 4 app is housed in their own subdirectory. How should my file structu
Looks like my development structure here is exactly what you're trying to do. So I have this folder structure:
var
|-- www
|-- Store
| |-- app
| |-- bootstrap
| |-- ...
|-- blog
|-- app
|-- bootstrap
|-- ...
This is my VirtualHost file /var/www/Store/vhost.conf
:
Alias /Store "/var/www/Store/public"
Options Indexes Includes FollowSymLinks MultiViews
AllowOverride AuthConfig FileInfo Indexes
Order allow,deny
Allow from all
Yeah, I put it in my project folder and add an include in /etc/apache2/apache2.conf:
Include /var/www/Store/vhost.conf
This is my .htaccess file:
#Options -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /Store/index.php/?$1 [L]
And I just have to hit
http://server.dev/Store
or
http://[ipaddress]/Store
To see it.
I've built a small script to do all that for me: https://github.com/antonioribeiro/laravel-installer. It downloads, installs, configures and boot a Laravel application in whatever folder I need to, doing whatever is necessary. Compatible with Debian based distros, like Ubuntu.
EDIT
Note that there are two things that remove the /public
and the /index.php
from your url:
1) the /Store pointing directly to your public folder:
Alias /Store "/var/www/Store/public"
2) and the rewriting rule to keep your url clean from the index.php
:
RewriteRule ^(.*)$ /Store/index.php/?$1 [L]